├── .gitattributes
├── .metadata
├── .ide.log
├── .lock
├── .log
├── .log4j.xml
├── .plugins
│ ├── com.st.stm32cube.ide.mcu.informationcenter
│ │ └── 1.5.0.202011040924
│ ├── org.eclipse.cdt.core
│ │ ├── .log
│ │ ├── ControlFirmware.1612523435096.pdom
│ │ └── ControlFirmware.language.settings.xml
│ ├── org.eclipse.cdt.make.core
│ │ ├── specs.c
│ │ └── specs.cpp
│ ├── org.eclipse.cdt.make.ui
│ │ └── dialog_settings.xml
│ ├── org.eclipse.cdt.managedbuilder.core
│ │ ├── spec.c
│ │ └── spec.cpp
│ ├── org.eclipse.cdt.ui
│ │ ├── ControlFirmware.build.log
│ │ ├── dialog_settings.xml
│ │ └── global-build.log
│ ├── org.eclipse.core.resources
│ │ ├── .history
│ │ │ └── a4
│ │ │ │ └── d0259e55a367001b135bbe0301290307
│ │ ├── .projects
│ │ │ └── ControlFirmware
│ │ │ │ ├── .indexes
│ │ │ │ ├── bf
│ │ │ │ │ └── c4
│ │ │ │ │ │ ├── history.index
│ │ │ │ │ │ └── properties.index
│ │ │ │ └── properties.index
│ │ │ │ └── .markers
│ │ ├── .root
│ │ │ ├── .indexes
│ │ │ │ ├── history.version
│ │ │ │ ├── properties.index
│ │ │ │ └── properties.version
│ │ │ └── 1.tree
│ │ └── .safetable
│ │ │ └── org.eclipse.core.resources
│ ├── org.eclipse.core.runtime
│ │ └── .settings
│ │ │ ├── com.st.stm32cube.ide.mcu.ide.oss.prefs
│ │ │ ├── org.eclipse.cdt.core.prj-ControlFirmware.prefs
│ │ │ ├── org.eclipse.cdt.debug.core.prefs
│ │ │ ├── org.eclipse.cdt.managedbuilder.core.prefs
│ │ │ ├── org.eclipse.cdt.ui.prefs
│ │ │ ├── org.eclipse.core.resources.prefs
│ │ │ ├── org.eclipse.debug.core.prefs
│ │ │ ├── org.eclipse.debug.ui.prefs
│ │ │ ├── org.eclipse.launchbar.core.prefs
│ │ │ ├── org.eclipse.ui.editors.prefs
│ │ │ ├── org.eclipse.ui.ide.prefs
│ │ │ ├── org.eclipse.ui.navigator.prefs
│ │ │ ├── org.eclipse.ui.prefs
│ │ │ └── org.eclipse.ui.workbench.prefs
│ ├── org.eclipse.debug.ui
│ │ └── launchConfigurationHistory.xml
│ ├── org.eclipse.e4.workbench
│ │ └── workbench.xmi
│ ├── org.eclipse.ui.ide
│ │ └── dialog_settings.xml
│ └── org.eclipse.ui.workbench
│ │ ├── dialog_settings.xml
│ │ └── workingsets.xml
└── version.ini
├── Arduino
├── M5StackFireTest
│ ├── Gripper
│ │ ├── Gripper.ino
│ │ ├── IMG20210110104031.jpg
│ │ ├── IMG20210110104046.jpg
│ │ ├── IMG20210110104150.jpg
│ │ ├── MyServoProtocol2.h
│ │ └── readme.txt
│ ├── MirrorCompliance
│ │ ├── IMG20210109235811.jpg
│ │ ├── MirrorCompliance.ino
│ │ ├── MyServoProtocol2.h
│ │ └── readme.txt
│ ├── ReadPositionVelocity
│ │ ├── IMG20210108212159.jpg
│ │ ├── MyServoProtocol2.h
│ │ ├── ReadPositionVelocity.ino
│ │ └── readme.txt
│ ├── StallGuard
│ │ ├── IMG20210109122924.jpg
│ │ ├── MyServoProtocol2.h
│ │ ├── StallGuard.ino
│ │ └── readme.txt
│ ├── WritePositionVelocityCurrentPWM
│ │ ├── IMG20210108224453.jpg
│ │ ├── MyServoProtocol2.h
│ │ ├── WritePositionVelocityCurrentPWM.ino
│ │ └── readme.txt
│ └── _TODO
│ │ └── M5StackFireTest.ino
└── M5StickCPlusTest
│ └── Haptic
│ ├── Haptic.ino
│ ├── IMG20210123140623.jpg
│ ├── MyServoProtocol2.h
│ └── readme.txt
├── ControlBoard
├── CASE
│ ├── Assemblage.SLDASM
│ ├── IMG20210108184915.jpg
│ ├── IMG20210108185039.jpg
│ ├── PCB.SLDPRT
│ ├── case.SLDPRT
│ ├── caseBOTTOM.STL
│ └── caseTOP.STL
├── MECA
│ ├── Arm.SLDPRT
│ ├── Arm.STL
│ └── supportMicro.SLDPRT
├── V1
│ ├── BOM_SMSMod_2021-01-05.csv
│ ├── CaptureBOTTOM.PNG
│ ├── CaptureLayers.PNG
│ ├── CaptureTOP.PNG
│ ├── JLCPCB
│ │ ├── 2941402A_Y14.rar
│ │ ├── 827ec9ba3ddc46f5bbd335722c29b47f_1608748205000.rar
│ │ ├── BOM_MyServoShrinck3_2020-12-23_19-29-26 (1).csv
│ │ ├── CaptureOrder.PNG
│ │ └── PickAndPlace_PCB_2020-10-13_13-24-16 copy_2020-12-.csv
│ ├── PickAndPlace_SMSMod_2021-01-05.csv
│ ├── STM32.png
│ ├── STM32i.png
│ └── Schematic_SMSMod_2021-01-05.pdf
└── V2
│ ├── BOM_Smarter Micro Servo MOD_2021-01-22.csv
│ ├── CaptureBOTTOM.PNG
│ ├── CaptureBOTTOM3d.PNG
│ ├── CaptureTOP.PNG
│ ├── CaptureTOP3d.PNG
│ ├── PickAndPlace_SMSMod_2021-01-22.csv
│ └── Schematic_Smarter Micro Servo MOD_2021-01-22.pdf
├── ControlFirmware
├── .cproject
├── .mxproject
├── .project
├── .settings
│ ├── language.settings.xml
│ └── stm32cubeide.project.prefs
├── Core
│ ├── Inc
│ │ ├── binary_tool.h
│ │ ├── control_algo.h
│ │ ├── control_table.h
│ │ ├── eeprom.h
│ │ ├── led.h
│ │ ├── main.h
│ │ ├── math_tool.h
│ │ ├── pid.h
│ │ ├── protocol.h
│ │ ├── serial.h
│ │ ├── stm32g4xx_hal_conf.h
│ │ └── stm32g4xx_it.h
│ ├── Src
│ │ ├── control_algo.c
│ │ ├── control_table.c
│ │ ├── eeprom.c
│ │ ├── led.c
│ │ ├── main.c
│ │ ├── math_tool.c
│ │ ├── pic.c
│ │ ├── protocol.c
│ │ ├── serial.c
│ │ ├── stm32g4xx_hal_msp.c
│ │ ├── stm32g4xx_it.c
│ │ ├── syscalls.c
│ │ ├── sysmem.c
│ │ └── system_stm32g4xx.c
│ └── Startup
│ │ └── startup_stm32g431kbtx.s
├── Debug
│ ├── ControlFirmware.bin
│ ├── ControlFirmware.elf
│ ├── ControlFirmware.list
│ ├── ControlFirmware.map
│ ├── Core
│ │ ├── Src
│ │ │ ├── control_algo.d
│ │ │ ├── control_algo.o
│ │ │ ├── control_algo.su
│ │ │ ├── control_table.d
│ │ │ ├── control_table.o
│ │ │ ├── control_table.su
│ │ │ ├── eeprom.d
│ │ │ ├── eeprom.o
│ │ │ ├── eeprom.su
│ │ │ ├── led.d
│ │ │ ├── led.o
│ │ │ ├── led.su
│ │ │ ├── main.d
│ │ │ ├── main.o
│ │ │ ├── main.su
│ │ │ ├── math_tool.d
│ │ │ ├── math_tool.o
│ │ │ ├── math_tool.su
│ │ │ ├── pic.d
│ │ │ ├── pic.o
│ │ │ ├── pic.su
│ │ │ ├── protocol.d
│ │ │ ├── protocol.o
│ │ │ ├── protocol.su
│ │ │ ├── serial.d
│ │ │ ├── serial.o
│ │ │ ├── serial.su
│ │ │ ├── stm32g4xx_hal_msp.d
│ │ │ ├── stm32g4xx_hal_msp.o
│ │ │ ├── stm32g4xx_hal_msp.su
│ │ │ ├── stm32g4xx_it.d
│ │ │ ├── stm32g4xx_it.o
│ │ │ ├── stm32g4xx_it.su
│ │ │ ├── subdir.mk
│ │ │ ├── syscalls.d
│ │ │ ├── syscalls.o
│ │ │ ├── syscalls.su
│ │ │ ├── sysmem.d
│ │ │ ├── sysmem.o
│ │ │ ├── sysmem.su
│ │ │ ├── system_stm32g4xx.d
│ │ │ ├── system_stm32g4xx.o
│ │ │ └── system_stm32g4xx.su
│ │ └── Startup
│ │ │ ├── startup_stm32g431kbtx.d
│ │ │ ├── startup_stm32g431kbtx.o
│ │ │ └── subdir.mk
│ ├── Drivers
│ │ └── STM32G4xx_HAL_Driver
│ │ │ └── Src
│ │ │ ├── stm32g4xx_hal.d
│ │ │ ├── stm32g4xx_hal.o
│ │ │ ├── stm32g4xx_hal.su
│ │ │ ├── stm32g4xx_hal_adc.d
│ │ │ ├── stm32g4xx_hal_adc.o
│ │ │ ├── stm32g4xx_hal_adc.su
│ │ │ ├── stm32g4xx_hal_adc_ex.d
│ │ │ ├── stm32g4xx_hal_adc_ex.o
│ │ │ ├── stm32g4xx_hal_adc_ex.su
│ │ │ ├── stm32g4xx_hal_cortex.d
│ │ │ ├── stm32g4xx_hal_cortex.o
│ │ │ ├── stm32g4xx_hal_cortex.su
│ │ │ ├── stm32g4xx_hal_dma.d
│ │ │ ├── stm32g4xx_hal_dma.o
│ │ │ ├── stm32g4xx_hal_dma.su
│ │ │ ├── stm32g4xx_hal_dma_ex.d
│ │ │ ├── stm32g4xx_hal_dma_ex.o
│ │ │ ├── stm32g4xx_hal_dma_ex.su
│ │ │ ├── stm32g4xx_hal_exti.d
│ │ │ ├── stm32g4xx_hal_exti.o
│ │ │ ├── stm32g4xx_hal_exti.su
│ │ │ ├── stm32g4xx_hal_flash.d
│ │ │ ├── stm32g4xx_hal_flash.o
│ │ │ ├── stm32g4xx_hal_flash.su
│ │ │ ├── stm32g4xx_hal_flash_ex.d
│ │ │ ├── stm32g4xx_hal_flash_ex.o
│ │ │ ├── stm32g4xx_hal_flash_ex.su
│ │ │ ├── stm32g4xx_hal_flash_ramfunc.d
│ │ │ ├── stm32g4xx_hal_flash_ramfunc.o
│ │ │ ├── stm32g4xx_hal_flash_ramfunc.su
│ │ │ ├── stm32g4xx_hal_gpio.d
│ │ │ ├── stm32g4xx_hal_gpio.o
│ │ │ ├── stm32g4xx_hal_gpio.su
│ │ │ ├── stm32g4xx_hal_opamp.d
│ │ │ ├── stm32g4xx_hal_opamp.o
│ │ │ ├── stm32g4xx_hal_opamp.su
│ │ │ ├── stm32g4xx_hal_opamp_ex.d
│ │ │ ├── stm32g4xx_hal_opamp_ex.o
│ │ │ ├── stm32g4xx_hal_opamp_ex.su
│ │ │ ├── stm32g4xx_hal_pwr.d
│ │ │ ├── stm32g4xx_hal_pwr.o
│ │ │ ├── stm32g4xx_hal_pwr.su
│ │ │ ├── stm32g4xx_hal_pwr_ex.d
│ │ │ ├── stm32g4xx_hal_pwr_ex.o
│ │ │ ├── stm32g4xx_hal_pwr_ex.su
│ │ │ ├── stm32g4xx_hal_rcc.d
│ │ │ ├── stm32g4xx_hal_rcc.o
│ │ │ ├── stm32g4xx_hal_rcc.su
│ │ │ ├── stm32g4xx_hal_rcc_ex.d
│ │ │ ├── stm32g4xx_hal_rcc_ex.o
│ │ │ ├── stm32g4xx_hal_rcc_ex.su
│ │ │ ├── stm32g4xx_hal_tim.d
│ │ │ ├── stm32g4xx_hal_tim.o
│ │ │ ├── stm32g4xx_hal_tim.su
│ │ │ ├── stm32g4xx_hal_tim_ex.d
│ │ │ ├── stm32g4xx_hal_tim_ex.o
│ │ │ ├── stm32g4xx_hal_tim_ex.su
│ │ │ ├── stm32g4xx_hal_uart.d
│ │ │ ├── stm32g4xx_hal_uart.o
│ │ │ ├── stm32g4xx_hal_uart.su
│ │ │ ├── stm32g4xx_hal_uart_ex.d
│ │ │ ├── stm32g4xx_hal_uart_ex.o
│ │ │ ├── stm32g4xx_hal_uart_ex.su
│ │ │ ├── stm32g4xx_ll_adc.d
│ │ │ ├── stm32g4xx_ll_adc.o
│ │ │ ├── stm32g4xx_ll_adc.su
│ │ │ └── subdir.mk
│ ├── makefile
│ ├── objects.list
│ ├── objects.mk
│ └── sources.mk
├── Drivers
│ ├── CMSIS
│ │ ├── Device
│ │ │ └── ST
│ │ │ │ └── STM32G4xx
│ │ │ │ └── Include
│ │ │ │ ├── stm32g431xx.h
│ │ │ │ ├── stm32g4xx.h
│ │ │ │ └── system_stm32g4xx.h
│ │ └── Include
│ │ │ ├── cmsis_armcc.h
│ │ │ ├── cmsis_armclang.h
│ │ │ ├── cmsis_armclang_ltm.h
│ │ │ ├── cmsis_compiler.h
│ │ │ ├── cmsis_gcc.h
│ │ │ ├── cmsis_iccarm.h
│ │ │ ├── cmsis_version.h
│ │ │ ├── core_armv81mml.h
│ │ │ ├── core_armv8mbl.h
│ │ │ ├── core_armv8mml.h
│ │ │ ├── core_cm0.h
│ │ │ ├── core_cm0plus.h
│ │ │ ├── core_cm1.h
│ │ │ ├── core_cm23.h
│ │ │ ├── core_cm3.h
│ │ │ ├── core_cm33.h
│ │ │ ├── core_cm35p.h
│ │ │ ├── core_cm4.h
│ │ │ ├── core_cm7.h
│ │ │ ├── core_sc000.h
│ │ │ ├── core_sc300.h
│ │ │ ├── mpu_armv7.h
│ │ │ ├── mpu_armv8.h
│ │ │ └── tz_context.h
│ └── STM32G4xx_HAL_Driver
│ │ ├── Inc
│ │ ├── Legacy
│ │ │ └── stm32_hal_legacy.h
│ │ ├── stm32g4xx_hal.h
│ │ ├── stm32g4xx_hal_adc.h
│ │ ├── stm32g4xx_hal_adc_ex.h
│ │ ├── stm32g4xx_hal_cortex.h
│ │ ├── stm32g4xx_hal_def.h
│ │ ├── stm32g4xx_hal_dma.h
│ │ ├── stm32g4xx_hal_dma_ex.h
│ │ ├── stm32g4xx_hal_exti.h
│ │ ├── stm32g4xx_hal_flash.h
│ │ ├── stm32g4xx_hal_flash_ex.h
│ │ ├── stm32g4xx_hal_flash_ramfunc.h
│ │ ├── stm32g4xx_hal_gpio.h
│ │ ├── stm32g4xx_hal_gpio_ex.h
│ │ ├── stm32g4xx_hal_opamp.h
│ │ ├── stm32g4xx_hal_opamp_ex.h
│ │ ├── stm32g4xx_hal_pwr.h
│ │ ├── stm32g4xx_hal_pwr_ex.h
│ │ ├── stm32g4xx_hal_rcc.h
│ │ ├── stm32g4xx_hal_rcc_ex.h
│ │ ├── stm32g4xx_hal_tim.h
│ │ ├── stm32g4xx_hal_tim_ex.h
│ │ ├── stm32g4xx_hal_uart.h
│ │ ├── stm32g4xx_hal_uart_ex.h
│ │ └── stm32g4xx_ll_adc.h
│ │ └── Src
│ │ ├── stm32g4xx_hal.c
│ │ ├── stm32g4xx_hal_adc.c
│ │ ├── stm32g4xx_hal_adc_ex.c
│ │ ├── stm32g4xx_hal_cortex.c
│ │ ├── stm32g4xx_hal_dma.c
│ │ ├── stm32g4xx_hal_dma_ex.c
│ │ ├── stm32g4xx_hal_exti.c
│ │ ├── stm32g4xx_hal_flash.c
│ │ ├── stm32g4xx_hal_flash_ex.c
│ │ ├── stm32g4xx_hal_flash_ramfunc.c
│ │ ├── stm32g4xx_hal_gpio.c
│ │ ├── stm32g4xx_hal_opamp.c
│ │ ├── stm32g4xx_hal_opamp_ex.c
│ │ ├── stm32g4xx_hal_pwr.c
│ │ ├── stm32g4xx_hal_pwr_ex.c
│ │ ├── stm32g4xx_hal_rcc.c
│ │ ├── stm32g4xx_hal_rcc_ex.c
│ │ ├── stm32g4xx_hal_tim.c
│ │ ├── stm32g4xx_hal_tim_ex.c
│ │ ├── stm32g4xx_hal_uart.c
│ │ ├── stm32g4xx_hal_uart_ex.c
│ │ └── stm32g4xx_ll_adc.c
├── STM32G431KBTX_FLASH.ld
├── STM32G431KBx Debug.launch
├── STM32G431KBx.ioc
├── check-cppcheck-build-dir
│ ├── control_algo.a1
│ ├── control_table.a1
│ ├── eeprom.a1
│ ├── files.txt
│ ├── lastResults.xml
│ ├── led.a1
│ ├── main.a1
│ ├── math_tool.a1
│ ├── pic.a1
│ ├── protocol.a1
│ ├── serial.a1
│ ├── statistics.txt
│ ├── stm32g4xx_hal_msp.a1
│ ├── stm32g4xx_it.a1
│ ├── syscalls.a1
│ ├── sysmem.a1
│ └── system_stm32g4xx.a1
└── check.cppcheck
├── ControlModes
├── CaptureCurrent.PNG
├── CaptureTRIGGER.PNG
├── Mode 2.png
├── Mode1.png
├── current.png
├── mode1.jpg
├── mode2.jpg
└── trigger.png
├── ControlTable
└── SMS control table.xlsx
├── LICENSE
├── Pictures
├── CaptureHackaday.PNG
├── IMG20210104151520.jpg
├── IMG20210104151520drv.jpg
├── IMG20210104151547.jpg
├── IMG20210104151650.jpg
├── IMG20210104151734.jpg
├── IMG20210104153136.jpg
├── IMG20210104153136stm32.jpg
├── IMG20210104155614.jpg
├── IMG20210104160551.jpg
├── IMG20210104160612.jpg
├── IMG20210104161140.jpg
├── IMG20210104161915.jpg
├── IMG20210104161948.jpg
├── IMG20210104161958.jpg
├── IMG20210105074709.jpg
├── IMG20210109225448.jpg
└── IMG20210109225906.jpg
├── README.md
├── SMSUtility
├── CaptureGUI001.png
├── CaptureGUI001i.png
├── SMSUtility.py
├── __pycache__
│ ├── eeprom_frame.cpython-37.pyc
│ ├── felin.cpython-37.pyc
│ ├── id_frame.cpython-37.pyc
│ ├── ik.cpython-37.pyc
│ ├── intersection.cpython-37.pyc
│ ├── protocol2.cpython-37.pyc
│ ├── ram_frame.cpython-37.pyc
│ └── trace_frame.cpython-37.pyc
├── eeprom_frame.py
├── felin.py
├── id_frame.py
├── ik.py
├── intersection.py
├── protocol2.py
├── ram_frame.py
└── trace_frame.py
└── TestLeg
├── CaptureV1.PNG
├── CaptureV1b.PNG
├── Femur4.STEP
├── Femur4.STL
├── Tibia3.STEP
├── Tibia3.STL
├── bom.txt
├── supportHipLeg.STEP
└── supportHipLeg.STL
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
--------------------------------------------------------------------------------
/.metadata/.ide.log:
--------------------------------------------------------------------------------
1 | 2021-02-05 12:09:33,891 [INFO] Activator:170 -
2 |
3 |
4 | 2021-02-05 12:09:33,893 [INFO] Activator:171 - !SESSION log4j initialized
5 |
--------------------------------------------------------------------------------
/.metadata/.lock:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/.metadata/.lock
--------------------------------------------------------------------------------
/.metadata/.log:
--------------------------------------------------------------------------------
1 | !SESSION 2021-02-05 12:09:12.933 -----------------------------------------------
2 | eclipse.buildId=Version 1.5.0
3 | java.version=1.8.0_252
4 | java.vendor=AdoptOpenJDK
5 | BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=fr_FR
6 | Command-line arguments: -os win32 -ws win32 -arch x86_64
7 |
8 | !ENTRY com.st.stm32cube.ide.mcu.informationcenter 4 4 2021-02-05 12:09:33.823
9 | !MESSAGE CubeMX plugin appears to be active, Log4j initialization might be too late.
10 |
11 | !ENTRY com.st.stm32cube.ide.mcu.informationcenter 1 1 2021-02-05 12:09:33.885
12 | !MESSAGE Log4j initialized with config file C:\GitHub\SMSMod\.metadata\.log4j.xml
13 |
14 | !ENTRY com.st.stm32cube.ide.mcu.ide 1 1 2021-02-05 12:09:35.425
15 | !MESSAGE Started RMI Server, listening on port 41338
16 |
17 | !ENTRY com.st.stm32cube.ide.mcu.ide 4 4 2021-02-05 12:09:36.184
18 | !MESSAGE com.st.stm32cube.ide.mcu.ide/META-INF/version/build_ref file not found, build reference will not be reported into properties
19 |
20 | !ENTRY org.eclipse.cdt.core 1 0 2021-02-05 12:10:40.109
21 | !MESSAGE Indexed 'ControlFirmware' (36 sources, 123 headers) in 4,98 sec: 12 478 declarations; 70 781 references; 3 unresolved inclusions; 46 syntax errors; 171 unresolved names (0,2 %)
22 |
--------------------------------------------------------------------------------
/.metadata/.log4j.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/.metadata/.plugins/com.st.stm32cube.ide.mcu.informationcenter/1.5.0.202011040924:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/.metadata/.plugins/com.st.stm32cube.ide.mcu.informationcenter/1.5.0.202011040924
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.core/.log:
--------------------------------------------------------------------------------
1 | *** SESSION févr. 05, 2021 12:09:29.59 -----------------------------------------
2 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.core/ControlFirmware.1612523435096.pdom:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/.metadata/.plugins/org.eclipse.cdt.core/ControlFirmware.1612523435096.pdom
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.make.core/specs.c:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.make.core/specs.cpp:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.make.ui/dialog_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.managedbuilder.core/spec.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/.metadata/.plugins/org.eclipse.cdt.managedbuilder.core/spec.c
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.managedbuilder.core/spec.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/.metadata/.plugins/org.eclipse.cdt.managedbuilder.core/spec.cpp
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.ui/ControlFirmware.build.log:
--------------------------------------------------------------------------------
1 | 12:14:38 **** Incremental Build of configuration Debug for project ControlFirmware ****
2 | make -j8 all
3 | arm-none-eabi-gcc "../Core/Src/main.c" -mcpu=cortex-m4 -std=gnu11 -g3 -DSTM32G431xx -DUSE_HAL_DRIVER -DDEBUG -c -I../Core/Inc -I../Drivers/STM32G4xx_HAL_Driver/Inc -I../Drivers/STM32G4xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32G4xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/main.d" -MT"Core/Src/main.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Core/Src/main.o"
4 | arm-none-eabi-gcc -o "ControlFirmware.elf" @"objects.list" -mcpu=cortex-m4 -T"C:\GitHub\SMSMod\ControlFirmware\STM32G431KBTX_FLASH.ld" --specs=nosys.specs -Wl,-Map="ControlFirmware.map" -Wl,--gc-sections -static --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -Wl,--start-group -lc -lm -Wl,--end-group
5 | Finished building target: ControlFirmware.elf
6 |
7 | arm-none-eabi-objdump -h -S ControlFirmware.elf > "ControlFirmware.list"
8 | arm-none-eabi-objcopy -O binary ControlFirmware.elf "ControlFirmware.bin"
9 | arm-none-eabi-size ControlFirmware.elf
10 | text data bss dec hex filename
11 | 45080 164 15212 60456 ec28 ControlFirmware.elf
12 | Finished building: default.size.stdout
13 |
14 | Finished building: ControlFirmware.bin
15 |
16 | Finished building: ControlFirmware.list
17 |
18 |
19 | 12:14:39 Build Finished. 0 errors, 0 warnings. (took 1s.437ms)
20 |
21 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.ui/dialog_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.cdt.ui/global-build.log:
--------------------------------------------------------------------------------
1 | 12:14:38 **** Incremental Build of configuration Debug for project ControlFirmware ****
2 | make -j8 all
3 | arm-none-eabi-gcc "../Core/Src/main.c" -mcpu=cortex-m4 -std=gnu11 -g3 -DSTM32G431xx -DUSE_HAL_DRIVER -DDEBUG -c -I../Core/Inc -I../Drivers/STM32G4xx_HAL_Driver/Inc -I../Drivers/STM32G4xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32G4xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/main.d" -MT"Core/Src/main.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Core/Src/main.o"
4 | arm-none-eabi-gcc -o "ControlFirmware.elf" @"objects.list" -mcpu=cortex-m4 -T"C:\GitHub\SMSMod\ControlFirmware\STM32G431KBTX_FLASH.ld" --specs=nosys.specs -Wl,-Map="ControlFirmware.map" -Wl,--gc-sections -static --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -Wl,--start-group -lc -lm -Wl,--end-group
5 | Finished building target: ControlFirmware.elf
6 |
7 | arm-none-eabi-objdump -h -S ControlFirmware.elf > "ControlFirmware.list"
8 | arm-none-eabi-objcopy -O binary ControlFirmware.elf "ControlFirmware.bin"
9 | arm-none-eabi-size ControlFirmware.elf
10 | text data bss dec hex filename
11 | 45080 164 15212 60456 ec28 ControlFirmware.elf
12 | Finished building: default.size.stdout
13 |
14 | Finished building: ControlFirmware.bin
15 |
16 | Finished building: ControlFirmware.list
17 |
18 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.projects/ControlFirmware/.indexes/bf/c4/history.index:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/.metadata/.plugins/org.eclipse.core.resources/.projects/ControlFirmware/.indexes/bf/c4/history.index
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.projects/ControlFirmware/.indexes/bf/c4/properties.index:
--------------------------------------------------------------------------------
1 | /Core/Src/main.c 7org.eclipse.ui.internal.registry.ResourceEditorRegistry EditorProperty !org.eclipse.cdt.ui.editor.CEditor /Core/Src/control_algo.c EditorProperty !org.eclipse.cdt.ui.editor.CEditor
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.projects/ControlFirmware/.indexes/properties.index:
--------------------------------------------------------------------------------
1 | org.eclipse.cdt.core pdomName "ControlFirmware.1612523435096.pdom org.eclipse.cdt.make.core discoveredScannerConfigFileName ControlFirmware.sc
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.projects/ControlFirmware/.markers:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/.metadata/.plugins/org.eclipse.core.resources/.projects/ControlFirmware/.markers
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index:
--------------------------------------------------------------------------------
1 | / org.eclipse.core.resources contentCacheState 2 contentCacheTimestamp
1601701547843
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.root/1.tree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/.metadata/.plugins/org.eclipse.core.resources/.root/1.tree
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/com.st.stm32cube.ide.mcu.ide.oss.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | project_presentation/setHierarchicalMode=false
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.core.prj-ControlFirmware.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | indexer/preferenceScope=0
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.debug.core.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | org.eclipse.cdt.debug.core.cDebug.default_source_containers=\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.managedbuilder.core.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | properties/STM32G431KBx.null.1288947561/com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1097448245=com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.symbolsrec.1232419840\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.srec.1090417426\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.hex.226144249\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.exe.debug.1216484548\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker.1414329904\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.verilog.1472276139\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1097448245\=rcState\\\=0\\r\\nrebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.655370248\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.2066886553\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objdump.listfile.1390767119\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.1433291886\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.archiver.1740366760\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.1601340108\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.binary.1945187695\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.size.208944986\=rebuildState\\\=false\\r\\n\r\n
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.ui.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | spelling_locale_initialized=true
3 | useAnnotationsPrefPage=true
4 | useQuickDiffPrefPage=true
5 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | version=1
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.core.prefs:
--------------------------------------------------------------------------------
1 | //org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.applicationLaunchType=org.eclipse.cdt.dsf.gdb.launch.localCLaunch,debug,;org.eclipse.cdt.cdi.launch.localCLaunch,run,;
2 | //org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.attachLaunchType=org.eclipse.cdt.dsf.gdb.launch.attachCLaunch,debug,;
3 | //org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.postmortemLaunchType=org.eclipse.cdt.dsf.gdb.launch.coreCLaunch,debug,;
4 | //org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.remoteApplicationLaunchType=org.eclipse.rse.remotecdt.dsf.debug,debug,;
5 | eclipse.preferences.version=1
6 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | org.eclipse.debug.ui.PREF_LAUNCH_PERSPECTIVES=\r\n\r\n
3 | preferredTargets=org.eclipse.cdt.debug.ui.toggleCBreakpointTarget,org.eclipse.cdt.debug.ui.toggleCDynamicPrintfTarget\:org.eclipse.cdt.debug.ui.toggleCBreakpointTarget|
4 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.launchbar.core.prefs:
--------------------------------------------------------------------------------
1 | LaunchTargetManager/org.eclipse.launchbar.core.launchTargetType.local,Local/arch=x86_64
2 | LaunchTargetManager/org.eclipse.launchbar.core.launchTargetType.local,Local/name=Local
3 | LaunchTargetManager/org.eclipse.launchbar.core.launchTargetType.local,Local/os=win32
4 | configDescList=org.eclipse.cdt.dsf.gdb.gdbRemotedescriptorType\:STM32G431KBx Debug
5 | eclipse.preferences.version=1
6 | org.eclipse.cdt.dsf.gdb.gdbRemotedescriptorType\:STM32G431KBx\ Debug/activeLaunchMode=run
7 | org.eclipse.cdt.dsf.gdb.gdbRemotedescriptorType\:STM32G431KBx\ Debug/activeLaunchTarget=null\:---
8 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | overviewRuler_migration=migrated_3.1
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs:
--------------------------------------------------------------------------------
1 | PROBLEMS_FILTERS_MIGRATE=true
2 | TASKS_FILTERS_MIGRATE=true
3 | eclipse.preferences.version=1
4 | platformState=1601701547843
5 | quickStart=false
6 | tipsAndTricks=true
7 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.navigator.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | org.eclipse.ui.navigator.ProjectExplorer.filterActivation=\:org.eclipse.rse.project.filters.RemoteSystemsProjects\:org.eclipse.ui.navigator.resources.filters.startsWithDot\:org.eclipse.cdt.ui.navigator.filters.AnonymousStructFilter\:org.eclipse.ui.navigator.resources.nested.HideTopLevelProjectIfNested\:org.eclipse.ui.navigator.resources.nested.HideFolderWhenProjectIsShownAsNested\:org.eclipse.cdt.ui.navigator.filters.ForwardDeclarationFilter\:
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | showIntro=false
3 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs:
--------------------------------------------------------------------------------
1 | //org.eclipse.ui.commands/state/com.st.stm32cube.ide.mcu.buildanalyzer.showstate/org.eclipse.ui.commands.radioState=human
2 | //org.eclipse.ui.commands/state/org.eclipse.ui.navigator.resources.nested.changeProjectPresentation/org.eclipse.ui.commands.radioState=false
3 | eclipse.preferences.version=1
4 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
--------------------------------------------------------------------------------
/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/.metadata/version.ini:
--------------------------------------------------------------------------------
1 | #Fri Feb 05 12:09:28 CET 2021
2 | org.eclipse.core.runtime=2
3 | org.eclipse.platform=4.16.0.v20200604-0540
4 |
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/Gripper/Gripper.ino:
--------------------------------------------------------------------------------
1 | #include "MyServoProtocol2.h"
2 | MyServoProtocol2 servo(500000);
3 | int error = 0;
4 | int state = 0; //0:open, 1:close
5 |
6 | void setup() {
7 | M5.begin();
8 | M5.Power.begin();
9 | M5.Lcd.fillScreen(BLACK);
10 | M5.Lcd.setTextColor(GREEN , BLACK);
11 | M5.Lcd.setTextSize(5);
12 |
13 | // enable torque servo ID=2
14 | error = servo.enableTorque(2);
15 | if(error !=0)
16 | {
17 | Serial.print("rx_packet_error:");
18 | Serial.println(error);
19 | }
20 | // switch to "velocity-profil current based position control" operating mode
21 | error = servo.setMode(2,2);
22 | if(error !=0)
23 | {
24 | Serial.print("rx_packet_error:");
25 | Serial.println(error);
26 | }
27 | // set position to 50° (home), limit velocity by 50 dps, motor current by 60mA and PWM ratio do 50% maximum
28 | error = servo.setPositionVelocityCurrentPWM(2,30,20,50,30);
29 | if(error !=0)
30 | {
31 | Serial.print("rx_packet_error:");
32 | Serial.println(error);
33 | }
34 | M5.Lcd.setCursor(0, 0);
35 | M5.Lcd.printf("Gripper");
36 | M5.Lcd.setCursor(0, 50);
37 | M5.Lcd.printf("Open");
38 | delay(1000);
39 | }
40 |
41 | void loop() {
42 | if(M5.BtnC.read())
43 | {
44 | state = 1;
45 | M5.Lcd.setCursor(0, 50);
46 | M5.Lcd.printf("Pick! ");
47 | error = servo.setPosition(2,120.0f);
48 |
49 | }
50 | if(M5.BtnA.read())
51 | {
52 | state = 0;
53 | M5.Lcd.setCursor(0, 50);
54 | M5.Lcd.printf("Drop! ");
55 | error = servo.setPosition(2,50.0f);
56 | }
57 | float present_current = servo.getCurrent(2,&error);
58 | M5.Lcd.setCursor(0, 100);
59 | M5.Lcd.printf("Srv1:%3.0fmA",present_current);
60 | delay(10);
61 | }
62 |
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/Gripper/IMG20210110104031.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Arduino/M5StackFireTest/Gripper/IMG20210110104031.jpg
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/Gripper/IMG20210110104046.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Arduino/M5StackFireTest/Gripper/IMG20210110104046.jpg
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/Gripper/IMG20210110104150.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Arduino/M5StackFireTest/Gripper/IMG20210110104150.jpg
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/Gripper/readme.txt:
--------------------------------------------------------------------------------
1 | https://youtu.be/zrTxHTn-A60
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/MirrorCompliance/IMG20210109235811.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Arduino/M5StackFireTest/MirrorCompliance/IMG20210109235811.jpg
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/MirrorCompliance/MirrorCompliance.ino:
--------------------------------------------------------------------------------
1 | #include "MyServoProtocol2.h"
2 | MyServoProtocol2 servo(500000);
3 | int error = 0;
4 |
5 | void setup() {
6 | M5.begin();
7 | M5.Power.begin();
8 | M5.Lcd.fillScreen(BLACK);
9 | M5.Lcd.setTextColor(GREEN , BLACK);
10 | M5.Lcd.setTextSize(5);
11 |
12 | // enable torque servo ID=1
13 | error = servo.enableTorque(1);
14 | if(error !=0)
15 | {
16 | Serial.print("rx_packet_error:");
17 | Serial.println(error);
18 | }
19 | // disable torque servo ID=2
20 | error = servo.disableTorque(2);
21 | if(error !=0)
22 | {
23 | Serial.print("rx_packet_error:");
24 | Serial.println(error);
25 | }
26 | // switch to "velocity-profil current based position control" operating mode
27 | error = servo.setMode(1,2);
28 | if(error !=0)
29 | {
30 | Serial.print("rx_packet_error:");
31 | Serial.println(error);
32 | }
33 | // read servo ID2 position
34 | float present_position_2 = servo.getPosition(2,&error);
35 | if(error !=0)
36 | {
37 | Serial.print("rx_packet_error:");
38 | Serial.println(error);
39 | }
40 | // set servo ID1 position to present position, and limit velocity by 400 dps, motor current by 150mA and PWM ratio do 99% maximum
41 | error = servo.setPositionVelocityCurrentPWM(1,present_position_2,400,150,99);
42 | if(error !=0)
43 | {
44 | Serial.print("rx_packet_error:");
45 | Serial.println(error);
46 | }
47 | M5.Lcd.setCursor(0, 0);
48 | M5.Lcd.printf("Mirroring+");
49 | M5.Lcd.setCursor(0, 50);
50 | M5.Lcd.printf("Compliance");
51 | }
52 |
53 | void loop() {
54 | delay(2);
55 | float present_position_2 = servo.getPosition(2,&error);
56 | if(error !=0)
57 | {
58 | Serial.print("rx_packet_error:");
59 | Serial.println(error);
60 | }
61 | error = servo.setPosition(1,present_position_2);
62 | if(error !=0)
63 | {
64 | Serial.print("rx_packet_error:");
65 | Serial.println(error);
66 | }
67 | float present_position_1 = servo.getPosition(1,&error);
68 | if(error !=0)
69 | {
70 | Serial.print("rx_packet_error:");
71 | Serial.println(error);
72 | }
73 | float present_current_1 = servo.getCurrent(1,&error);
74 | M5.Lcd.setCursor(0, 100);
75 | M5.Lcd.printf("Srv2->Srv1");
76 | M5.Lcd.setCursor(0, 150);
77 | M5.Lcd.printf("%3.0f*->%3.0f*",present_position_2,present_position_1);
78 | M5.Lcd.setCursor(0, 200);
79 | M5.Lcd.printf("Srv1:%3.0fmA",present_current_1);
80 | }
81 |
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/MirrorCompliance/readme.txt:
--------------------------------------------------------------------------------
1 | https://youtu.be/zlluPpIHIOk
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/ReadPositionVelocity/IMG20210108212159.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Arduino/M5StackFireTest/ReadPositionVelocity/IMG20210108212159.jpg
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/ReadPositionVelocity/ReadPositionVelocity.ino:
--------------------------------------------------------------------------------
1 | #include "MyServoProtocol2.h"
2 | MyServoProtocol2 servo(500000);
3 |
4 | void setup() {
5 | M5.begin();
6 | M5.Power.begin();
7 | M5.Lcd.fillScreen(BLACK);
8 | M5.Lcd.setTextColor(GREEN , BLACK);
9 | M5.Lcd.setTextSize(5);
10 |
11 | // disable torque servo ID=1
12 | int error = servo.disableTorque(1);
13 | if(error !=0)
14 | {
15 | Serial.print("rx_packet_error:");
16 | Serial.println(error);
17 | }
18 |
19 |
20 | }
21 |
22 | void loop() {
23 | delay(100);
24 | int error = 0;
25 | float present_position = servo.getPosition(1, &error);
26 | float present_velocity = servo.getVelocity(1, &error);
27 | M5.Lcd.setCursor(0, 0);
28 | M5.Lcd.printf("Position :");
29 | M5.Lcd.setCursor(0, 50);
30 | M5.Lcd.printf("%.1f deg S", present_position);
31 | M5.Lcd.setCursor(0, 100);
32 | M5.Lcd.printf("Velocity :");
33 | M5.Lcd.setCursor(0, 150);
34 | M5.Lcd.printf("%.1f dps ", present_velocity);
35 | }
36 |
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/ReadPositionVelocity/readme.txt:
--------------------------------------------------------------------------------
1 | https://youtu.be/4UFyGHXvt0Y
2 |
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/StallGuard/IMG20210109122924.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Arduino/M5StackFireTest/StallGuard/IMG20210109122924.jpg
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/StallGuard/StallGuard.ino:
--------------------------------------------------------------------------------
1 | #include "MyServoProtocol2.h"
2 | MyServoProtocol2 servo(500000);
3 | int error = 0;
4 | unsigned int counter = 0;
5 | float velocity = 50;
6 |
7 | void setup() {
8 | M5.begin();
9 | M5.Power.begin();
10 | M5.Lcd.fillScreen(BLACK);
11 | M5.Lcd.setTextColor(GREEN , BLACK);
12 | M5.Lcd.setTextSize(5);
13 |
14 | // enable torque servo ID=1
15 | error = servo.enableTorque(1);
16 | if(error !=0)
17 | {
18 | Serial.print("rx_packet_error:");
19 | Serial.println(error);
20 | }
21 | // switch to "velocity-profil current based position control" operating mode
22 | error = servo.setMode(1,2);
23 | if(error !=0)
24 | {
25 | Serial.print("rx_packet_error:");
26 | Serial.println(error);
27 | }
28 | // set position to 30° (home), limit velocity by 50 dps, motor current by 150mA and PWM ratio do 50% maximum
29 | error = servo.setPositionVelocityCurrentPWM(1,30,50,150,50);
30 | if(error !=0)
31 | {
32 | Serial.print("rx_packet_error:");
33 | Serial.println(error);
34 | }
35 | delay(1000);
36 | }
37 |
38 | void loop() {
39 | M5.Lcd.setCursor(0, 0);
40 | M5.Lcd.printf("StallGuard");
41 | M5.Lcd.setCursor(0, 50);
42 | M5.Lcd.printf("Still! ");
43 | delay(3000);
44 | // go to target position while monitoring current
45 | error = servo.setPositionVelocity(1,150,50);
46 | if(error !=0)
47 | {
48 | Serial.print("rx_packet_error:");
49 | Serial.println(error);
50 | }
51 | M5.Lcd.setCursor(0, 50);
52 | M5.Lcd.printf("Moving..");
53 | unsigned long start_time = millis();
54 | // monitor current for 3 seconds
55 | while(millis()23) && (millis()>start_time+250))
60 | {
61 | M5.Lcd.setCursor(0, 50);
62 | M5.Lcd.printf("STALL!!!");
63 | float present_position = servo.getPosition(1,&error);
64 | // back up for 5°
65 | error = servo.setPosition(1,present_position-5.0f);
66 | delay(3000);
67 | break;
68 | }
69 | delay(2);
70 | }
71 | // return to home
72 | error = servo.setPositionVelocity(1,30,50);
73 | if(error !=0)
74 | {
75 | Serial.print("rx_packet_error:");
76 | Serial.println(error);
77 | }
78 | M5.Lcd.setCursor(0, 50);
79 | M5.Lcd.printf("Return..");
80 | delay(3000);
81 | M5.Lcd.setCursor(0, 50);
82 | M5.Lcd.printf("Still! ");
83 | delay(3000);
84 | ++counter;
85 | if(counter>=1)
86 | {
87 | error = servo.disableTorque(1);
88 | if(error !=0)
89 | {
90 | Serial.print("rx_packet_error:");
91 | Serial.println(error);
92 | }
93 | M5.Power.powerOFF();
94 | }
95 | delay(100);
96 | }
97 |
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/StallGuard/readme.txt:
--------------------------------------------------------------------------------
1 | https://youtu.be/ZC6DH60ER2E
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/WritePositionVelocityCurrentPWM/IMG20210108224453.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Arduino/M5StackFireTest/WritePositionVelocityCurrentPWM/IMG20210108224453.jpg
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/WritePositionVelocityCurrentPWM/WritePositionVelocityCurrentPWM.ino:
--------------------------------------------------------------------------------
1 | #include "MyServoProtocol2.h"
2 | MyServoProtocol2 servo(500000);
3 | int error = 0;
4 | unsigned int counter = 0;
5 | float velocity = 50;
6 |
7 | void setup() {
8 | M5.begin();
9 | M5.Power.begin();
10 | M5.Lcd.fillScreen(BLACK);
11 | M5.Lcd.setTextColor(GREEN , BLACK);
12 | M5.Lcd.setTextSize(5);
13 |
14 | // enable torque servo ID=1
15 | error = servo.enableTorque(1);
16 | if(error !=0)
17 | {
18 | Serial.print("rx_packet_error:");
19 | Serial.println(error);
20 | }
21 | // switch to "velocity-profil current based position control" operating mode
22 | error = servo.setMode(1,2);
23 | if(error !=0)
24 | {
25 | Serial.print("rx_packet_error:");
26 | Serial.println(error);
27 | }
28 | // set position to 90°, limit velocity by 50 dps, motor current by 500mA and PWM ratio do 99% maximum
29 | error = servo.setPositionVelocityCurrentPWM(1,90,50,500,99);
30 | if(error !=0)
31 | {
32 | Serial.print("rx_packet_error:");
33 | Serial.println(error);
34 | }
35 | delay(1000);
36 | }
37 |
38 | void loop() {
39 | M5.Lcd.setCursor(0, 0);
40 | M5.Lcd.printf("Velocity:");
41 | M5.Lcd.setCursor(0, 50);
42 | M5.Lcd.printf("%.0f dps ", velocity);
43 | delay(1000);
44 |
45 | error = servo.setVelocityLimit(1,velocity);
46 | if(error !=0)
47 | {
48 | Serial.print("rx_packet_error:");
49 | Serial.println(error);
50 | }
51 | error = servo.setPosition(1,150);
52 | if(error !=0)
53 | {
54 | Serial.print("rx_packet_error:");
55 | Serial.println(error);
56 | }
57 | delay(1200);
58 | error = servo.setPosition(1,90);
59 | if(error !=0)
60 | {
61 | Serial.print("rx_packet_error:");
62 | Serial.println(error);
63 | }
64 | delay(1200);
65 | error = servo.setPosition(1,30);
66 | if(error !=0)
67 | {
68 | Serial.print("rx_packet_error:");
69 | Serial.println(error);
70 | }
71 | delay(1200);
72 | error = servo.setPosition(1,90);
73 | if(error !=0)
74 | {
75 | Serial.print("rx_packet_error:");
76 | Serial.println(error);
77 | }
78 | delay(1200);
79 |
80 |
81 | ++counter;
82 | velocity = 2*velocity;
83 | if(counter>=5)
84 | {
85 | error = servo.disableTorque(1);
86 | if(error !=0)
87 | {
88 | Serial.print("rx_packet_error:");
89 | Serial.println(error);
90 | }
91 | M5.Power.powerOFF();
92 | }
93 | delay(100);
94 | }
95 |
--------------------------------------------------------------------------------
/Arduino/M5StackFireTest/WritePositionVelocityCurrentPWM/readme.txt:
--------------------------------------------------------------------------------
1 | https://youtu.be/NrnVyZCxxQo
2 |
--------------------------------------------------------------------------------
/Arduino/M5StickCPlusTest/Haptic/Haptic.ino:
--------------------------------------------------------------------------------
1 | #include "MyServoProtocol2.h"
2 | MyServoProtocol2 servo(500000);
3 | int error = 0;
4 |
5 | void setup() {
6 | M5.begin();
7 | M5.Power.begin();
8 | M5.Lcd.fillScreen(BLACK);
9 | M5.Lcd.setTextColor(GREEN , BLACK);
10 | M5.Lcd.setTextSize(5);
11 |
12 |
13 | // read EEPROM
14 | uint16_t Kp = 0;
15 | servo.readWordCommand(1,0x2A,1,&Kp,0);
16 | Serial.println(Kp);
17 | // read EEPROM
18 | servo.readWordCommand(2,0x2A,1,&Kp,0);
19 | Serial.println(Kp);
20 | // Backup Kp = 2000 (factory)
21 | // lower K for extreme compliance
22 | Kp = 500;
23 | // uncomment here to set Kp to 500
24 | //servo.writeWordCommand(1,0x2A,1,&Kp,500,0);
25 | //servo.writeWordCommand(2,0x2A,1,&Kp,500,0);
26 | // uncomment here to set Kp back to 2000
27 | //servo.writeWordCommand(1,0x2A,1,&Kp,2000,0);
28 | //servo.writeWordCommand(2,0x2A,1,&Kp,2000,0);
29 |
30 |
31 | // enable torque servo ID=1
32 | error = servo.enableTorque(1);
33 | if(error !=0)
34 | {
35 | Serial.print("rx_packet_error:");
36 | Serial.println(error);
37 | }
38 | // disable torque servo ID=2
39 | error = servo.enableTorque(2);
40 | if(error !=0)
41 | {
42 | Serial.print("rx_packet_error:");
43 | Serial.println(error);
44 | }
45 | // switch to "velocity-profil current based position control" operating mode
46 | error = servo.setMode(1,2);
47 | if(error !=0)
48 | {
49 | Serial.print("rx_packet_error:");
50 | Serial.println(error);
51 | }
52 | // switch to "velocity-profil current based position control" operating mode
53 | error = servo.setMode(2,2);
54 | if(error !=0)
55 | {
56 | Serial.print("rx_packet_error:");
57 | Serial.println(error);
58 | }
59 | // read servo ID1 position
60 | float present_position_1 = servo.getPosition(1,&error);
61 | if(error !=0)
62 | {
63 | Serial.print("rx_packet_error:");
64 | Serial.println(error);
65 | }
66 | // read servo ID2 position
67 | float present_position_2 = servo.getPosition(2,&error);
68 | if(error !=0)
69 | {
70 | Serial.print("rx_packet_error:");
71 | Serial.println(error);
72 | }
73 | float goal_position = (present_position_1+present_position_2)/2;
74 | // set servo ID1 position to present position, and limit velocity by 400 dps, motor current by 50mA and PWM ratio do 99% maximum
75 | error = servo.setPositionVelocityCurrentPWM(1,goal_position,400,250,99);
76 | if(error !=0)
77 | {
78 | Serial.print("rx_packet_error:");
79 | Serial.println(error);
80 | }
81 | // set servo ID2 position to present position, and limit velocity by 400 dps, motor current by 50mA and PWM ratio do 99% maximum
82 | error = servo.setPositionVelocityCurrentPWM(2,goal_position,400,250,99);
83 | if(error !=0)
84 | {
85 | Serial.print("rx_packet_error:");
86 | Serial.println(error);
87 | }
88 | M5.Lcd.setCursor(0, 0);
89 | M5.Lcd.printf("Haptic");
90 | M5.Lcd.setCursor(0, 50);
91 | M5.Lcd.printf("Compliance");
92 | }
93 |
94 | void loop() {
95 | delay(2);
96 | float present_position_1 = servo.getPosition(1,&error);
97 | if(error !=0)
98 | {
99 | Serial.print("rx_packet_error:");
100 | Serial.println(error);
101 | }
102 | float present_position_2 = servo.getPosition(2,&error);
103 | if(error !=0)
104 | {
105 | Serial.print("rx_packet_error:");
106 | Serial.println(error);
107 | }
108 | float goal_position = (present_position_1+present_position_2)/2;
109 | error = servo.setPosition(1,goal_position);
110 | if(error !=0)
111 | {
112 | Serial.print("rx_packet_error:");
113 | Serial.println(error);
114 | }
115 | error = servo.setPosition(2,goal_position);
116 | if(error !=0)
117 | {
118 | Serial.print("rx_packet_error:");
119 | Serial.println(error);
120 | }
121 | M5.Lcd.setCursor(0, 100);
122 | M5.Lcd.printf("S1<->S2");
123 | M5.Lcd.setCursor(0, 150);
124 | M5.Lcd.printf("%3.0f*->%3.0f*",present_position_1,present_position_2);
125 | M5.Lcd.setCursor(0, 200);
126 | M5.Lcd.printf("Goal:%3.0fmA",goal_position);
127 | //Serial.print(".");
128 | }
129 |
--------------------------------------------------------------------------------
/Arduino/M5StickCPlusTest/Haptic/IMG20210123140623.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Arduino/M5StickCPlusTest/Haptic/IMG20210123140623.jpg
--------------------------------------------------------------------------------
/Arduino/M5StickCPlusTest/Haptic/readme.txt:
--------------------------------------------------------------------------------
1 | https://youtu.be/JIG2YbpTYrE
--------------------------------------------------------------------------------
/ControlBoard/CASE/Assemblage.SLDASM:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/CASE/Assemblage.SLDASM
--------------------------------------------------------------------------------
/ControlBoard/CASE/IMG20210108184915.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/CASE/IMG20210108184915.jpg
--------------------------------------------------------------------------------
/ControlBoard/CASE/IMG20210108185039.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/CASE/IMG20210108185039.jpg
--------------------------------------------------------------------------------
/ControlBoard/CASE/PCB.SLDPRT:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/CASE/PCB.SLDPRT
--------------------------------------------------------------------------------
/ControlBoard/CASE/case.SLDPRT:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/CASE/case.SLDPRT
--------------------------------------------------------------------------------
/ControlBoard/CASE/caseBOTTOM.STL:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/CASE/caseBOTTOM.STL
--------------------------------------------------------------------------------
/ControlBoard/CASE/caseTOP.STL:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/CASE/caseTOP.STL
--------------------------------------------------------------------------------
/ControlBoard/MECA/Arm.SLDPRT:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/MECA/Arm.SLDPRT
--------------------------------------------------------------------------------
/ControlBoard/MECA/Arm.STL:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/MECA/Arm.STL
--------------------------------------------------------------------------------
/ControlBoard/MECA/supportMicro.SLDPRT:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/MECA/supportMicro.SLDPRT
--------------------------------------------------------------------------------
/ControlBoard/V1/BOM_SMSMod_2021-01-05.csv:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V1/BOM_SMSMod_2021-01-05.csv
--------------------------------------------------------------------------------
/ControlBoard/V1/CaptureBOTTOM.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V1/CaptureBOTTOM.PNG
--------------------------------------------------------------------------------
/ControlBoard/V1/CaptureLayers.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V1/CaptureLayers.PNG
--------------------------------------------------------------------------------
/ControlBoard/V1/CaptureTOP.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V1/CaptureTOP.PNG
--------------------------------------------------------------------------------
/ControlBoard/V1/JLCPCB/2941402A_Y14.rar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V1/JLCPCB/2941402A_Y14.rar
--------------------------------------------------------------------------------
/ControlBoard/V1/JLCPCB/827ec9ba3ddc46f5bbd335722c29b47f_1608748205000.rar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V1/JLCPCB/827ec9ba3ddc46f5bbd335722c29b47f_1608748205000.rar
--------------------------------------------------------------------------------
/ControlBoard/V1/JLCPCB/BOM_MyServoShrinck3_2020-12-23_19-29-26 (1).csv:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V1/JLCPCB/BOM_MyServoShrinck3_2020-12-23_19-29-26 (1).csv
--------------------------------------------------------------------------------
/ControlBoard/V1/JLCPCB/CaptureOrder.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V1/JLCPCB/CaptureOrder.PNG
--------------------------------------------------------------------------------
/ControlBoard/V1/JLCPCB/PickAndPlace_PCB_2020-10-13_13-24-16 copy_2020-12-.csv:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V1/JLCPCB/PickAndPlace_PCB_2020-10-13_13-24-16 copy_2020-12-.csv
--------------------------------------------------------------------------------
/ControlBoard/V1/PickAndPlace_SMSMod_2021-01-05.csv:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V1/PickAndPlace_SMSMod_2021-01-05.csv
--------------------------------------------------------------------------------
/ControlBoard/V1/STM32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V1/STM32.png
--------------------------------------------------------------------------------
/ControlBoard/V1/STM32i.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V1/STM32i.png
--------------------------------------------------------------------------------
/ControlBoard/V1/Schematic_SMSMod_2021-01-05.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V1/Schematic_SMSMod_2021-01-05.pdf
--------------------------------------------------------------------------------
/ControlBoard/V2/BOM_Smarter Micro Servo MOD_2021-01-22.csv:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V2/BOM_Smarter Micro Servo MOD_2021-01-22.csv
--------------------------------------------------------------------------------
/ControlBoard/V2/CaptureBOTTOM.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V2/CaptureBOTTOM.PNG
--------------------------------------------------------------------------------
/ControlBoard/V2/CaptureBOTTOM3d.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V2/CaptureBOTTOM3d.PNG
--------------------------------------------------------------------------------
/ControlBoard/V2/CaptureTOP.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V2/CaptureTOP.PNG
--------------------------------------------------------------------------------
/ControlBoard/V2/CaptureTOP3d.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V2/CaptureTOP3d.PNG
--------------------------------------------------------------------------------
/ControlBoard/V2/PickAndPlace_SMSMod_2021-01-22.csv:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V2/PickAndPlace_SMSMod_2021-01-22.csv
--------------------------------------------------------------------------------
/ControlBoard/V2/Schematic_Smarter Micro Servo MOD_2021-01-22.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlBoard/V2/Schematic_Smarter Micro Servo MOD_2021-01-22.pdf
--------------------------------------------------------------------------------
/ControlFirmware/.project:
--------------------------------------------------------------------------------
1 |
2 |
3 | STM32G431KBx
4 |
5 |
6 |
7 |
8 |
9 | org.eclipse.cdt.managedbuilder.core.genmakebuilder
10 | clean,full,incremental,
11 |
12 |
13 |
14 |
15 | org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder
16 | full,incremental,
17 |
18 |
19 |
20 |
21 |
22 | com.st.stm32cube.ide.mcu.MCUProjectNature
23 | com.st.stm32cube.ide.mcu.MCUCubeProjectNature
24 | org.eclipse.cdt.core.cnature
25 | com.st.stm32cube.ide.mcu.MCUCubeIdeServicesRevAev2ProjectNature
26 | com.st.stm32cube.ide.mcu.MCUAdvancedStructureProjectNature
27 | com.st.stm32cube.ide.mcu.MCUEndUserDisabledTrustZoneProjectNature
28 | com.st.stm32cube.ide.mcu.MCUSingleCpuProjectNature
29 | com.st.stm32cube.ide.mcu.MCURootProjectNature
30 | org.eclipse.cdt.managedbuilder.core.managedBuildNature
31 | org.eclipse.cdt.managedbuilder.core.ScannerConfigNature
32 |
33 |
34 |
--------------------------------------------------------------------------------
/ControlFirmware/.settings/language.settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/ControlFirmware/.settings/stm32cubeide.project.prefs:
--------------------------------------------------------------------------------
1 | 8DF89ED150041C4CBC7CB9A9CAA90856=644CED9F07754E26FF20CA43853538EC
2 | DC22A860405A8BF2F2C095E5B6529F12=644CED9F07754E26FF20CA43853538EC
3 | eclipse.preferences.version=1
4 |
--------------------------------------------------------------------------------
/ControlFirmware/Core/Inc/binary_tool.h:
--------------------------------------------------------------------------------
1 | /*
2 | * binary_tool.h
3 | *
4 | * Created on: 27 sept. 2020
5 | * Author: patrick
6 | */
7 |
8 | #ifndef INC_BINARY_TOOL_H_
9 | #define INC_BINARY_TOOL_H_
10 |
11 | #define LOW_BYTE(x) ((unsigned char)((x)&0xFF))
12 | #define HIGH_BYTE(x) ((unsigned char)(((x)>>8)&0xFF))
13 | #define MAKE_SHORT(l,h) (((uint16_t)((h)&0xFF)<<8) | (uint16_t)((l)&0xFF))
14 |
15 | #endif /* INC_BINARY_TOOL_H_ */
16 |
--------------------------------------------------------------------------------
/ControlFirmware/Core/Inc/control_algo.h:
--------------------------------------------------------------------------------
1 | /*
2 | * control_algo.h
3 | *
4 | * Created on: 6 nov. 2020
5 | * Author: Patrick
6 | */
7 |
8 | #ifndef INC_CONTROL_ALGO_H_
9 | #define INC_CONTROL_ALGO_H_
10 |
11 | #include "stm32g4xx_hal.h"
12 |
13 | #ifdef __cplusplus
14 | extern "C" {
15 | #endif
16 |
17 | void APP_Control_Init();
18 | void APP_Control_Process();
19 |
20 | #ifdef __cplusplus
21 | }
22 | #endif
23 |
24 |
25 | #endif /* INC_CONTROL_ALGO_H_ */
26 |
--------------------------------------------------------------------------------
/ControlFirmware/Core/Inc/eeprom.h:
--------------------------------------------------------------------------------
1 | /*
2 | * eeprom.h
3 | *
4 | * Created on: 13 déc. 2020
5 | * Author: Patrick
6 | */
7 |
8 | #ifndef INC_EEPROM_H_
9 | #define INC_EEPROM_H_
10 |
11 | #include
12 | #include "stm32g4xx_hal.h"
13 |
14 | bool eeprom_empty();
15 | HAL_StatusTypeDef eeprom_restore(uint8_t * regs, uint32_t size); // size must be 64 bits aligned
16 | HAL_StatusTypeDef eeprom_store(uint8_t const * regs, uint32_t size); // size must be 64 bits aligned
17 |
18 | uint8_t const * eeprom_base_address();
19 |
20 | #endif /* INC_EEPROM_H_ */
21 |
--------------------------------------------------------------------------------
/ControlFirmware/Core/Inc/led.h:
--------------------------------------------------------------------------------
1 | /*
2 | * led.h
3 | *
4 | * Created on: 25 d�c. 2015
5 | * Author: Patrick
6 | */
7 |
8 | #ifndef APPLICATION_USER_HAL_LED_H_
9 | #define APPLICATION_USER_HAL_LED_H_
10 |
11 |
12 | /* Includes ------------------------------------------------------------------*/
13 | #include "stm32g4xx_hal.h"
14 | #include "main.h"
15 |
16 | #ifdef __cplusplus
17 | extern "C" {
18 | #endif
19 |
20 | /* HAL settings ------------------------------------------------------------------*/
21 |
22 | enum LED_ID
23 | {
24 | LED0 = 0,
25 | LED_COUNT
26 | };
27 |
28 | static uint16_t const hal_led_id_to_pin[LED_COUNT] = {
29 | LED0_Pin,
30 | };
31 |
32 | static GPIO_TypeDef * const hal_led_id_to_port[LED_COUNT] = {
33 | LED0_GPIO_Port,
34 | };
35 |
36 | /* HAL Public Data ------------------------------------------------------------------*/
37 |
38 | enum LED_STATE
39 | {
40 | LED_OFF = 0,
41 | LED_ON = 1
42 | };
43 |
44 | /* HAL Functions ------------------------------------------------------------------*/
45 |
46 | void HAL_Led_Init(void);
47 | void HAL_Led_Process(void);
48 |
49 | void HAL_Led_Set(int id);
50 | void HAL_Led_Reset(int id);
51 | void HAL_Led_Toggle(int id);
52 |
53 | int HAL_Led_Get(int id);
54 |
55 | void HAL_Led_Blink(int id, int times, int period_ms); // times = 0 ==> non stop blinking
56 |
57 | #ifdef __cplusplus
58 | }
59 | #endif
60 |
61 | #endif /* APPLICATION_USER_HAL_LED_H_ */
62 |
--------------------------------------------------------------------------------
/ControlFirmware/Core/Inc/main.h:
--------------------------------------------------------------------------------
1 | /* USER CODE BEGIN Header */
2 | /**
3 | ******************************************************************************
4 | * @file : main.h
5 | * @brief : Header for main.c file.
6 | * This file contains the common defines of the application.
7 | ******************************************************************************
8 | * @attention
9 | *
10 | * © Copyright (c) 2021 STMicroelectronics.
11 | * All rights reserved.
12 | *
13 | * This software component is licensed by ST under BSD 3-Clause license,
14 | * the "License"; You may not use this file except in compliance with the
15 | * License. You may obtain a copy of the License at:
16 | * opensource.org/licenses/BSD-3-Clause
17 | *
18 | ******************************************************************************
19 | */
20 | /* USER CODE END Header */
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __MAIN_H
24 | #define __MAIN_H
25 |
26 | #ifdef __cplusplus
27 | extern "C" {
28 | #endif
29 |
30 | /* Includes ------------------------------------------------------------------*/
31 | #include "stm32g4xx_hal.h"
32 |
33 | /* Private includes ----------------------------------------------------------*/
34 | /* USER CODE BEGIN Includes */
35 |
36 | /* USER CODE END Includes */
37 |
38 | /* Exported types ------------------------------------------------------------*/
39 | /* USER CODE BEGIN ET */
40 |
41 | /* USER CODE END ET */
42 |
43 | /* Exported constants --------------------------------------------------------*/
44 | /* USER CODE BEGIN EC */
45 |
46 | /* USER CODE END EC */
47 |
48 | /* Exported macro ------------------------------------------------------------*/
49 | /* USER CODE BEGIN EM */
50 |
51 | /* USER CODE END EM */
52 |
53 | void HAL_TIM_MspPostInit(TIM_HandleTypeDef *htim);
54 |
55 | /* Exported functions prototypes ---------------------------------------------*/
56 | void Error_Handler(void);
57 |
58 | /* USER CODE BEGIN EFP */
59 |
60 | /* USER CODE END EFP */
61 |
62 | /* Private defines -----------------------------------------------------------*/
63 | #define LED0_Pin GPIO_PIN_11
64 | #define LED0_GPIO_Port GPIOA
65 | #define UART2_DIR_TX_Pin GPIO_PIN_12
66 | #define UART2_DIR_TX_GPIO_Port GPIOA
67 | #define UART2_DIR_RX_Pin GPIO_PIN_4
68 | #define UART2_DIR_RX_GPIO_Port GPIOB
69 | #define FAULT_Pin GPIO_PIN_5
70 | #define FAULT_GPIO_Port GPIOB
71 | /* USER CODE BEGIN Private defines */
72 |
73 | /* USER CODE END Private defines */
74 |
75 | #ifdef __cplusplus
76 | }
77 | #endif
78 |
79 | #endif /* __MAIN_H */
80 |
81 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
82 |
--------------------------------------------------------------------------------
/ControlFirmware/Core/Inc/math_tool.h:
--------------------------------------------------------------------------------
1 | /*
2 | * math_tool.h
3 | *
4 | * Created on: 4 nov. 2020
5 | * Author: Patrick
6 | */
7 |
8 | #ifndef INC_MATH_TOOL_H_
9 | #define INC_MATH_TOOL_H_
10 |
11 | #include "stm32g4xx_hal.h"
12 |
13 | #ifdef __cplusplus
14 | extern "C" {
15 | #endif
16 |
17 | int32_t constrain(int32_t x, int32_t min, int32_t max);
18 | float fconstrain(float x, float min, float max);
19 | uint32_t map(uint32_t x, uint32_t in_min, uint32_t in_max, uint32_t out_min, uint32_t out_max);
20 | float fmap(float x, float in_min, float in_max, float out_min, float out_max);
21 |
22 | #endif /* INC_MATH_TOOL_H_ */
23 |
--------------------------------------------------------------------------------
/ControlFirmware/Core/Inc/pid.h:
--------------------------------------------------------------------------------
1 | /*
2 | * pid.h
3 | *
4 | * Created on: 16 nov. 2020
5 | * Author: Patrick
6 | */
7 |
8 | #ifndef INC_PID_H_
9 | #define INC_PID_H_
10 |
11 | #include "stm32g4xx_hal.h"
12 |
13 | #ifdef __cplusplus
14 | extern "C" {
15 | #endif
16 |
17 | #define PID_INTEGRAL_DEPTH 100
18 |
19 | typedef struct{
20 | float err_last_one;
21 | float err_integral;
22 | float derivative_filtered;
23 |
24 | } pid_context_t;
25 |
26 | void pid_reset( pid_context_t * ctx );
27 |
28 | float pid_process_antiwindup_clamp_with_ff(
29 | pid_context_t * ctx,
30 | float error,
31 | float kp,
32 | float ki,
33 | float kd,
34 | float output_limit,
35 | float alpha_derivative,
36 | float feed_forward
37 | );
38 |
39 |
40 | float pid_process_antiwindup_clamp(
41 | pid_context_t * ctx,
42 | float error,
43 | float kp,
44 | float ki,
45 | float kd,
46 | float output_limit,
47 | float alpha_derivative
48 | );
49 |
50 | float pid_process_antiwindup_back_calculation(
51 | pid_context_t * ctx,
52 | float error,
53 | float kp,
54 | float ki,
55 | float kd,
56 | float output_limit,
57 | float kt,
58 | float alpha_derivative
59 | );
60 |
61 |
62 | #ifdef __cplusplus
63 | }
64 | #endif
65 |
66 | #endif /* INC_PID_H_ */
67 |
--------------------------------------------------------------------------------
/ControlFirmware/Core/Inc/protocol.h:
--------------------------------------------------------------------------------
1 | /*
2 | * protocol.h
3 | *
4 | * Created on: 4 nov. 2020
5 | * Author: Patrick
6 | */
7 |
8 | #ifndef INC_PROTOCOL_H_
9 | #define INC_PROTOCOL_H_
10 |
11 | #ifdef __cplusplus
12 | extern "C" {
13 | #endif
14 |
15 | #include "stm32g4xx_hal.h"
16 |
17 | uint16_t updateCRC(uint16_t crc_accum, uint8_t *data_blk_ptr, uint16_t data_blk_size);
18 | void packet_encapsulate(uint32_t payload_status_length);
19 | void instruction_handler();
20 | void packet_handler(char c);
21 |
22 |
23 |
24 | #ifdef __cplusplus
25 | }
26 | #endif
27 |
28 | #endif /* INC_PROTOCOL_H_ */
29 |
--------------------------------------------------------------------------------
/ControlFirmware/Core/Inc/serial.h:
--------------------------------------------------------------------------------
1 | /*
2 | * serial.h
3 | *
4 | * Created on: 29 nov. 2015
5 | * Author: Patrick
6 | */
7 |
8 | #ifndef HAL_SERIAL_H_
9 | #define HAL_SERIAL_H_
10 |
11 | #include "stm32g4xx_hal.h"
12 | #include "stdbool.h"
13 |
14 | /* HAL Public Data ------------------------------------------------------------------*/
15 | /*
16 | #define size_of_tx_pool 16
17 | #define size_of_tx_buffer 1600
18 | #define size_of_rx_circular_buffer 16000
19 | */
20 |
21 | #define size_of_tx_pool 32
22 | #define size_of_tx_buffer 256
23 | #define size_of_rx_circular_buffer 2048
24 |
25 | /*
26 | #define size_of_tx_pool 32
27 | #define size_of_tx_buffer 1600
28 | #define size_of_rx_circular_buffer 32000
29 | */
30 |
31 | typedef struct
32 | {
33 | uint8_t data[size_of_tx_buffer];
34 | uint32_t length;
35 | } tx_buffer;
36 |
37 | typedef struct
38 | {
39 | UART_HandleTypeDef * huart;
40 |
41 | tx_buffer tx_buffer_pool[size_of_tx_pool];
42 | uint32_t tx_head_position;
43 | uint32_t tx_tail_position;
44 | volatile uint32_t tx_dma;
45 |
46 | uint8_t rx_circular_buffer[size_of_rx_circular_buffer];
47 | uint8_t const * rx_tail_ptr;
48 |
49 | // for half duplex serial, DIR TX and RX signals
50 | bool half_duplex;
51 | GPIO_TypeDef *GPIOx_DIR_TX;
52 | uint16_t GPIO_Pin_DIR_TX;
53 | GPIO_PinState PinState_DIR_TX;
54 | GPIO_TypeDef *GPIOx_DIR_RX;
55 | uint16_t GPIO_Pin_DIR_RX;
56 | GPIO_PinState PinState_DIR_RX;
57 |
58 | } HAL_Serial_Handler;
59 |
60 | #define HAL_Serial_Handler_Count 1
61 |
62 | /* HAL Functions ------------------------------------------------------------------*/
63 |
64 | void HAL_Serial_Init(UART_HandleTypeDef * huart, HAL_Serial_Handler * hserial);
65 | void HAL_Serial_Init_Half_Duplex(
66 | UART_HandleTypeDef * huart,
67 | HAL_Serial_Handler * hserial,
68 | GPIO_TypeDef *GPIOx_TX,
69 | uint16_t GPIO_Pin_TX,
70 | GPIO_PinState PinState_TX,
71 | GPIO_TypeDef *GPIOx_RX,
72 | uint16_t GPIO_Pin_RX,
73 | GPIO_PinState PinState_RX
74 | );
75 | int HAL_Serial_Available(HAL_Serial_Handler * hserial);
76 | char HAL_Serial_GetChar(HAL_Serial_Handler * hserial);
77 | int HAL_Serial_Read(HAL_Serial_Handler * hserial, uint8_t * ptr, int len );
78 | int HAL_Serial_Write(HAL_Serial_Handler * hserial, uint8_t const * ptr, int len );
79 | int HAL_Serial_Print(HAL_Serial_Handler * hserial,const char *fmt, ...);
80 |
81 | /* HAL Functions ------------------------------------------------------------------*/
82 |
83 |
84 | #endif /* HAL_SERIAL_H_ */
85 |
--------------------------------------------------------------------------------
/ControlFirmware/Core/Inc/stm32g4xx_it.h:
--------------------------------------------------------------------------------
1 | /* USER CODE BEGIN Header */
2 | /**
3 | ******************************************************************************
4 | * @file stm32g4xx_it.h
5 | * @brief This file contains the headers of the interrupt handlers.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2021 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 | /* USER CODE END Header */
20 |
21 | /* Define to prevent recursive inclusion -------------------------------------*/
22 | #ifndef __STM32G4xx_IT_H
23 | #define __STM32G4xx_IT_H
24 |
25 | #ifdef __cplusplus
26 | extern "C" {
27 | #endif
28 |
29 | /* Private includes ----------------------------------------------------------*/
30 | /* USER CODE BEGIN Includes */
31 |
32 | /* USER CODE END Includes */
33 |
34 | /* Exported types ------------------------------------------------------------*/
35 | /* USER CODE BEGIN ET */
36 |
37 | /* USER CODE END ET */
38 |
39 | /* Exported constants --------------------------------------------------------*/
40 | /* USER CODE BEGIN EC */
41 |
42 | /* USER CODE END EC */
43 |
44 | /* Exported macro ------------------------------------------------------------*/
45 | /* USER CODE BEGIN EM */
46 |
47 | /* USER CODE END EM */
48 |
49 | /* Exported functions prototypes ---------------------------------------------*/
50 | void NMI_Handler(void);
51 | void HardFault_Handler(void);
52 | void MemManage_Handler(void);
53 | void BusFault_Handler(void);
54 | void UsageFault_Handler(void);
55 | void SVC_Handler(void);
56 | void DebugMon_Handler(void);
57 | void PendSV_Handler(void);
58 | void SysTick_Handler(void);
59 | void DMA1_Channel1_IRQHandler(void);
60 | void DMA1_Channel2_IRQHandler(void);
61 | void DMA1_Channel3_IRQHandler(void);
62 | void ADC1_2_IRQHandler(void);
63 | void TIM4_IRQHandler(void);
64 | void USART2_IRQHandler(void);
65 | /* USER CODE BEGIN EFP */
66 |
67 | /* USER CODE END EFP */
68 |
69 | #ifdef __cplusplus
70 | }
71 | #endif
72 |
73 | #endif /* __STM32G4xx_IT_H */
74 |
75 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
76 |
--------------------------------------------------------------------------------
/ControlFirmware/Core/Src/eeprom.c:
--------------------------------------------------------------------------------
1 | /*
2 | * eeprom.c
3 | *
4 | * Created on: 13 déc. 2020
5 | * Author: Patrick
6 | */
7 |
8 | #include "eeprom.h"
9 | #include
10 |
11 | static uint32_t const page_nb = 63U; //(uint32_t)FLASH_PAGE_NB-1;
12 | static uint32_t const start_address = 0x08000000UL+63*0x800U; //(FLASH_BASE)+page_nb*(FLASH_PAGE_SIZE);
13 |
14 | uint8_t const * eeprom_base_address()
15 | {
16 | return (uint8_t*)start_address;
17 | }
18 |
19 | bool eeprom_empty()
20 | {
21 | return *(uint32_t*)(start_address)==0xFFFFFFFF;
22 | }
23 |
24 | HAL_StatusTypeDef eeprom_restore(uint8_t * regs, uint32_t size)
25 | {
26 | memcpy(regs,(uint8_t const*)start_address,size);
27 | return HAL_OK;
28 | }
29 |
30 | HAL_StatusTypeDef eeprom_store(uint8_t const * regs, uint32_t size)
31 | {
32 | HAL_FLASH_Unlock();
33 | // erase the last page of bank1 (STM32G43x : 1 bank, 64 pages, 2kB per page, 64-bit data)
34 | {
35 | FLASH_EraseInitTypeDef erase =
36 | {
37 | FLASH_TYPEERASE_PAGES,
38 | FLASH_BANK_1,
39 | page_nb,
40 | 1
41 | };
42 | uint32_t page_error = 0;
43 | HAL_StatusTypeDef result = HAL_FLASHEx_Erase(&erase, &page_error);
44 | if(result!=HAL_OK)
45 | {
46 | HAL_FLASH_Lock();
47 | return result;
48 | }
49 | }
50 | // write the last page
51 | {
52 | uint64_t data = 0xDEADBEEF;
53 | for(uint32_t index=0; indexmax)
15 | return max;
16 | else
17 | return x;
18 | }
19 |
20 | float fconstrain(float x, float min, float max)
21 | {
22 | if(xmax)
25 | return max;
26 | else
27 | return x;
28 | }
29 |
30 | uint32_t map(uint32_t x, uint32_t in_min, uint32_t in_max, uint32_t out_min, uint32_t out_max)
31 | {
32 | if(x<=in_min)
33 | return out_min;
34 | else if(x>=in_max)
35 | return out_max;
36 | else
37 | return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
38 | }
39 |
40 | float fmap(float x, float in_min, float in_max, float out_min, float out_max)
41 | {
42 | if(x<=in_min)
43 | return out_min;
44 | else if(x>=in_max)
45 | return out_max;
46 | else
47 | return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
48 | }
49 |
50 |
51 | #ifdef __cplusplus
52 | }
53 | #endif
54 |
55 |
--------------------------------------------------------------------------------
/ControlFirmware/Core/Src/pic.c:
--------------------------------------------------------------------------------
1 | /*
2 | * pic.c
3 | *
4 | * Created on: 16 nov. 2020
5 | * Author: Patrick
6 | */
7 |
8 | #include "pid.h"
9 | #include
10 | #include
11 | #include "math_tool.h"
12 |
13 | void pid_reset( pid_context_t * ctx )
14 | {
15 | ctx->err_last_one = 0.0f;
16 | ctx->err_integral = 0.0f;
17 | ctx->derivative_filtered = 0.0f;
18 | }
19 |
20 | float pid_process_antiwindup_clamp_with_ff(
21 | pid_context_t * ctx,
22 | float error,
23 | float kp,
24 | float ki,
25 | float kd,
26 | float output_limit,
27 | float alpha_derivative,
28 | float feed_forward
29 | )
30 | {
31 | // filter derivative
32 | ctx->derivative_filtered = alpha_derivative*(error-ctx->err_last_one)+(1.0f-alpha_derivative)*ctx->derivative_filtered;
33 | // update derivative state
34 | ctx->err_last_one = error;
35 | // PID
36 | float const p_term = kp*error;
37 | float const i_term = ctx->err_integral;
38 | float const d_term = kd*ctx->derivative_filtered;
39 | // compute output before saturation
40 | float const v = p_term + i_term + d_term + feed_forward;
41 | // saturation
42 | float const u = fconstrain(v,-output_limit,output_limit);
43 | // output saturating
44 | bool saturating = (u!=v);
45 | // error and output same sign
46 | bool sign = (error*v >= 0);
47 | // zero
48 | bool clamp = saturating && sign;
49 | if(!clamp)
50 | ctx->err_integral = ctx->err_integral + ki*error;
51 | // output
52 | return u;
53 | }
54 |
55 | float pid_process_antiwindup_clamp(
56 | pid_context_t * ctx,
57 | float error,
58 | float kp,
59 | float ki,
60 | float kd,
61 | float output_limit,
62 | float alpha_derivative
63 | )
64 | {
65 | // filter derivative
66 | ctx->derivative_filtered = alpha_derivative*(error-ctx->err_last_one)+(1.0f-alpha_derivative)*ctx->derivative_filtered;
67 | // update derivative state
68 | ctx->err_last_one = error;
69 | // PID
70 | float const p_term = kp*error;
71 | float const i_term = ctx->err_integral;
72 | float const d_term = kd*ctx->derivative_filtered;
73 | // compute output before saturation
74 | float const v = p_term + i_term + d_term;
75 | // saturation
76 | float const u = fconstrain(v,-output_limit,output_limit);
77 | // output saturating
78 | bool saturating = (u!=v);
79 | // error and output same sign
80 | bool sign = (error*v >= 0);
81 | // zero
82 | bool clamp = saturating && sign;
83 | if(!clamp)
84 | ctx->err_integral = ctx->err_integral + ki*error;
85 | // output
86 | return u;
87 | }
88 |
89 | float pid_process_antiwindup_back_calculation(
90 | pid_context_t * ctx,
91 | float error,
92 | float kp,
93 | float ki,
94 | float kd,
95 | float output_limit,
96 | float kt,
97 | float alpha_derivative
98 | )
99 | {
100 | // filter derivative
101 | ctx->derivative_filtered = alpha_derivative*(error-ctx->err_last_one)+(1.0f-alpha_derivative)*ctx->derivative_filtered;
102 | // update derivative state
103 | ctx->err_last_one = error;
104 | // PID
105 | float const p_term = kp*error;
106 | float const i_term = ctx->err_integral;
107 | float const d_term = kd*ctx->derivative_filtered;
108 | // compute output before saturation
109 | float const v = p_term + i_term + d_term;
110 | // saturation
111 | float const u = fconstrain(v,-output_limit,output_limit);
112 | // compute delta saturation
113 | float const e = u-v;
114 | // compute feedback
115 | float i_feedback = e*kt;
116 | // update integral state
117 | ctx->err_integral = ctx->err_integral + ki*error + i_feedback;
118 | // output
119 | return u;
120 | }
121 |
122 |
--------------------------------------------------------------------------------
/ControlFirmware/Core/Src/syscalls.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file syscalls.c
4 | * @author Auto-generated by STM32CubeIDE
5 | * @brief STM32CubeIDE Minimal System calls file
6 | *
7 | * For more information about which c-functions
8 | * need which of these lowlevel functions
9 | * please consult the Newlib libc-manual
10 | ******************************************************************************
11 | * @attention
12 | *
13 | * © Copyright (c) 2020 STMicroelectronics.
14 | * All rights reserved.
15 | *
16 | * This software component is licensed by ST under BSD 3-Clause license,
17 | * the "License"; You may not use this file except in compliance with the
18 | * License. You may obtain a copy of the License at:
19 | * opensource.org/licenses/BSD-3-Clause
20 | *
21 | ******************************************************************************
22 | */
23 |
24 | /* Includes */
25 | #include
26 | #include
27 | #include
28 | #include
29 | #include
30 | #include
31 | #include
32 | #include
33 |
34 |
35 | /* Variables */
36 | //#undef errno
37 | extern int errno;
38 | extern int __io_putchar(int ch) __attribute__((weak));
39 | extern int __io_getchar(void) __attribute__((weak));
40 |
41 | register char * stack_ptr asm("sp");
42 |
43 | char *__env[1] = { 0 };
44 | char **environ = __env;
45 |
46 |
47 | /* Functions */
48 | void initialise_monitor_handles()
49 | {
50 | }
51 |
52 | int _getpid(void)
53 | {
54 | return 1;
55 | }
56 |
57 | int _kill(int pid, int sig)
58 | {
59 | errno = EINVAL;
60 | return -1;
61 | }
62 |
63 | void _exit (int status)
64 | {
65 | _kill(status, -1);
66 | while (1) {} /* Make sure we hang here */
67 | }
68 |
69 | __attribute__((weak)) int _read(int file, char *ptr, int len)
70 | {
71 | int DataIdx;
72 |
73 | for (DataIdx = 0; DataIdx < len; DataIdx++)
74 | {
75 | *ptr++ = __io_getchar();
76 | }
77 |
78 | return len;
79 | }
80 |
81 | __attribute__((weak)) int _write(int file, char *ptr, int len)
82 | {
83 | int DataIdx;
84 |
85 | for (DataIdx = 0; DataIdx < len; DataIdx++)
86 | {
87 | __io_putchar(*ptr++);
88 | }
89 | return len;
90 | }
91 |
92 | int _close(int file)
93 | {
94 | return -1;
95 | }
96 |
97 |
98 | int _fstat(int file, struct stat *st)
99 | {
100 | st->st_mode = S_IFCHR;
101 | return 0;
102 | }
103 |
104 | int _isatty(int file)
105 | {
106 | return 1;
107 | }
108 |
109 | int _lseek(int file, int ptr, int dir)
110 | {
111 | return 0;
112 | }
113 |
114 | int _open(char *path, int flags, ...)
115 | {
116 | /* Pretend like we always fail */
117 | return -1;
118 | }
119 |
120 | int _wait(int *status)
121 | {
122 | errno = ECHILD;
123 | return -1;
124 | }
125 |
126 | int _unlink(char *name)
127 | {
128 | errno = ENOENT;
129 | return -1;
130 | }
131 |
132 | int _times(struct tms *buf)
133 | {
134 | return -1;
135 | }
136 |
137 | int _stat(char *file, struct stat *st)
138 | {
139 | st->st_mode = S_IFCHR;
140 | return 0;
141 | }
142 |
143 | int _link(char *old, char *new)
144 | {
145 | errno = EMLINK;
146 | return -1;
147 | }
148 |
149 | int _fork(void)
150 | {
151 | errno = EAGAIN;
152 | return -1;
153 | }
154 |
155 | int _execve(char *name, char **argv, char **env)
156 | {
157 | errno = ENOMEM;
158 | return -1;
159 | }
160 |
--------------------------------------------------------------------------------
/ControlFirmware/Core/Src/sysmem.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file sysmem.c
4 | * @author Generated by STM32CubeIDE
5 | * @brief STM32CubeIDE System Memory calls file
6 | *
7 | * For more information about which C functions
8 | * need which of these lowlevel functions
9 | * please consult the newlib libc manual
10 | ******************************************************************************
11 | * @attention
12 | *
13 | * © Copyright (c) 2020 STMicroelectronics.
14 | * All rights reserved.
15 | *
16 | * This software component is licensed by ST under BSD 3-Clause license,
17 | * the "License"; You may not use this file except in compliance with the
18 | * License. You may obtain a copy of the License at:
19 | * opensource.org/licenses/BSD-3-Clause
20 | *
21 | ******************************************************************************
22 | */
23 |
24 | /* Includes */
25 | #include
26 | #include
27 |
28 | /**
29 | * Pointer to the current high watermark of the heap usage
30 | */
31 | static uint8_t *__sbrk_heap_end = NULL;
32 |
33 | /**
34 | * @brief _sbrk() allocates memory to the newlib heap and is used by malloc
35 | * and others from the C library
36 | *
37 | * @verbatim
38 | * ############################################################################
39 | * # .data # .bss # newlib heap # MSP stack #
40 | * # # # # Reserved by _Min_Stack_Size #
41 | * ############################################################################
42 | * ^-- RAM start ^-- _end _estack, RAM end --^
43 | * @endverbatim
44 | *
45 | * This implementation starts allocating at the '_end' linker symbol
46 | * The '_Min_Stack_Size' linker symbol reserves a memory for the MSP stack
47 | * The implementation considers '_estack' linker symbol to be RAM end
48 | * NOTE: If the MSP stack, at any point during execution, grows larger than the
49 | * reserved size, please increase the '_Min_Stack_Size'.
50 | *
51 | * @param incr Memory size
52 | * @return Pointer to allocated memory
53 | */
54 | void *_sbrk(ptrdiff_t incr)
55 | {
56 | extern uint8_t _end; /* Symbol defined in the linker script */
57 | extern uint8_t _estack; /* Symbol defined in the linker script */
58 | extern uint32_t _Min_Stack_Size; /* Symbol defined in the linker script */
59 | const uint32_t stack_limit = (uint32_t)&_estack - (uint32_t)&_Min_Stack_Size;
60 | const uint8_t *max_heap = (uint8_t *)stack_limit;
61 | uint8_t *prev_heap_end;
62 |
63 | /* Initialize heap end at first call */
64 | if (NULL == __sbrk_heap_end)
65 | {
66 | __sbrk_heap_end = &_end;
67 | }
68 |
69 | /* Protect heap from growing into the reserved MSP stack */
70 | if (__sbrk_heap_end + incr > max_heap)
71 | {
72 | errno = ENOMEM;
73 | return (void *)-1;
74 | }
75 |
76 | prev_heap_end = __sbrk_heap_end;
77 | __sbrk_heap_end += incr;
78 |
79 | return (void *)prev_heap_end;
80 | }
81 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/ControlFirmware.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/ControlFirmware.bin
--------------------------------------------------------------------------------
/ControlFirmware/Debug/ControlFirmware.elf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/ControlFirmware.elf
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/control_algo.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Src/control_algo.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/control_algo.su:
--------------------------------------------------------------------------------
1 | control_algo.c:76:6:scale_all_sensors 24 static
2 | control_algo.c:96:6:APP_Control_Reset 8 static
3 | control_algo.c:116:6:APP_Control_Init 8 static
4 | control_algo.c:147:6:APP_Control_Process 248 static
5 | control_algo.c:578:6:HAL_ADC_ConvCpltCallback 16 static
6 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/control_table.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Src/control_table.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/control_table.su:
--------------------------------------------------------------------------------
1 | control_table.c:16:6:factory_reset_eeprom_regs 8 static
2 | control_table.c:82:6:load_eeprom_regs 8 static
3 | control_table.c:87:6:store_eeprom_regs 8 static
4 | control_table.c:92:6:reset_ram_regs 4 static
5 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/eeprom.d:
--------------------------------------------------------------------------------
1 | Core/Src/eeprom.o: ../Core/Src/eeprom.c ../Core/Inc/eeprom.h \
2 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h \
3 | ../Core/Inc/stm32g4xx_hal_conf.h \
4 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc.h \
5 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h \
6 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h \
7 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h \
8 | ../Drivers/CMSIS/Include/core_cm4.h \
9 | ../Drivers/CMSIS/Include/cmsis_version.h \
10 | ../Drivers/CMSIS/Include/cmsis_compiler.h \
11 | ../Drivers/CMSIS/Include/cmsis_gcc.h \
12 | ../Drivers/CMSIS/Include/mpu_armv7.h \
13 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h \
14 | ../Drivers/STM32G4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \
15 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc_ex.h \
16 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio.h \
17 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio_ex.h \
18 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma.h \
19 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma_ex.h \
20 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_cortex.h \
21 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc.h \
22 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_ll_adc.h \
23 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc_ex.h \
24 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_exti.h \
25 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h \
26 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ex.h \
27 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ramfunc.h \
28 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp.h \
29 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp_ex.h \
30 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr.h \
31 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr_ex.h \
32 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim.h \
33 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim_ex.h \
34 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h \
35 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart_ex.h
36 |
37 | ../Core/Inc/eeprom.h:
38 |
39 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h:
40 |
41 | ../Core/Inc/stm32g4xx_hal_conf.h:
42 |
43 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc.h:
44 |
45 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h:
46 |
47 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h:
48 |
49 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h:
50 |
51 | ../Drivers/CMSIS/Include/core_cm4.h:
52 |
53 | ../Drivers/CMSIS/Include/cmsis_version.h:
54 |
55 | ../Drivers/CMSIS/Include/cmsis_compiler.h:
56 |
57 | ../Drivers/CMSIS/Include/cmsis_gcc.h:
58 |
59 | ../Drivers/CMSIS/Include/mpu_armv7.h:
60 |
61 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h:
62 |
63 | ../Drivers/STM32G4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h:
64 |
65 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc_ex.h:
66 |
67 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio.h:
68 |
69 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio_ex.h:
70 |
71 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma.h:
72 |
73 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma_ex.h:
74 |
75 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_cortex.h:
76 |
77 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc.h:
78 |
79 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_ll_adc.h:
80 |
81 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc_ex.h:
82 |
83 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_exti.h:
84 |
85 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h:
86 |
87 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ex.h:
88 |
89 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ramfunc.h:
90 |
91 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp.h:
92 |
93 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp_ex.h:
94 |
95 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr.h:
96 |
97 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr_ex.h:
98 |
99 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim.h:
100 |
101 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim_ex.h:
102 |
103 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h:
104 |
105 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart_ex.h:
106 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/eeprom.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Src/eeprom.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/eeprom.su:
--------------------------------------------------------------------------------
1 | eeprom.c:14:17:eeprom_base_address 4 static
2 | eeprom.c:19:6:eeprom_empty 4 static
3 | eeprom.c:24:19:eeprom_restore 16 static
4 | eeprom.c:30:19:eeprom_store 64 static
5 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/led.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Src/led.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/led.su:
--------------------------------------------------------------------------------
1 | led.c:22:6:stop_blinking 16 static
2 | led.c:32:6:HAL_Led_Init 16 static
3 | led.c:43:6:HAL_Led_Process 16 static
4 | led.c:77:6:HAL_Led_Set 16 static
5 | led.c:83:6:HAL_Led_Reset 16 static
6 | led.c:89:6:HAL_Led_Toggle 16 static
7 | led.c:98:5:HAL_Led_Get 16 static
8 | led.c:106:6:HAL_Led_Blink 24 static
9 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/main.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Src/main.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/main.su:
--------------------------------------------------------------------------------
1 | main.c:87:5:main 32 static
2 | main.c:178:6:SystemClock_Config 152 static
3 | main.c:233:13:MX_ADC1_Init 56 static
4 | main.c:314:13:MX_OPAMP1_Init 8 static
5 | main.c:348:13:MX_TIM4_Init 64 static
6 | main.c:412:13:MX_TIM15_Init 40 static
7 | main.c:458:13:MX_USART2_UART_Init 48 static
8 | main.c:543:13:MX_DMA_Init 16 static
9 | main.c:568:13:MX_GPIO_Init 40 static
10 | main.c:620:6:Error_Handler 4 static,ignoring_inline_asm
11 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/math_tool.d:
--------------------------------------------------------------------------------
1 | Core/Src/math_tool.o: ../Core/Src/math_tool.c ../Core/Inc/math_tool.h \
2 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h \
3 | ../Core/Inc/stm32g4xx_hal_conf.h \
4 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc.h \
5 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h \
6 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h \
7 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h \
8 | ../Drivers/CMSIS/Include/core_cm4.h \
9 | ../Drivers/CMSIS/Include/cmsis_version.h \
10 | ../Drivers/CMSIS/Include/cmsis_compiler.h \
11 | ../Drivers/CMSIS/Include/cmsis_gcc.h \
12 | ../Drivers/CMSIS/Include/mpu_armv7.h \
13 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h \
14 | ../Drivers/STM32G4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \
15 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc_ex.h \
16 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio.h \
17 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio_ex.h \
18 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma.h \
19 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma_ex.h \
20 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_cortex.h \
21 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc.h \
22 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_ll_adc.h \
23 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc_ex.h \
24 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_exti.h \
25 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h \
26 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ex.h \
27 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ramfunc.h \
28 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp.h \
29 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp_ex.h \
30 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr.h \
31 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr_ex.h \
32 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim.h \
33 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim_ex.h \
34 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h \
35 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart_ex.h
36 |
37 | ../Core/Inc/math_tool.h:
38 |
39 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h:
40 |
41 | ../Core/Inc/stm32g4xx_hal_conf.h:
42 |
43 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc.h:
44 |
45 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h:
46 |
47 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h:
48 |
49 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h:
50 |
51 | ../Drivers/CMSIS/Include/core_cm4.h:
52 |
53 | ../Drivers/CMSIS/Include/cmsis_version.h:
54 |
55 | ../Drivers/CMSIS/Include/cmsis_compiler.h:
56 |
57 | ../Drivers/CMSIS/Include/cmsis_gcc.h:
58 |
59 | ../Drivers/CMSIS/Include/mpu_armv7.h:
60 |
61 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h:
62 |
63 | ../Drivers/STM32G4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h:
64 |
65 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc_ex.h:
66 |
67 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio.h:
68 |
69 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio_ex.h:
70 |
71 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma.h:
72 |
73 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma_ex.h:
74 |
75 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_cortex.h:
76 |
77 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc.h:
78 |
79 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_ll_adc.h:
80 |
81 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc_ex.h:
82 |
83 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_exti.h:
84 |
85 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h:
86 |
87 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ex.h:
88 |
89 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ramfunc.h:
90 |
91 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp.h:
92 |
93 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp_ex.h:
94 |
95 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr.h:
96 |
97 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr_ex.h:
98 |
99 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim.h:
100 |
101 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim_ex.h:
102 |
103 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h:
104 |
105 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart_ex.h:
106 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/math_tool.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Src/math_tool.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/math_tool.su:
--------------------------------------------------------------------------------
1 | math_tool.c:10:9:constrain 24 static
2 | math_tool.c:20:7:fconstrain 24 static
3 | math_tool.c:30:10:map 24 static
4 | math_tool.c:40:7:fmap 32 static
5 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/pic.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Src/pic.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/pic.su:
--------------------------------------------------------------------------------
1 | pic.c:13:6:pid_reset 16 static
2 | pic.c:20:7:pid_process_antiwindup_clamp_with_ff 64 static
3 | pic.c:55:7:pid_process_antiwindup_clamp 64 static
4 | pic.c:89:7:pid_process_antiwindup_back_calculation 72 static
5 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/protocol.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Src/protocol.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/protocol.su:
--------------------------------------------------------------------------------
1 | protocol.c:15:10:updateCRC 24 static
2 | protocol.c:88:6:packet_encapsulate 24 static
3 | protocol.c:125:6:instruction_handler 56 static
4 | protocol.c:277:6:packet_handler 24 static
5 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/serial.d:
--------------------------------------------------------------------------------
1 | Core/Src/serial.o: ../Core/Src/serial.c ../Core/Inc/serial.h \
2 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h \
3 | ../Core/Inc/stm32g4xx_hal_conf.h \
4 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc.h \
5 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h \
6 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h \
7 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h \
8 | ../Drivers/CMSIS/Include/core_cm4.h \
9 | ../Drivers/CMSIS/Include/cmsis_version.h \
10 | ../Drivers/CMSIS/Include/cmsis_compiler.h \
11 | ../Drivers/CMSIS/Include/cmsis_gcc.h \
12 | ../Drivers/CMSIS/Include/mpu_armv7.h \
13 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h \
14 | ../Drivers/STM32G4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \
15 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc_ex.h \
16 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio.h \
17 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio_ex.h \
18 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma.h \
19 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma_ex.h \
20 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_cortex.h \
21 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc.h \
22 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_ll_adc.h \
23 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc_ex.h \
24 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_exti.h \
25 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h \
26 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ex.h \
27 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ramfunc.h \
28 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp.h \
29 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp_ex.h \
30 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr.h \
31 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr_ex.h \
32 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim.h \
33 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim_ex.h \
34 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h \
35 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart_ex.h
36 |
37 | ../Core/Inc/serial.h:
38 |
39 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h:
40 |
41 | ../Core/Inc/stm32g4xx_hal_conf.h:
42 |
43 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc.h:
44 |
45 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h:
46 |
47 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h:
48 |
49 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h:
50 |
51 | ../Drivers/CMSIS/Include/core_cm4.h:
52 |
53 | ../Drivers/CMSIS/Include/cmsis_version.h:
54 |
55 | ../Drivers/CMSIS/Include/cmsis_compiler.h:
56 |
57 | ../Drivers/CMSIS/Include/cmsis_gcc.h:
58 |
59 | ../Drivers/CMSIS/Include/mpu_armv7.h:
60 |
61 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h:
62 |
63 | ../Drivers/STM32G4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h:
64 |
65 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc_ex.h:
66 |
67 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio.h:
68 |
69 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio_ex.h:
70 |
71 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma.h:
72 |
73 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma_ex.h:
74 |
75 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_cortex.h:
76 |
77 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc.h:
78 |
79 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_ll_adc.h:
80 |
81 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc_ex.h:
82 |
83 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_exti.h:
84 |
85 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h:
86 |
87 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ex.h:
88 |
89 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ramfunc.h:
90 |
91 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp.h:
92 |
93 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp_ex.h:
94 |
95 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr.h:
96 |
97 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr_ex.h:
98 |
99 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim.h:
100 |
101 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim_ex.h:
102 |
103 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h:
104 |
105 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart_ex.h:
106 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/serial.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Src/serial.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/serial.su:
--------------------------------------------------------------------------------
1 | serial.c:18:6:HAL_UART_ErrorCallback 16 static
2 | serial.c:32:6:HAL_Serial_Init 16 static
3 | serial.c:59:6:HAL_Serial_Init_Half_Duplex 24 static
4 | serial.c:98:5:HAL_Serial_Available 24 static
5 | serial.c:110:6:HAL_Serial_GetChar 32 static
6 | serial.c:127:5:HAL_Serial_Read 32 static
7 | serial.c:145:5:HAL_Serial_Write 40 static
8 | serial.c:197:6:HAL_UART_TxCpltCallback 24 static
9 | serial.c:248:6:ts_itoa 32 static
10 | serial.c:272:5:ts_formatstring 40 static
11 | serial.c:338:5:ts_formatlength 24 static
12 | serial.c:386:5:HAL_Serial_Print 44 dynamic
13 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/stm32g4xx_hal_msp.d:
--------------------------------------------------------------------------------
1 | Core/Src/stm32g4xx_hal_msp.o: ../Core/Src/stm32g4xx_hal_msp.c \
2 | ../Core/Inc/main.h ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h \
3 | ../Core/Inc/stm32g4xx_hal_conf.h \
4 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc.h \
5 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h \
6 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h \
7 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h \
8 | ../Drivers/CMSIS/Include/core_cm4.h \
9 | ../Drivers/CMSIS/Include/cmsis_version.h \
10 | ../Drivers/CMSIS/Include/cmsis_compiler.h \
11 | ../Drivers/CMSIS/Include/cmsis_gcc.h \
12 | ../Drivers/CMSIS/Include/mpu_armv7.h \
13 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h \
14 | ../Drivers/STM32G4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \
15 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc_ex.h \
16 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio.h \
17 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio_ex.h \
18 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma.h \
19 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma_ex.h \
20 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_cortex.h \
21 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc.h \
22 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_ll_adc.h \
23 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc_ex.h \
24 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_exti.h \
25 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h \
26 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ex.h \
27 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ramfunc.h \
28 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp.h \
29 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp_ex.h \
30 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr.h \
31 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr_ex.h \
32 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim.h \
33 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim_ex.h \
34 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h \
35 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart_ex.h
36 |
37 | ../Core/Inc/main.h:
38 |
39 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h:
40 |
41 | ../Core/Inc/stm32g4xx_hal_conf.h:
42 |
43 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc.h:
44 |
45 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h:
46 |
47 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h:
48 |
49 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h:
50 |
51 | ../Drivers/CMSIS/Include/core_cm4.h:
52 |
53 | ../Drivers/CMSIS/Include/cmsis_version.h:
54 |
55 | ../Drivers/CMSIS/Include/cmsis_compiler.h:
56 |
57 | ../Drivers/CMSIS/Include/cmsis_gcc.h:
58 |
59 | ../Drivers/CMSIS/Include/mpu_armv7.h:
60 |
61 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h:
62 |
63 | ../Drivers/STM32G4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h:
64 |
65 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc_ex.h:
66 |
67 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio.h:
68 |
69 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio_ex.h:
70 |
71 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma.h:
72 |
73 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma_ex.h:
74 |
75 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_cortex.h:
76 |
77 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc.h:
78 |
79 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_ll_adc.h:
80 |
81 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc_ex.h:
82 |
83 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_exti.h:
84 |
85 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h:
86 |
87 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ex.h:
88 |
89 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ramfunc.h:
90 |
91 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp.h:
92 |
93 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp_ex.h:
94 |
95 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr.h:
96 |
97 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr_ex.h:
98 |
99 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim.h:
100 |
101 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim_ex.h:
102 |
103 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h:
104 |
105 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart_ex.h:
106 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/stm32g4xx_hal_msp.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Src/stm32g4xx_hal_msp.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/stm32g4xx_hal_msp.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_msp.c:71:6:HAL_MspInit 16 static
2 | stm32g4xx_hal_msp.c:97:6:HAL_ADC_MspInit 48 static
3 | stm32g4xx_hal_msp.c:158:6:HAL_ADC_MspDeInit 16 static
4 | stm32g4xx_hal_msp.c:194:6:HAL_OPAMP_MspInit 40 static
5 | stm32g4xx_hal_msp.c:226:6:HAL_OPAMP_MspDeInit 16 static
6 | stm32g4xx_hal_msp.c:253:6:HAL_TIM_Base_MspInit 24 static
7 | stm32g4xx_hal_msp.c:283:6:HAL_TIM_MspPostInit 40 static
8 | stm32g4xx_hal_msp.c:316:6:HAL_TIM_Base_MspDeInit 16 static
9 | stm32g4xx_hal_msp.c:352:6:HAL_UART_MspInit 48 static
10 | stm32g4xx_hal_msp.c:434:6:HAL_UART_MspDeInit 16 static
11 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/stm32g4xx_it.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Src/stm32g4xx_it.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/stm32g4xx_it.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_it.c:75:6:NMI_Handler 4 static
2 | stm32g4xx_it.c:90:6:HardFault_Handler 4 static
3 | stm32g4xx_it.c:105:6:MemManage_Handler 4 static
4 | stm32g4xx_it.c:120:6:BusFault_Handler 4 static
5 | stm32g4xx_it.c:135:6:UsageFault_Handler 4 static
6 | stm32g4xx_it.c:150:6:SVC_Handler 4 static
7 | stm32g4xx_it.c:163:6:DebugMon_Handler 4 static
8 | stm32g4xx_it.c:176:6:PendSV_Handler 4 static
9 | stm32g4xx_it.c:189:6:SysTick_Handler 8 static
10 | stm32g4xx_it.c:210:6:DMA1_Channel1_IRQHandler 8 static
11 | stm32g4xx_it.c:224:6:DMA1_Channel2_IRQHandler 8 static
12 | stm32g4xx_it.c:238:6:DMA1_Channel3_IRQHandler 8 static
13 | stm32g4xx_it.c:252:6:ADC1_2_IRQHandler 8 static
14 | stm32g4xx_it.c:266:6:TIM4_IRQHandler 8 static
15 | stm32g4xx_it.c:280:6:USART2_IRQHandler 8 static
16 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/syscalls.d:
--------------------------------------------------------------------------------
1 | Core/Src/syscalls.o: ../Core/Src/syscalls.c
2 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/syscalls.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Src/syscalls.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/syscalls.su:
--------------------------------------------------------------------------------
1 | syscalls.c:48:6:initialise_monitor_handles 4 static
2 | syscalls.c:52:5:_getpid 4 static
3 | syscalls.c:57:5:_kill 16 static
4 | syscalls.c:63:6:_exit 16 static
5 | syscalls.c:69:27:_read 32 static
6 | syscalls.c:81:27:_write 32 static
7 | syscalls.c:92:5:_close 16 static
8 | syscalls.c:98:5:_fstat 16 static
9 | syscalls.c:104:5:_isatty 16 static
10 | syscalls.c:109:5:_lseek 24 static
11 | syscalls.c:114:5:_open 12 static
12 | syscalls.c:120:5:_wait 16 static
13 | syscalls.c:126:5:_unlink 16 static
14 | syscalls.c:132:5:_times 16 static
15 | syscalls.c:137:5:_stat 16 static
16 | syscalls.c:143:5:_link 16 static
17 | syscalls.c:149:5:_fork 8 static
18 | syscalls.c:155:5:_execve 24 static
19 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/sysmem.d:
--------------------------------------------------------------------------------
1 | Core/Src/sysmem.o: ../Core/Src/sysmem.c
2 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/sysmem.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Src/sysmem.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/sysmem.su:
--------------------------------------------------------------------------------
1 | sysmem.c:54:7:_sbrk 32 static
2 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/system_stm32g4xx.d:
--------------------------------------------------------------------------------
1 | Core/Src/system_stm32g4xx.o: ../Core/Src/system_stm32g4xx.c \
2 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h \
3 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h \
4 | ../Drivers/CMSIS/Include/core_cm4.h \
5 | ../Drivers/CMSIS/Include/cmsis_version.h \
6 | ../Drivers/CMSIS/Include/cmsis_compiler.h \
7 | ../Drivers/CMSIS/Include/cmsis_gcc.h \
8 | ../Drivers/CMSIS/Include/mpu_armv7.h \
9 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h \
10 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h \
11 | ../Core/Inc/stm32g4xx_hal_conf.h \
12 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc.h \
13 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h \
14 | ../Drivers/STM32G4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \
15 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc_ex.h \
16 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio.h \
17 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio_ex.h \
18 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma.h \
19 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma_ex.h \
20 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_cortex.h \
21 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc.h \
22 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_ll_adc.h \
23 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc_ex.h \
24 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_exti.h \
25 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h \
26 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ex.h \
27 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ramfunc.h \
28 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp.h \
29 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp_ex.h \
30 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr.h \
31 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr_ex.h \
32 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim.h \
33 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim_ex.h \
34 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h \
35 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart_ex.h
36 |
37 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h:
38 |
39 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h:
40 |
41 | ../Drivers/CMSIS/Include/core_cm4.h:
42 |
43 | ../Drivers/CMSIS/Include/cmsis_version.h:
44 |
45 | ../Drivers/CMSIS/Include/cmsis_compiler.h:
46 |
47 | ../Drivers/CMSIS/Include/cmsis_gcc.h:
48 |
49 | ../Drivers/CMSIS/Include/mpu_armv7.h:
50 |
51 | ../Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h:
52 |
53 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h:
54 |
55 | ../Core/Inc/stm32g4xx_hal_conf.h:
56 |
57 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc.h:
58 |
59 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h:
60 |
61 | ../Drivers/STM32G4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h:
62 |
63 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc_ex.h:
64 |
65 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio.h:
66 |
67 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio_ex.h:
68 |
69 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma.h:
70 |
71 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma_ex.h:
72 |
73 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_cortex.h:
74 |
75 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc.h:
76 |
77 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_ll_adc.h:
78 |
79 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc_ex.h:
80 |
81 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_exti.h:
82 |
83 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h:
84 |
85 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ex.h:
86 |
87 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ramfunc.h:
88 |
89 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp.h:
90 |
91 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp_ex.h:
92 |
93 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr.h:
94 |
95 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr_ex.h:
96 |
97 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim.h:
98 |
99 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim_ex.h:
100 |
101 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h:
102 |
103 | ../Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart_ex.h:
104 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/system_stm32g4xx.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Src/system_stm32g4xx.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Src/system_stm32g4xx.su:
--------------------------------------------------------------------------------
1 | system_stm32g4xx.c:162:6:SystemInit 4 static
2 | system_stm32g4xx.c:213:6:SystemCoreClockUpdate 32 static
3 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Startup/startup_stm32g431kbtx.d:
--------------------------------------------------------------------------------
1 | Core/Startup/startup_stm32g431kbtx.o: \
2 | ../Core/Startup/startup_stm32g431kbtx.s
3 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Startup/startup_stm32g431kbtx.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Core/Startup/startup_stm32g431kbtx.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Core/Startup/subdir.mk:
--------------------------------------------------------------------------------
1 | ################################################################################
2 | # Automatically-generated file. Do not edit!
3 | ################################################################################
4 |
5 | # Add inputs and outputs from these tool invocations to the build variables
6 | S_SRCS += \
7 | ../Core/Startup/startup_stm32g431kbtx.s
8 |
9 | OBJS += \
10 | ./Core/Startup/startup_stm32g431kbtx.o
11 |
12 | S_DEPS += \
13 | ./Core/Startup/startup_stm32g431kbtx.d
14 |
15 |
16 | # Each subdirectory must supply rules for building sources it contributes
17 | Core/Startup/startup_stm32g431kbtx.o: ../Core/Startup/startup_stm32g431kbtx.s
18 | arm-none-eabi-gcc -mcpu=cortex-m4 -g3 -c -x assembler-with-cpp -MMD -MP -MF"Core/Startup/startup_stm32g431kbtx.d" -MT"$@" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "$@" "$<"
19 |
20 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal.c:149:19:HAL_Init 16 static
2 | stm32g4xx_hal.c:193:19:HAL_DeInit 8 static
3 | stm32g4xx_hal.c:222:13:HAL_MspInit 4 static
4 | stm32g4xx_hal.c:233:13:HAL_MspDeInit 4 static
5 | stm32g4xx_hal.c:256:26:HAL_InitTick 24 static
6 | stm32g4xx_hal.c:323:13:HAL_IncTick 4 static
7 | stm32g4xx_hal.c:334:17:HAL_GetTick 4 static
8 | stm32g4xx_hal.c:343:10:HAL_GetTickPrio 4 static
9 | stm32g4xx_hal.c:352:19:HAL_SetTickFreq 24 static
10 | stm32g4xx_hal.c:384:10:HAL_GetTickFreq 4 static
11 | stm32g4xx_hal.c:400:13:HAL_Delay 24 static
12 | stm32g4xx_hal.c:426:13:HAL_SuspendTick 4 static
13 | stm32g4xx_hal.c:442:13:HAL_ResumeTick 4 static
14 | stm32g4xx_hal.c:452:10:HAL_GetHalVersion 4 static
15 | stm32g4xx_hal.c:461:10:HAL_GetREVID 4 static
16 | stm32g4xx_hal.c:470:10:HAL_GetDEVID 4 static
17 | stm32g4xx_hal.c:499:6:HAL_DBGMCU_EnableDBGSleepMode 4 static
18 | stm32g4xx_hal.c:508:6:HAL_DBGMCU_DisableDBGSleepMode 4 static
19 | stm32g4xx_hal.c:517:6:HAL_DBGMCU_EnableDBGStopMode 4 static
20 | stm32g4xx_hal.c:526:6:HAL_DBGMCU_DisableDBGStopMode 4 static
21 | stm32g4xx_hal.c:535:6:HAL_DBGMCU_EnableDBGStandbyMode 4 static
22 | stm32g4xx_hal.c:544:6:HAL_DBGMCU_DisableDBGStandbyMode 4 static
23 | stm32g4xx_hal.c:577:6:HAL_SYSCFG_CCMSRAMErase 4 static
24 | stm32g4xx_hal.c:596:6:HAL_SYSCFG_EnableMemorySwappingBank 4 static
25 | stm32g4xx_hal.c:611:6:HAL_SYSCFG_DisableMemorySwappingBank 4 static
26 | stm32g4xx_hal.c:629:6:HAL_SYSCFG_VREFBUF_VoltageScalingConfig 16 static
27 | stm32g4xx_hal.c:645:6:HAL_SYSCFG_VREFBUF_HighImpedanceConfig 16 static
28 | stm32g4xx_hal.c:659:6:HAL_SYSCFG_VREFBUF_TrimmingConfig 16 static
29 | stm32g4xx_hal.c:671:19:HAL_SYSCFG_EnableVREFBUF 16 static
30 | stm32g4xx_hal.c:697:6:HAL_SYSCFG_DisableVREFBUF 4 static
31 | stm32g4xx_hal.c:708:6:HAL_SYSCFG_EnableIOSwitchBooster 4 static
32 | stm32g4xx_hal.c:718:6:HAL_SYSCFG_DisableIOSwitchBooster 4 static
33 | stm32g4xx_hal.c:728:6:HAL_SYSCFG_EnableIOSwitchVDD 4 static
34 | stm32g4xx_hal.c:738:6:HAL_SYSCFG_DisableIOSwitchVDD 4 static
35 | stm32g4xx_hal.c:749:6:HAL_SYSCFG_CCMSRAM_WriteProtectionEnable 16 static
36 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_adc.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_adc.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_adc.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_ll_adc.h:2729:22:LL_ADC_SetCommonClock 16 static
2 | stm32g4xx_ll_adc.h:2793:22:LL_ADC_SetCommonPathInternalCh 16 static
3 | stm32g4xx_ll_adc.h:2874:26:LL_ADC_GetCommonPathInternalCh 16 static
4 | stm32g4xx_ll_adc.h:3215:22:LL_ADC_SetOffset 32 static
5 | stm32g4xx_ll_adc.h:3298:26:LL_ADC_GetOffsetChannel 24 static
6 | stm32g4xx_ll_adc.h:3357:22:LL_ADC_SetOffsetState 32 static
7 | stm32g4xx_ll_adc.h:3412:22:LL_ADC_SetOffsetSign 32 static
8 | stm32g4xx_ll_adc.h:3467:22:LL_ADC_SetOffsetSaturation 32 static
9 | stm32g4xx_ll_adc.h:3555:22:LL_ADC_SetSamplingTimeCommonConfig 16 static
10 | stm32g4xx_ll_adc.h:3742:26:LL_ADC_REG_IsTriggerSourceSWStart 16 static
11 | stm32g4xx_ll_adc.h:4086:22:LL_ADC_REG_SetSequencerRanks 32 static
12 | stm32g4xx_ll_adc.h:4529:26:LL_ADC_INJ_IsTriggerSourceSWStart 16 static
13 | stm32g4xx_ll_adc.h:5325:22:LL_ADC_SetChannelSamplingTime 32 static
14 | stm32g4xx_ll_adc.h:5490:22:LL_ADC_SetChannelSingleDiff 24 static
15 | stm32g4xx_ll_adc.h:5712:22:LL_ADC_SetAnalogWDMonitChannels 32 static
16 | stm32g4xx_ll_adc.h:5952:22:LL_ADC_ConfigAnalogWDThresholds 32 static
17 | stm32g4xx_ll_adc.h:6377:26:LL_ADC_GetMultimode 16 static
18 | stm32g4xx_ll_adc.h:6474:26:LL_ADC_GetMultiDMATransfer 16 static
19 | stm32g4xx_ll_adc.h:6591:22:LL_ADC_DisableDeepPowerDown 16 static
20 | stm32g4xx_ll_adc.h:6605:26:LL_ADC_IsDeepPowerDownEnabled 16 static
21 | stm32g4xx_ll_adc.h:6624:22:LL_ADC_EnableInternalRegulator 16 static
22 | stm32g4xx_ll_adc.h:6654:26:LL_ADC_IsInternalRegulatorEnabled 16 static
23 | stm32g4xx_ll_adc.h:6675:22:LL_ADC_Enable 16 static
24 | stm32g4xx_ll_adc.h:6695:22:LL_ADC_Disable 16 static
25 | stm32g4xx_ll_adc.h:6714:26:LL_ADC_IsEnabled 16 static
26 | stm32g4xx_ll_adc.h:6725:26:LL_ADC_IsDisableOngoing 16 static
27 | stm32g4xx_ll_adc.h:6800:22:LL_ADC_REG_StartConversion 16 static
28 | stm32g4xx_ll_adc.h:6820:22:LL_ADC_REG_StopConversion 16 static
29 | stm32g4xx_ll_adc.h:6836:26:LL_ADC_REG_IsConversionOngoing 16 static
30 | stm32g4xx_ll_adc.h:7045:22:LL_ADC_INJ_StopConversion 16 static
31 | stm32g4xx_ll_adc.h:7061:26:LL_ADC_INJ_IsConversionOngoing 16 static
32 | stm32g4xx_ll_adc.h:7440:22:LL_ADC_ClearFlag_AWD1 16 static
33 | stm32g4xx_ll_adc.h:7451:22:LL_ADC_ClearFlag_AWD2 16 static
34 | stm32g4xx_ll_adc.h:7462:22:LL_ADC_ClearFlag_AWD3 16 static
35 | stm32g4xx_ll_adc.h:7835:22:LL_ADC_EnableIT_AWD1 16 static
36 | stm32g4xx_ll_adc.h:7846:22:LL_ADC_EnableIT_AWD2 16 static
37 | stm32g4xx_ll_adc.h:7857:22:LL_ADC_EnableIT_AWD3 16 static
38 | stm32g4xx_ll_adc.h:7956:22:LL_ADC_DisableIT_AWD1 16 static
39 | stm32g4xx_ll_adc.h:7967:22:LL_ADC_DisableIT_AWD2 16 static
40 | stm32g4xx_ll_adc.h:7978:22:LL_ADC_DisableIT_AWD3 16 static
41 | stm32g4xx_hal_adc.c:404:19:HAL_ADC_Init 48 static
42 | stm32g4xx_hal_adc.c:723:19:HAL_ADC_DeInit 32 static
43 | stm32g4xx_hal_adc.c:925:13:HAL_ADC_MspInit 16 static
44 | stm32g4xx_hal_adc.c:942:13:HAL_ADC_MspDeInit 16 static
45 | stm32g4xx_hal_adc.c:1231:19:HAL_ADC_Start 32 static
46 | stm32g4xx_hal_adc.c:1366:19:HAL_ADC_Stop 24 static
47 | stm32g4xx_hal_adc.c:1420:19:HAL_ADC_PollForConversion 40 static
48 | stm32g4xx_hal_adc.c:1599:19:HAL_ADC_PollForEvent 32 static
49 | stm32g4xx_hal_adc.c:1744:19:HAL_ADC_Start_IT 32 static
50 | stm32g4xx_hal_adc.c:1951:19:HAL_ADC_Stop_IT 24 static
51 | stm32g4xx_hal_adc.c:2004:19:HAL_ADC_Start_DMA 32 static
52 | stm32g4xx_hal_adc.c:2145:19:HAL_ADC_Stop_DMA 24 static
53 | stm32g4xx_hal_adc.c:2230:10:HAL_ADC_GetValue 16 static
54 | stm32g4xx_hal_adc.c:2251:19:HAL_ADC_StartSampling 16 static
55 | stm32g4xx_hal_adc.c:2273:19:HAL_ADC_StopSampling 16 static
56 | stm32g4xx_hal_adc.c:2290:6:HAL_ADC_IRQHandler 48 static
57 | stm32g4xx_hal_adc.c:2660:13:HAL_ADC_ConvCpltCallback 16 static
58 | stm32g4xx_hal_adc.c:2675:13:HAL_ADC_ConvHalfCpltCallback 16 static
59 | stm32g4xx_hal_adc.c:2690:13:HAL_ADC_LevelOutOfWindowCallback 16 static
60 | stm32g4xx_hal_adc.c:2712:13:HAL_ADC_ErrorCallback 16 static
61 | stm32g4xx_hal_adc.c:2758:19:HAL_ADC_ConfigChannel 224 static,ignoring_inline_asm
62 | stm32g4xx_hal_adc.c:2987:19:HAL_ADC_AnalogWDGConfig 64 static,ignoring_inline_asm
63 | stm32g4xx_hal_adc.c:3242:10:HAL_ADC_GetState 16 static
64 | stm32g4xx_hal_adc.c:3256:10:HAL_ADC_GetError 16 static
65 | stm32g4xx_hal_adc.c:3286:19:ADC_ConversionStop 40 static
66 | stm32g4xx_hal_adc.c:3416:19:ADC_Enable 24 static
67 | stm32g4xx_hal_adc.c:3483:19:ADC_Disable 24 static
68 | stm32g4xx_hal_adc.c:3541:6:ADC_DMAConvCplt 24 static
69 | stm32g4xx_hal_adc.c:3619:6:ADC_DMAHalfConvCplt 24 static
70 | stm32g4xx_hal_adc.c:3637:6:ADC_DMAError 24 static
71 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_adc_ex.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_adc_ex.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_adc_ex.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_ll_adc.h:2793:22:LL_ADC_SetCommonPathInternalCh 16 static
2 | stm32g4xx_ll_adc.h:2874:26:LL_ADC_GetCommonPathInternalCh 16 static
3 | stm32g4xx_ll_adc.h:2918:22:LL_ADC_SetCalibrationFactor 24 static
4 | stm32g4xx_ll_adc.h:2941:26:LL_ADC_GetCalibrationFactor 16 static
5 | stm32g4xx_ll_adc.h:3215:22:LL_ADC_SetOffset 32 static
6 | stm32g4xx_ll_adc.h:3298:26:LL_ADC_GetOffsetChannel 24 static
7 | stm32g4xx_ll_adc.h:3357:22:LL_ADC_SetOffsetState 32 static
8 | stm32g4xx_ll_adc.h:3412:22:LL_ADC_SetOffsetSign 32 static
9 | stm32g4xx_ll_adc.h:3467:22:LL_ADC_SetOffsetSaturation 32 static
10 | stm32g4xx_ll_adc.h:3555:22:LL_ADC_SetSamplingTimeCommonConfig 16 static
11 | stm32g4xx_ll_adc.h:3742:26:LL_ADC_REG_IsTriggerSourceSWStart 16 static
12 | stm32g4xx_ll_adc.h:4529:26:LL_ADC_INJ_IsTriggerSourceSWStart 16 static
13 | stm32g4xx_ll_adc.h:4853:26:LL_ADC_INJ_GetTrigAuto 16 static
14 | stm32g4xx_ll_adc.h:4899:22:LL_ADC_INJ_SetQueueMode 16 static
15 | stm32g4xx_ll_adc.h:5325:22:LL_ADC_SetChannelSamplingTime 32 static
16 | stm32g4xx_ll_adc.h:5490:22:LL_ADC_SetChannelSingleDiff 24 static
17 | stm32g4xx_ll_adc.h:6377:26:LL_ADC_GetMultimode 16 static
18 | stm32g4xx_ll_adc.h:6568:22:LL_ADC_EnableDeepPowerDown 16 static
19 | stm32g4xx_ll_adc.h:6643:22:LL_ADC_DisableInternalRegulator 16 static
20 | stm32g4xx_ll_adc.h:6714:26:LL_ADC_IsEnabled 16 static
21 | stm32g4xx_ll_adc.h:6753:22:LL_ADC_StartCalibration 16 static
22 | stm32g4xx_ll_adc.h:6769:26:LL_ADC_IsCalibrationOnGoing 16 static
23 | stm32g4xx_ll_adc.h:6800:22:LL_ADC_REG_StartConversion 16 static
24 | stm32g4xx_ll_adc.h:6836:26:LL_ADC_REG_IsConversionOngoing 16 static
25 | stm32g4xx_ll_adc.h:7025:22:LL_ADC_INJ_StartConversion 16 static
26 | stm32g4xx_ll_adc.h:7061:26:LL_ADC_INJ_IsConversionOngoing 16 static
27 | stm32g4xx_hal_adc_ex.c:136:19:HAL_ADCEx_Calibration_Start 24 static
28 | stm32g4xx_hal_adc_ex.c:210:10:HAL_ADCEx_Calibration_GetValue 16 static
29 | stm32g4xx_hal_adc_ex.c:230:19:HAL_ADCEx_Calibration_SetValue 40 static
30 | stm32g4xx_hal_adc_ex.c:286:19:HAL_ADCEx_InjectedStart 32 static
31 | stm32g4xx_hal_adc_ex.c:435:19:HAL_ADCEx_InjectedStop 24 static
32 | stm32g4xx_hal_adc_ex.c:490:19:HAL_ADCEx_InjectedPollForConversion 48 static
33 | stm32g4xx_hal_adc_ex.c:627:19:HAL_ADCEx_InjectedStart_IT 32 static
34 | stm32g4xx_hal_adc_ex.c:800:19:HAL_ADCEx_InjectedStop_IT 24 static
35 | stm32g4xx_hal_adc_ex.c:867:19:HAL_ADCEx_MultiModeStart_DMA 144 static
36 | stm32g4xx_hal_adc_ex.c:982:19:HAL_ADCEx_MultiModeStop_DMA 144 static
37 | stm32g4xx_hal_adc_ex.c:1095:10:HAL_ADCEx_MultiModeGetValue 24 static
38 | stm32g4xx_hal_adc_ex.c:1142:10:HAL_ADCEx_InjectedGetValue 24 static
39 | stm32g4xx_hal_adc_ex.c:1177:13:HAL_ADCEx_InjectedConvCpltCallback 16 static
40 | stm32g4xx_hal_adc_ex.c:1196:13:HAL_ADCEx_InjectedQueueOverflowCallback 16 static
41 | stm32g4xx_hal_adc_ex.c:1211:13:HAL_ADCEx_LevelOutOfWindow2Callback 16 static
42 | stm32g4xx_hal_adc_ex.c:1226:13:HAL_ADCEx_LevelOutOfWindow3Callback 16 static
43 | stm32g4xx_hal_adc_ex.c:1242:13:HAL_ADCEx_EndOfSamplingCallback 16 static
44 | stm32g4xx_hal_adc_ex.c:1259:19:HAL_ADCEx_RegularStop 24 static
45 | stm32g4xx_hal_adc_ex.c:1317:19:HAL_ADCEx_RegularStop_IT 24 static
46 | stm32g4xx_hal_adc_ex.c:1377:19:HAL_ADCEx_RegularStop_DMA 24 static
47 | stm32g4xx_hal_adc_ex.c:1464:19:HAL_ADCEx_RegularMultiModeStop_DMA 136 static
48 | stm32g4xx_hal_adc_ex.c:1638:19:HAL_ADCEx_InjectedConfigChannel 224 static,ignoring_inline_asm
49 | stm32g4xx_hal_adc_ex.c:2079:19:HAL_ADCEx_MultiModeConfigChannel 144 static
50 | stm32g4xx_hal_adc_ex.c:2192:19:HAL_ADCEx_EnableInjectedQueue 32 static
51 | stm32g4xx_hal_adc_ex.c:2233:19:HAL_ADCEx_DisableInjectedQueue 32 static
52 | stm32g4xx_hal_adc_ex.c:2270:19:HAL_ADCEx_DisableVoltageRegulator 24 static
53 | stm32g4xx_hal_adc_ex.c:2307:19:HAL_ADCEx_EnterADCDeepPowerDownMode 24 static
54 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_cortex.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_cortex.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_cortex.su:
--------------------------------------------------------------------------------
1 | core_cm4.h:1648:22:__NVIC_SetPriorityGrouping 24 static
2 | core_cm4.h:1667:26:__NVIC_GetPriorityGrouping 4 static
3 | core_cm4.h:1679:22:__NVIC_EnableIRQ 16 static,ignoring_inline_asm
4 | core_cm4.h:1717:22:__NVIC_DisableIRQ 16 static,ignoring_inline_asm
5 | core_cm4.h:1736:26:__NVIC_GetPendingIRQ 16 static
6 | core_cm4.h:1755:22:__NVIC_SetPendingIRQ 16 static
7 | core_cm4.h:1770:22:__NVIC_ClearPendingIRQ 16 static
8 | core_cm4.h:1787:26:__NVIC_GetActive 16 static
9 | core_cm4.h:1809:22:__NVIC_SetPriority 16 static
10 | core_cm4.h:1831:26:__NVIC_GetPriority 16 static
11 | core_cm4.h:1856:26:NVIC_EncodePriority 40 static
12 | core_cm4.h:1883:22:NVIC_DecodePriority 40 static
13 | core_cm4.h:1933:34:__NVIC_SystemReset 4 static,ignoring_inline_asm
14 | core_cm4.h:2017:26:SysTick_Config 16 static
15 | stm32g4xx_hal_cortex.c:164:6:HAL_NVIC_SetPriorityGrouping 16 static
16 | stm32g4xx_hal_cortex.c:186:6:HAL_NVIC_SetPriority 32 static
17 | stm32g4xx_hal_cortex.c:208:6:HAL_NVIC_EnableIRQ 16 static
18 | stm32g4xx_hal_cortex.c:224:6:HAL_NVIC_DisableIRQ 16 static
19 | stm32g4xx_hal_cortex.c:237:6:HAL_NVIC_SystemReset 8 static
20 | stm32g4xx_hal_cortex.c:250:10:HAL_SYSTICK_Config 16 static
21 | stm32g4xx_hal_cortex.c:278:10:HAL_NVIC_GetPriorityGrouping 8 static
22 | stm32g4xx_hal_cortex.c:305:6:HAL_NVIC_GetPriority 24 static
23 | stm32g4xx_hal_cortex.c:320:6:HAL_NVIC_SetPendingIRQ 16 static
24 | stm32g4xx_hal_cortex.c:338:10:HAL_NVIC_GetPendingIRQ 16 static
25 | stm32g4xx_hal_cortex.c:354:6:HAL_NVIC_ClearPendingIRQ 16 static
26 | stm32g4xx_hal_cortex.c:371:10:HAL_NVIC_GetActive 16 static
27 | stm32g4xx_hal_cortex.c:385:6:HAL_SYSTICK_CLKSourceConfig 16 static
28 | stm32g4xx_hal_cortex.c:403:6:HAL_SYSTICK_IRQHandler 8 static
29 | stm32g4xx_hal_cortex.c:412:13:HAL_SYSTICK_Callback 4 static
30 | stm32g4xx_hal_cortex.c:431:6:HAL_MPU_Enable 16 static,ignoring_inline_asm
31 | stm32g4xx_hal_cortex.c:446:6:HAL_MPU_Disable 4 static,ignoring_inline_asm
32 | stm32g4xx_hal_cortex.c:462:6:HAL_MPU_ConfigRegion 16 static
33 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dma.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dma.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dma.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_dma.c:152:19:HAL_DMA_Init 24 static
2 | stm32g4xx_hal_dma.c:263:19:HAL_DMA_DeInit 16 static
3 | stm32g4xx_hal_dma.c:378:19:HAL_DMA_Start 32 static
4 | stm32g4xx_hal_dma.c:421:19:HAL_DMA_Start_IT 32 static
5 | stm32g4xx_hal_dma.c:491:19:HAL_DMA_Abort 24 static
6 | stm32g4xx_hal_dma.c:544:19:HAL_DMA_Abort_IT 24 static
7 | stm32g4xx_hal_dma.c:611:19:HAL_DMA_PollForTransfer 32 static
8 | stm32g4xx_hal_dma.c:741:6:HAL_DMA_IRQHandler 24 static
9 | stm32g4xx_hal_dma.c:835:19:HAL_DMA_RegisterCallback 32 static
10 | stm32g4xx_hal_dma.c:886:19:HAL_DMA_UnRegisterCallback 24 static
11 | stm32g4xx_hal_dma.c:964:22:HAL_DMA_GetState 16 static
12 | stm32g4xx_hal_dma.c:976:10:HAL_DMA_GetError 16 static
13 | stm32g4xx_hal_dma.c:1002:13:DMA_SetConfig 24 static
14 | stm32g4xx_hal_dma.c:1045:13:DMA_CalcDMAMUXChannelBaseAndMask 32 static
15 | stm32g4xx_hal_dma.c:1082:13:DMA_CalcDMAMUXRequestGenBaseAndMask 24 static
16 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dma_ex.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dma_ex.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dma_ex.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_dma_ex.c:96:19:HAL_DMAEx_ConfigMuxSync 16 static
2 | stm32g4xx_hal_dma_ex.c:142:19:HAL_DMAEx_ConfigMuxRequestGenerator 32 static,ignoring_inline_asm
3 | stm32g4xx_hal_dma_ex.c:182:19:HAL_DMAEx_EnableMuxRequestGenerator 16 static
4 | stm32g4xx_hal_dma_ex.c:210:19:HAL_DMAEx_DisableMuxRequestGenerator 16 static
5 | stm32g4xx_hal_dma_ex.c:238:6:HAL_DMAEx_MUX_IRQHandler 16 static
6 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_exti.c:145:19:HAL_EXTI_SetConfigLine 40 static
2 | stm32g4xx_hal_exti.c:269:19:HAL_EXTI_GetConfigLine 40 static
3 | stm32g4xx_hal_exti.c:374:19:HAL_EXTI_ClearConfigLine 40 static
4 | stm32g4xx_hal_exti.c:442:19:HAL_EXTI_RegisterCallback 32 static
5 | stm32g4xx_hal_exti.c:473:19:HAL_EXTI_GetHandle 16 static
6 | stm32g4xx_hal_exti.c:514:6:HAL_EXTI_IRQHandler 32 static
7 | stm32g4xx_hal_exti.c:549:10:HAL_EXTI_GetPending 40 static
8 | stm32g4xx_hal_exti.c:584:6:HAL_EXTI_ClearPending 32 static
9 | stm32g4xx_hal_exti.c:613:6:HAL_EXTI_GenerateSWI 32 static
10 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_flash.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_flash.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_flash.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_flash.c:174:19:HAL_FLASH_Program 32 static
2 | stm32g4xx_hal_flash.c:242:19:HAL_FLASH_Program_IT 32 static
3 | stm32g4xx_hal_flash.c:302:6:HAL_FLASH_IRQHandler 24 static
4 | stm32g4xx_hal_flash.c:442:13:HAL_FLASH_EndOfOperationCallback 16 static
5 | stm32g4xx_hal_flash.c:460:13:HAL_FLASH_OperationErrorCallback 16 static
6 | stm32g4xx_hal_flash.c:493:19:HAL_FLASH_Unlock 16 static
7 | stm32g4xx_hal_flash.c:517:19:HAL_FLASH_Lock 16 static
8 | stm32g4xx_hal_flash.c:537:19:HAL_FLASH_OB_Unlock 16 static
9 | stm32g4xx_hal_flash.c:561:19:HAL_FLASH_OB_Lock 16 static
10 | stm32g4xx_hal_flash.c:581:19:HAL_FLASH_OB_Launch 8 static
11 | stm32g4xx_hal_flash.c:629:10:HAL_FLASH_GetError 4 static
12 | stm32g4xx_hal_flash.c:653:19:FLASH_WaitForLastOperation 24 static
13 | stm32g4xx_hal_flash.c:700:13:FLASH_Program_DoubleWord 24 static,ignoring_inline_asm
14 | stm32g4xx_hal_flash.c:725:13:FLASH_Program_Fast 40 static,ignoring_inline_asm
15 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_flash_ex.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_flash_ex.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_flash_ex.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_flash_ex.c:139:19:HAL_FLASHEx_Erase 24 static
2 | stm32g4xx_hal_flash_ex.c:241:19:HAL_FLASHEx_Erase_IT 24 static
3 | stm32g4xx_hal_flash_ex.c:317:19:HAL_FLASHEx_OBProgram 24 static
4 | stm32g4xx_hal_flash_ex.c:406:6:HAL_FLASHEx_OBGetConfig 16 static
5 | stm32g4xx_hal_flash_ex.c:466:19:HAL_FLASHEx_EnableSecMemProtection 16 static
6 | stm32g4xx_hal_flash_ex.c:500:6:HAL_FLASHEx_EnableDebugger 4 static
7 | stm32g4xx_hal_flash_ex.c:512:6:HAL_FLASHEx_DisableDebugger 4 static
8 | stm32g4xx_hal_flash_ex.c:540:13:FLASH_MassErase 16 static
9 | stm32g4xx_hal_flash_ex.c:585:6:FLASH_PageErase 16 static
10 | stm32g4xx_hal_flash_ex.c:620:6:FLASH_FlushCaches 16 static
11 | stm32g4xx_hal_flash_ex.c:672:26:FLASH_OB_WRPConfig 32 static
12 | stm32g4xx_hal_flash_ex.c:737:26:FLASH_OB_RDPConfig 24 static
13 | stm32g4xx_hal_flash_ex.c:784:26:FLASH_OB_UserConfig 32 static
14 | stm32g4xx_hal_flash_ex.c:990:26:FLASH_OB_PCROPConfig 40 static
15 | stm32g4xx_hal_flash_ex.c:1108:26:FLASH_OB_SecMemConfig 24 static
16 | stm32g4xx_hal_flash_ex.c:1161:26:FLASH_OB_BootLockConfig 24 static
17 | stm32g4xx_hal_flash_ex.c:1196:13:FLASH_OB_GetSecMem 16 static
18 | stm32g4xx_hal_flash_ex.c:1222:17:FLASH_OB_GetBootLock 4 static
19 | stm32g4xx_hal_flash_ex.c:1241:13:FLASH_OB_GetWRP 24 static
20 | stm32g4xx_hal_flash_ex.c:1280:17:FLASH_OB_GetRDP 16 static
21 | stm32g4xx_hal_flash_ex.c:1308:17:FLASH_OB_GetUser 16 static
22 | stm32g4xx_hal_flash_ex.c:1327:13:FLASH_OB_GetPCROP 32 static
23 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_flash_ramfunc.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_flash_ramfunc.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_flash_ramfunc.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_flash_ramfunc.c:93:30:HAL_FLASHEx_EnableRunPowerDown 4 static
2 | stm32g4xx_hal_flash_ramfunc.c:107:30:HAL_FLASHEx_DisableRunPowerDown 4 static
3 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_gpio.c:170:6:HAL_GPIO_Init 32 static
2 | stm32g4xx_hal_gpio.c:295:6:HAL_GPIO_DeInit 32 static
3 | stm32g4xx_hal_gpio.c:376:15:HAL_GPIO_ReadPin 24 static
4 | stm32g4xx_hal_gpio.c:410:6:HAL_GPIO_WritePin 16 static
5 | stm32g4xx_hal_gpio.c:433:6:HAL_GPIO_TogglePin 24 static
6 | stm32g4xx_hal_gpio.c:458:19:HAL_GPIO_LockPin 24 static
7 | stm32g4xx_hal_gpio.c:493:6:HAL_GPIO_EXTI_IRQHandler 16 static
8 | stm32g4xx_hal_gpio.c:508:13:HAL_GPIO_EXTI_Callback 16 static
9 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_opamp.c:286:19:HAL_OPAMP_Init 24 static
2 | stm32g4xx_hal_opamp.c:452:19:HAL_OPAMP_DeInit 24 static
3 | stm32g4xx_hal_opamp.c:516:13:HAL_OPAMP_MspInit 16 static
4 | stm32g4xx_hal_opamp.c:533:13:HAL_OPAMP_MspDeInit 16 static
5 | stm32g4xx_hal_opamp.c:570:19:HAL_OPAMP_Start 24 static
6 | stm32g4xx_hal_opamp.c:613:19:HAL_OPAMP_Stop 24 static
7 | stm32g4xx_hal_opamp.c:664:19:HAL_OPAMP_SelfCalibrate 32 static
8 | stm32g4xx_hal_opamp.c:866:19:HAL_OPAMP_Lock 24 static
9 | stm32g4xx_hal_opamp.c:905:19:HAL_OPAMP_LockTimerMux 24 static
10 | stm32g4xx_hal_opamp.c:960:24:HAL_OPAMP_GetState 16 static
11 | stm32g4xx_hal_opamp.c:982:28:HAL_OPAMP_GetTrimOffset 32 static
12 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp_ex.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp_ex.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp_ex.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_opamp_ex.c:89:19:HAL_OPAMPEx_SelfCalibrateAll 56 static
2 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pwr.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pwr.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pwr.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_pwr.c:87:6:HAL_PWR_DeInit 4 static
2 | stm32g4xx_hal_pwr.c:105:6:HAL_PWR_EnableBkUpAccess 4 static
3 | stm32g4xx_hal_pwr.c:115:6:HAL_PWR_DisableBkUpAccess 4 static
4 | stm32g4xx_hal_pwr.c:309:19:HAL_PWR_ConfigPVD 16 static
5 | stm32g4xx_hal_pwr.c:355:6:HAL_PWR_EnablePVD 4 static
6 | stm32g4xx_hal_pwr.c:364:6:HAL_PWR_DisablePVD 4 static
7 | stm32g4xx_hal_pwr.c:389:6:HAL_PWR_EnableWakeUpPin 16 static
8 | stm32g4xx_hal_pwr.c:410:6:HAL_PWR_DisableWakeUpPin 16 static
9 | stm32g4xx_hal_pwr.c:442:6:HAL_PWR_EnterSLEEPMode 16 static,ignoring_inline_asm
10 | stm32g4xx_hal_pwr.c:517:6:HAL_PWR_EnterSTOPMode 16 static
11 | stm32g4xx_hal_pwr.c:550:6:HAL_PWR_EnterSTANDBYMode 4 static,ignoring_inline_asm
12 | stm32g4xx_hal_pwr.c:576:6:HAL_PWR_EnableSleepOnExit 4 static
13 | stm32g4xx_hal_pwr.c:589:6:HAL_PWR_DisableSleepOnExit 4 static
14 | stm32g4xx_hal_pwr.c:603:6:HAL_PWR_EnableSEVOnPend 4 static
15 | stm32g4xx_hal_pwr.c:616:6:HAL_PWR_DisableSEVOnPend 4 static
16 | stm32g4xx_hal_pwr.c:630:13:HAL_PWR_PVDCallback 4 static
17 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pwr_ex.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pwr_ex.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pwr_ex.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_pwr_ex.c:110:10:HAL_PWREx_GetVoltageRange 4 static
2 | stm32g4xx_hal_pwr_ex.c:154:19:HAL_PWREx_ControlVoltageScaling 24 static
3 | stm32g4xx_hal_pwr_ex.c:239:6:HAL_PWREx_EnableBatteryCharging 16 static
4 | stm32g4xx_hal_pwr_ex.c:255:6:HAL_PWREx_DisableBatteryCharging 4 static
5 | stm32g4xx_hal_pwr_ex.c:265:6:HAL_PWREx_EnableInternalWakeUpLine 4 static
6 | stm32g4xx_hal_pwr_ex.c:275:6:HAL_PWREx_DisableInternalWakeUpLine 4 static
7 | stm32g4xx_hal_pwr_ex.c:303:19:HAL_PWREx_EnableGPIOPullUp 24 static
8 | stm32g4xx_hal_pwr_ex.c:364:19:HAL_PWREx_DisableGPIOPullUp 24 static
9 | stm32g4xx_hal_pwr_ex.c:425:19:HAL_PWREx_EnableGPIOPullDown 24 static
10 | stm32g4xx_hal_pwr_ex.c:486:19:HAL_PWREx_DisableGPIOPullDown 24 static
11 | stm32g4xx_hal_pwr_ex.c:536:6:HAL_PWREx_EnablePullUpPullDownConfig 4 static
12 | stm32g4xx_hal_pwr_ex.c:548:6:HAL_PWREx_DisablePullUpPullDownConfig 4 static
13 | stm32g4xx_hal_pwr_ex.c:561:6:HAL_PWREx_EnableSRAM2ContentRetention 4 static
14 | stm32g4xx_hal_pwr_ex.c:573:6:HAL_PWREx_DisableSRAM2ContentRetention 4 static
15 | stm32g4xx_hal_pwr_ex.c:586:6:HAL_PWREx_EnablePVM1 4 static
16 | stm32g4xx_hal_pwr_ex.c:595:6:HAL_PWREx_DisablePVM1 4 static
17 | stm32g4xx_hal_pwr_ex.c:607:6:HAL_PWREx_EnablePVM2 4 static
18 | stm32g4xx_hal_pwr_ex.c:616:6:HAL_PWREx_DisablePVM2 4 static
19 | stm32g4xx_hal_pwr_ex.c:627:6:HAL_PWREx_EnablePVM3 4 static
20 | stm32g4xx_hal_pwr_ex.c:636:6:HAL_PWREx_DisablePVM3 4 static
21 | stm32g4xx_hal_pwr_ex.c:646:6:HAL_PWREx_EnablePVM4 4 static
22 | stm32g4xx_hal_pwr_ex.c:655:6:HAL_PWREx_DisablePVM4 4 static
23 | stm32g4xx_hal_pwr_ex.c:675:19:HAL_PWREx_ConfigPVM 24 static
24 | stm32g4xx_hal_pwr_ex.c:836:6:HAL_PWREx_EnableLowPowerRunMode 4 static
25 | stm32g4xx_hal_pwr_ex.c:851:19:HAL_PWREx_DisableLowPowerRunMode 16 static
26 | stm32g4xx_hal_pwr_ex.c:895:6:HAL_PWREx_EnterSTOP0Mode 16 static,ignoring_inline_asm
27 | stm32g4xx_hal_pwr_ex.c:946:6:HAL_PWREx_EnterSTOP1Mode 16 static,ignoring_inline_asm
28 | stm32g4xx_hal_pwr_ex.c:987:6:HAL_PWREx_EnterSHUTDOWNMode 4 static,ignoring_inline_asm
29 | stm32g4xx_hal_pwr_ex.c:1012:6:HAL_PWREx_PVD_PVM_IRQHandler 8 static
30 | stm32g4xx_hal_pwr_ex.c:1068:13:HAL_PWREx_PVM1Callback 4 static
31 | stm32g4xx_hal_pwr_ex.c:1081:13:HAL_PWREx_PVM2Callback 4 static
32 | stm32g4xx_hal_pwr_ex.c:1093:13:HAL_PWREx_PVM3Callback 4 static
33 | stm32g4xx_hal_pwr_ex.c:1104:13:HAL_PWREx_PVM4Callback 4 static
34 | stm32g4xx_hal_pwr_ex.c:1116:6:HAL_PWREx_EnableUCPDStandbyMode 4 static
35 | stm32g4xx_hal_pwr_ex.c:1128:6:HAL_PWREx_DisableUCPDStandbyMode 4 static
36 | stm32g4xx_hal_pwr_ex.c:1142:6:HAL_PWREx_EnableUCPDDeadBattery 4 static
37 | stm32g4xx_hal_pwr_ex.c:1158:6:HAL_PWREx_DisableUCPDDeadBattery 4 static
38 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_rcc.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_rcc.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_rcc.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_rcc.c:217:19:HAL_RCC_DeInit 16 static
2 | stm32g4xx_hal_rcc.c:310:19:HAL_RCC_OscConfig 40 static
3 | stm32g4xx_hal_rcc.c:765:19:HAL_RCC_ClockConfig 32 static
4 | stm32g4xx_hal_rcc.c:988:6:HAL_RCC_MCOConfig 48 static
5 | stm32g4xx_hal_rcc.c:1045:10:HAL_RCC_GetSysClockFreq 32 static
6 | stm32g4xx_hal_rcc.c:1100:10:HAL_RCC_GetHCLKFreq 4 static
7 | stm32g4xx_hal_rcc.c:1111:10:HAL_RCC_GetPCLK1Freq 8 static
8 | stm32g4xx_hal_rcc.c:1123:10:HAL_RCC_GetPCLK2Freq 8 static
9 | stm32g4xx_hal_rcc.c:1136:6:HAL_RCC_GetOscConfig 16 static
10 | stm32g4xx_hal_rcc.c:1230:6:HAL_RCC_GetClockConfig 16 static
11 | stm32g4xx_hal_rcc.c:1265:6:HAL_RCC_EnableCSS 4 static
12 | stm32g4xx_hal_rcc.c:1279:6:HAL_RCC_EnableLSECSS 4 static
13 | stm32g4xx_hal_rcc.c:1290:6:HAL_RCC_DisableLSECSS 4 static
14 | stm32g4xx_hal_rcc.c:1300:6:HAL_RCC_NMI_IRQHandler 8 static
15 | stm32g4xx_hal_rcc.c:1317:13:HAL_RCC_CSSCallback 4 static
16 | stm32g4xx_hal_rcc.c:1341:17:RCC_GetSysClockFreqFromPLLSource 32 static
17 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_rcc_ex.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_rcc_ex.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_rcc_ex.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_rcc_ex.c:125:19:HAL_RCCEx_PeriphCLKConfig 32 static
2 | stm32g4xx_hal_rcc_ex.c:487:6:HAL_RCCEx_GetPeriphCLKConfig 16 static
3 | stm32g4xx_hal_rcc_ex.c:650:10:HAL_RCCEx_GetPeriphCLKFreq 40 static
4 | stm32g4xx_hal_rcc_ex.c:1288:6:HAL_RCCEx_EnableLSECSS 4 static
5 | stm32g4xx_hal_rcc_ex.c:1298:6:HAL_RCCEx_DisableLSECSS 4 static
6 | stm32g4xx_hal_rcc_ex.c:1311:6:HAL_RCCEx_EnableLSECSS_IT 4 static
7 | stm32g4xx_hal_rcc_ex.c:1328:6:HAL_RCCEx_LSECSS_IRQHandler 8 static
8 | stm32g4xx_hal_rcc_ex.c:1345:13:HAL_RCCEx_LSECSS_Callback 4 static
9 | stm32g4xx_hal_rcc_ex.c:1360:6:HAL_RCCEx_EnableLSCO 48 static
10 | stm32g4xx_hal_rcc_ex.c:1407:6:HAL_RCCEx_DisableLSCO 16 static
11 | stm32g4xx_hal_rcc_ex.c:1515:6:HAL_RCCEx_CRSConfig 24 static
12 | stm32g4xx_hal_rcc_ex.c:1557:6:HAL_RCCEx_CRSSoftwareSynchronizationGenerate 4 static
13 | stm32g4xx_hal_rcc_ex.c:1567:6:HAL_RCCEx_CRSGetSynchronizationInfo 16 static
14 | stm32g4xx_hal_rcc_ex.c:1600:10:HAL_RCCEx_CRSWaitSynchronization 24 static
15 | stm32g4xx_hal_rcc_ex.c:1683:6:HAL_RCCEx_CRS_IRQHandler 24 static
16 | stm32g4xx_hal_rcc_ex.c:1748:13:HAL_RCCEx_CRS_SyncOkCallback 4 static
17 | stm32g4xx_hal_rcc_ex.c:1759:13:HAL_RCCEx_CRS_SyncWarnCallback 4 static
18 | stm32g4xx_hal_rcc_ex.c:1770:13:HAL_RCCEx_CRS_ExpectedSyncCallback 4 static
19 | stm32g4xx_hal_rcc_ex.c:1786:13:HAL_RCCEx_CRS_ErrorCallback 16 static
20 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_tim.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_tim.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_tim_ex.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_tim_ex.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_uart.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_uart.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_uart.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_uart.c:298:19:HAL_UART_Init 16 static
2 | stm32g4xx_hal_uart.c:371:19:HAL_HalfDuplex_Init 16 static
3 | stm32g4xx_hal_uart.c:444:19:HAL_LIN_Init 16 static
4 | stm32g4xx_hal_uart.c:541:19:HAL_MultiProcessor_Init 24 static
5 | stm32g4xx_hal_uart.c:615:19:HAL_UART_DeInit 16 static
6 | stm32g4xx_hal_uart.c:660:13:HAL_UART_MspInit 16 static
7 | stm32g4xx_hal_uart.c:675:13:HAL_UART_MspDeInit 16 static
8 | stm32g4xx_hal_uart.c:1039:19:HAL_UART_Transmit 48 static
9 | stm32g4xx_hal_uart.c:1128:19:HAL_UART_Receive 48 static
10 | stm32g4xx_hal_uart.c:1213:19:HAL_UART_Transmit_IT 24 static
11 | stm32g4xx_hal_uart.c:1287:19:HAL_UART_Receive_IT 24 static
12 | stm32g4xx_hal_uart.c:1368:19:HAL_UART_Transmit_DMA 24 static
13 | stm32g4xx_hal_uart.c:1444:19:HAL_UART_Receive_DMA 24 static
14 | stm32g4xx_hal_uart.c:1515:19:HAL_UART_DMAPause 24 static
15 | stm32g4xx_hal_uart.c:1549:19:HAL_UART_DMAResume 16 static
16 | stm32g4xx_hal_uart.c:1581:19:HAL_UART_DMAStop 24 static
17 | stm32g4xx_hal_uart.c:1656:19:HAL_UART_Abort 16 static
18 | stm32g4xx_hal_uart.c:1750:19:HAL_UART_AbortTransmit 16 static
19 | stm32g4xx_hal_uart.c:1808:19:HAL_UART_AbortReceive 16 static
20 | stm32g4xx_hal_uart.c:1868:19:HAL_UART_Abort_IT 24 static
21 | stm32g4xx_hal_uart.c:2013:19:HAL_UART_AbortTransmit_IT 16 static
22 | stm32g4xx_hal_uart.c:2103:19:HAL_UART_AbortReceive_IT 16 static
23 | stm32g4xx_hal_uart.c:2187:6:HAL_UART_IRQHandler 40 static
24 | stm32g4xx_hal_uart.c:2419:13:HAL_UART_TxCpltCallback 16 static
25 | stm32g4xx_hal_uart.c:2434:13:HAL_UART_TxHalfCpltCallback 16 static
26 | stm32g4xx_hal_uart.c:2449:13:HAL_UART_RxCpltCallback 16 static
27 | stm32g4xx_hal_uart.c:2464:13:HAL_UART_RxHalfCpltCallback 16 static
28 | stm32g4xx_hal_uart.c:2479:13:HAL_UART_ErrorCallback 16 static
29 | stm32g4xx_hal_uart.c:2494:13:HAL_UART_AbortCpltCallback 16 static
30 | stm32g4xx_hal_uart.c:2509:13:HAL_UART_AbortTransmitCpltCallback 16 static
31 | stm32g4xx_hal_uart.c:2524:13:HAL_UART_AbortReceiveCpltCallback 16 static
32 | stm32g4xx_hal_uart.c:2571:6:HAL_UART_ReceiverTimeout_Config 16 static
33 | stm32g4xx_hal_uart.c:2586:19:HAL_UART_EnableReceiverTimeout 16 static
34 | stm32g4xx_hal_uart.c:2624:19:HAL_UART_DisableReceiverTimeout 16 static
35 | stm32g4xx_hal_uart.c:2662:19:HAL_MultiProcessor_EnableMuteMode 16 static
36 | stm32g4xx_hal_uart.c:2682:19:HAL_MultiProcessor_DisableMuteMode 16 static
37 | stm32g4xx_hal_uart.c:2702:6:HAL_MultiProcessor_EnterMuteMode 16 static
38 | stm32g4xx_hal_uart.c:2712:19:HAL_HalfDuplex_EnableTransmitter 16 static
39 | stm32g4xx_hal_uart.c:2735:19:HAL_HalfDuplex_EnableReceiver 16 static
40 | stm32g4xx_hal_uart.c:2759:19:HAL_LIN_SendBreak 16 static
41 | stm32g4xx_hal_uart.c:2804:23:HAL_UART_GetState 24 static
42 | stm32g4xx_hal_uart.c:2820:10:HAL_UART_GetError 16 static
43 | stm32g4xx_hal_uart.c:2865:19:UART_SetConfig 48 static
44 | stm32g4xx_hal_uart.c:3083:6:UART_AdvFeatureConfig 16 static
45 | stm32g4xx_hal_uart.c:3157:19:UART_CheckIdleState 32 static
46 | stm32g4xx_hal_uart.c:3207:19:UART_WaitOnFlagUntilTimeout 24 static
47 | stm32g4xx_hal_uart.c:3264:13:UART_EndTxTransfer 16 static
48 | stm32g4xx_hal_uart.c:3280:13:UART_EndRxTransfer 16 static
49 | stm32g4xx_hal_uart.c:3299:13:UART_DMATransmitCplt 24 static
50 | stm32g4xx_hal_uart.c:3333:13:UART_DMATxHalfCplt 24 static
51 | stm32g4xx_hal_uart.c:3351:13:UART_DMAReceiveCplt 24 static
52 | stm32g4xx_hal_uart.c:3386:13:UART_DMARxHalfCplt 24 static
53 | stm32g4xx_hal_uart.c:3404:13:UART_DMAError 32 static
54 | stm32g4xx_hal_uart.c:3444:13:UART_DMAAbortOnError 24 static
55 | stm32g4xx_hal_uart.c:3467:13:UART_DMATxAbortCallback 24 static
56 | stm32g4xx_hal_uart.c:3521:13:UART_DMARxAbortCallback 24 static
57 | stm32g4xx_hal_uart.c:3572:13:UART_DMATxOnlyAbortCallback 24 static
58 | stm32g4xx_hal_uart.c:3605:13:UART_DMARxOnlyAbortCallback 24 static
59 | stm32g4xx_hal_uart.c:3637:13:UART_TxISR_8BIT 16 static
60 | stm32g4xx_hal_uart.c:3666:13:UART_TxISR_16BIT 24 static
61 | stm32g4xx_hal_uart.c:3698:13:UART_TxISR_8BIT_FIFOEN 24 static
62 | stm32g4xx_hal_uart.c:3738:13:UART_TxISR_16BIT_FIFOEN 24 static
63 | stm32g4xx_hal_uart.c:3779:13:UART_EndTransmit_IT 16 static
64 | stm32g4xx_hal_uart.c:3804:13:UART_RxISR_8BIT 24 static
65 | stm32g4xx_hal_uart.c:3854:13:UART_RxISR_16BIT 24 static
66 | stm32g4xx_hal_uart.c:3906:13:UART_RxISR_8BIT_FIFOEN 24 static
67 | stm32g4xx_hal_uart.c:3979:13:UART_RxISR_16BIT_FIFOEN 32 static
68 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_uart_ex.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_uart_ex.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_uart_ex.su:
--------------------------------------------------------------------------------
1 | stm32g4xx_hal_uart_ex.c:166:19:HAL_RS485Ex_Init 32 static
2 | stm32g4xx_hal_uart_ex.c:272:13:HAL_UARTEx_WakeupCallback 16 static
3 | stm32g4xx_hal_uart_ex.c:287:13:HAL_UARTEx_RxFifoFullCallback 16 static
4 | stm32g4xx_hal_uart_ex.c:302:13:HAL_UARTEx_TxFifoEmptyCallback 16 static
5 | stm32g4xx_hal_uart_ex.c:352:19:HAL_MultiProcessorEx_AddressLength_Set 16 static
6 | stm32g4xx_hal_uart_ex.c:390:19:HAL_UARTEx_StopModeWakeUpSourceConfig 40 static
7 | stm32g4xx_hal_uart_ex.c:445:19:HAL_UARTEx_EnableStopMode 16 static
8 | stm32g4xx_hal_uart_ex.c:464:19:HAL_UARTEx_DisableStopMode 16 static
9 | stm32g4xx_hal_uart_ex.c:483:19:HAL_UARTEx_EnableFifoMode 24 static
10 | stm32g4xx_hal_uart_ex.c:524:19:HAL_UARTEx_DisableFifoMode 24 static
11 | stm32g4xx_hal_uart_ex.c:570:19:HAL_UARTEx_SetTxFifoThreshold 24 static
12 | stm32g4xx_hal_uart_ex.c:619:19:HAL_UARTEx_SetRxFifoThreshold 24 static
13 | stm32g4xx_hal_uart_ex.c:673:13:UARTEx_Wakeup_AddressConfig 24 static
14 | stm32g4xx_hal_uart_ex.c:691:13:UARTEx_SetNbDataToProcess 40 static
15 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_ll_adc.d:
--------------------------------------------------------------------------------
1 | Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_ll_adc.o: \
2 | ../Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_ll_adc.c
3 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_ll_adc.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_ll_adc.o
--------------------------------------------------------------------------------
/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_ll_adc.su:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Debug/Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_ll_adc.su
--------------------------------------------------------------------------------
/ControlFirmware/Debug/makefile:
--------------------------------------------------------------------------------
1 | ################################################################################
2 | # Automatically-generated file. Do not edit!
3 | ################################################################################
4 |
5 | -include ../makefile.init
6 |
7 | RM := rm -rf
8 |
9 | # All of the sources participating in the build are defined here
10 | -include sources.mk
11 | -include Drivers/STM32G4xx_HAL_Driver/Src/subdir.mk
12 | -include Core/Startup/subdir.mk
13 | -include Core/Src/subdir.mk
14 | -include subdir.mk
15 | -include objects.mk
16 |
17 | ifneq ($(MAKECMDGOALS),clean)
18 | ifneq ($(strip $(S_DEPS)),)
19 | -include $(S_DEPS)
20 | endif
21 | ifneq ($(strip $(S_UPPER_DEPS)),)
22 | -include $(S_UPPER_DEPS)
23 | endif
24 | ifneq ($(strip $(C_DEPS)),)
25 | -include $(C_DEPS)
26 | endif
27 | endif
28 |
29 | -include ../makefile.defs
30 |
31 | BUILD_ARTIFACT_NAME := ControlFirmware
32 | BUILD_ARTIFACT_EXTENSION := elf
33 | BUILD_ARTIFACT_PREFIX :=
34 | BUILD_ARTIFACT := $(BUILD_ARTIFACT_PREFIX)$(BUILD_ARTIFACT_NAME).$(BUILD_ARTIFACT_EXTENSION)
35 |
36 | # Add inputs and outputs from these tool invocations to the build variables
37 | EXECUTABLES += \
38 | ControlFirmware.elf \
39 |
40 | SIZE_OUTPUT += \
41 | default.size.stdout \
42 |
43 | OBJDUMP_LIST += \
44 | ControlFirmware.list \
45 |
46 | OBJCOPY_BIN += \
47 | ControlFirmware.bin \
48 |
49 |
50 | # All Target
51 | all: main-build
52 |
53 | # Main-build Target
54 | main-build: ControlFirmware.elf secondary-outputs
55 |
56 | # Tool invocations
57 | ControlFirmware.elf: $(OBJS) $(USER_OBJS) C:\GitHub\SMSMod\ControlFirmware\STM32G431KBTX_FLASH.ld
58 | arm-none-eabi-gcc -o "ControlFirmware.elf" @"objects.list" $(USER_OBJS) $(LIBS) -mcpu=cortex-m4 -T"C:\GitHub\SMSMod\ControlFirmware\STM32G431KBTX_FLASH.ld" --specs=nosys.specs -Wl,-Map="ControlFirmware.map" -Wl,--gc-sections -static --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -Wl,--start-group -lc -lm -Wl,--end-group
59 | @echo 'Finished building target: $@'
60 | @echo ' '
61 |
62 | default.size.stdout: $(EXECUTABLES)
63 | arm-none-eabi-size $(EXECUTABLES)
64 | @echo 'Finished building: $@'
65 | @echo ' '
66 |
67 | ControlFirmware.list: $(EXECUTABLES)
68 | arm-none-eabi-objdump -h -S $(EXECUTABLES) > "ControlFirmware.list"
69 | @echo 'Finished building: $@'
70 | @echo ' '
71 |
72 | ControlFirmware.bin: $(EXECUTABLES)
73 | arm-none-eabi-objcopy -O binary $(EXECUTABLES) "ControlFirmware.bin"
74 | @echo 'Finished building: $@'
75 | @echo ' '
76 |
77 | # Other Targets
78 | clean:
79 | -$(RM) *
80 | -@echo ' '
81 |
82 | secondary-outputs: $(SIZE_OUTPUT) $(OBJDUMP_LIST) $(OBJCOPY_BIN)
83 |
84 | fail-specified-linker-script-missing:
85 | @echo 'Error: Cannot find the specified linker script. Check the linker settings in the build configuration.'
86 | @exit 2
87 |
88 | warn-no-linker-script-specified:
89 | @echo 'Warning: No linker script specified. Check the linker settings in the build configuration.'
90 |
91 | .PHONY: all clean dependents fail-specified-linker-script-missing warn-no-linker-script-specified
92 | .SECONDARY:
93 |
94 | -include ../makefile.targets
95 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/objects.list:
--------------------------------------------------------------------------------
1 | "Core/Src/control_algo.o"
2 | "Core/Src/control_table.o"
3 | "Core/Src/eeprom.o"
4 | "Core/Src/led.o"
5 | "Core/Src/main.o"
6 | "Core/Src/math_tool.o"
7 | "Core/Src/pic.o"
8 | "Core/Src/protocol.o"
9 | "Core/Src/serial.o"
10 | "Core/Src/stm32g4xx_hal_msp.o"
11 | "Core/Src/stm32g4xx_it.o"
12 | "Core/Src/syscalls.o"
13 | "Core/Src/sysmem.o"
14 | "Core/Src/system_stm32g4xx.o"
15 | "Core/Startup/startup_stm32g431kbtx.o"
16 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal.o"
17 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_adc.o"
18 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_adc_ex.o"
19 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_cortex.o"
20 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dma.o"
21 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_dma_ex.o"
22 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.o"
23 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_flash.o"
24 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_flash_ex.o"
25 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_flash_ramfunc.o"
26 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.o"
27 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp.o"
28 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_opamp_ex.o"
29 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pwr.o"
30 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pwr_ex.o"
31 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_rcc.o"
32 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_rcc_ex.o"
33 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_tim.o"
34 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_tim_ex.o"
35 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_uart.o"
36 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_uart_ex.o"
37 | "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_ll_adc.o"
38 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/objects.mk:
--------------------------------------------------------------------------------
1 | ################################################################################
2 | # Automatically-generated file. Do not edit!
3 | ################################################################################
4 |
5 | USER_OBJS :=
6 |
7 | LIBS :=
8 |
9 |
--------------------------------------------------------------------------------
/ControlFirmware/Debug/sources.mk:
--------------------------------------------------------------------------------
1 | ################################################################################
2 | # Automatically-generated file. Do not edit!
3 | ################################################################################
4 |
5 | ELF_SRCS :=
6 | OBJ_SRCS :=
7 | S_SRCS :=
8 | C_SRCS :=
9 | S_UPPER_SRCS :=
10 | O_SRCS :=
11 | SIZE_OUTPUT :=
12 | OBJDUMP_LIST :=
13 | EXECUTABLES :=
14 | OBJS :=
15 | S_DEPS :=
16 | S_UPPER_DEPS :=
17 | C_DEPS :=
18 | OBJCOPY_BIN :=
19 |
20 | # Every subdirectory with source files must be described here
21 | SUBDIRS := \
22 | Core/Src \
23 | Core/Startup \
24 | Drivers/STM32G4xx_HAL_Driver/Src \
25 |
26 |
--------------------------------------------------------------------------------
/ControlFirmware/Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h
--------------------------------------------------------------------------------
/ControlFirmware/Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlFirmware/Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h
--------------------------------------------------------------------------------
/ControlFirmware/Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file system_stm32g4xx.h
4 | * @author MCD Application Team
5 | * @brief CMSIS Cortex-M4 Device System Source File for STM32G4xx devices.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /** @addtogroup CMSIS
21 | * @{
22 | */
23 |
24 | /** @addtogroup stm32g4xx_system
25 | * @{
26 | */
27 |
28 | /**
29 | * @brief Define to prevent recursive inclusion
30 | */
31 | #ifndef __SYSTEM_STM32G4XX_H
32 | #define __SYSTEM_STM32G4XX_H
33 |
34 | #ifdef __cplusplus
35 | extern "C" {
36 | #endif
37 |
38 | /** @addtogroup STM32G4xx_System_Includes
39 | * @{
40 | */
41 |
42 | /**
43 | * @}
44 | */
45 |
46 |
47 | /** @addtogroup STM32G4xx_System_Exported_Variables
48 | * @{
49 | */
50 | /* The SystemCoreClock variable is updated in three ways:
51 | 1) by calling CMSIS function SystemCoreClockUpdate()
52 | 2) by calling HAL API function HAL_RCC_GetSysClockFreq()
53 | 3) each time HAL_RCC_ClockConfig() is called to configure the system clock frequency
54 | Note: If you use this function to configure the system clock; then there
55 | is no need to call the 2 first functions listed above, since SystemCoreClock
56 | variable is updated automatically.
57 | */
58 | extern uint32_t SystemCoreClock; /*!< System Clock Frequency (Core Clock) */
59 |
60 | extern const uint8_t AHBPrescTable[16]; /*!< AHB prescalers table values */
61 | extern const uint8_t APBPrescTable[8]; /*!< APB prescalers table values */
62 |
63 | /**
64 | * @}
65 | */
66 |
67 | /** @addtogroup STM32G4xx_System_Exported_Constants
68 | * @{
69 | */
70 |
71 | /**
72 | * @}
73 | */
74 |
75 | /** @addtogroup STM32G4xx_System_Exported_Macros
76 | * @{
77 | */
78 |
79 | /**
80 | * @}
81 | */
82 |
83 | /** @addtogroup STM32G4xx_System_Exported_Functions
84 | * @{
85 | */
86 |
87 | extern void SystemInit(void);
88 | extern void SystemCoreClockUpdate(void);
89 | /**
90 | * @}
91 | */
92 |
93 | #ifdef __cplusplus
94 | }
95 | #endif
96 |
97 | #endif /*__SYSTEM_STM32G4XX_H */
98 |
99 | /**
100 | * @}
101 | */
102 |
103 | /**
104 | * @}
105 | */
106 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
107 |
--------------------------------------------------------------------------------
/ControlFirmware/Drivers/CMSIS/Include/cmsis_version.h:
--------------------------------------------------------------------------------
1 | /**************************************************************************//**
2 | * @file cmsis_version.h
3 | * @brief CMSIS Core(M) Version definitions
4 | * @version V5.0.3
5 | * @date 24. June 2019
6 | ******************************************************************************/
7 | /*
8 | * Copyright (c) 2009-2019 ARM Limited. All rights reserved.
9 | *
10 | * SPDX-License-Identifier: Apache-2.0
11 | *
12 | * Licensed under the Apache License, Version 2.0 (the License); you may
13 | * not use this file except in compliance with the License.
14 | * You may obtain a copy of the License at
15 | *
16 | * www.apache.org/licenses/LICENSE-2.0
17 | *
18 | * Unless required by applicable law or agreed to in writing, software
19 | * distributed under the License is distributed on an AS IS BASIS, WITHOUT
20 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 | * See the License for the specific language governing permissions and
22 | * limitations under the License.
23 | */
24 |
25 | #if defined ( __ICCARM__ )
26 | #pragma system_include /* treat file as system include file for MISRA check */
27 | #elif defined (__clang__)
28 | #pragma clang system_header /* treat file as system include file */
29 | #endif
30 |
31 | #ifndef __CMSIS_VERSION_H
32 | #define __CMSIS_VERSION_H
33 |
34 | /* CMSIS Version definitions */
35 | #define __CM_CMSIS_VERSION_MAIN ( 5U) /*!< [31:16] CMSIS Core(M) main version */
36 | #define __CM_CMSIS_VERSION_SUB ( 3U) /*!< [15:0] CMSIS Core(M) sub version */
37 | #define __CM_CMSIS_VERSION ((__CM_CMSIS_VERSION_MAIN << 16U) | \
38 | __CM_CMSIS_VERSION_SUB ) /*!< CMSIS Core(M) version number */
39 | #endif
40 |
--------------------------------------------------------------------------------
/ControlFirmware/Drivers/CMSIS/Include/tz_context.h:
--------------------------------------------------------------------------------
1 | /******************************************************************************
2 | * @file tz_context.h
3 | * @brief Context Management for Armv8-M TrustZone
4 | * @version V1.0.1
5 | * @date 10. January 2018
6 | ******************************************************************************/
7 | /*
8 | * Copyright (c) 2017-2018 Arm Limited. All rights reserved.
9 | *
10 | * SPDX-License-Identifier: Apache-2.0
11 | *
12 | * Licensed under the Apache License, Version 2.0 (the License); you may
13 | * not use this file except in compliance with the License.
14 | * You may obtain a copy of the License at
15 | *
16 | * www.apache.org/licenses/LICENSE-2.0
17 | *
18 | * Unless required by applicable law or agreed to in writing, software
19 | * distributed under the License is distributed on an AS IS BASIS, WITHOUT
20 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 | * See the License for the specific language governing permissions and
22 | * limitations under the License.
23 | */
24 |
25 | #if defined ( __ICCARM__ )
26 | #pragma system_include /* treat file as system include file for MISRA check */
27 | #elif defined (__clang__)
28 | #pragma clang system_header /* treat file as system include file */
29 | #endif
30 |
31 | #ifndef TZ_CONTEXT_H
32 | #define TZ_CONTEXT_H
33 |
34 | #include
35 |
36 | #ifndef TZ_MODULEID_T
37 | #define TZ_MODULEID_T
38 | /// \details Data type that identifies secure software modules called by a process.
39 | typedef uint32_t TZ_ModuleId_t;
40 | #endif
41 |
42 | /// \details TZ Memory ID identifies an allocated memory slot.
43 | typedef uint32_t TZ_MemoryId_t;
44 |
45 | /// Initialize secure context memory system
46 | /// \return execution status (1: success, 0: error)
47 | uint32_t TZ_InitContextSystem_S (void);
48 |
49 | /// Allocate context memory for calling secure software modules in TrustZone
50 | /// \param[in] module identifies software modules called from non-secure mode
51 | /// \return value != 0 id TrustZone memory slot identifier
52 | /// \return value 0 no memory available or internal error
53 | TZ_MemoryId_t TZ_AllocModuleContext_S (TZ_ModuleId_t module);
54 |
55 | /// Free context memory that was previously allocated with \ref TZ_AllocModuleContext_S
56 | /// \param[in] id TrustZone memory slot identifier
57 | /// \return execution status (1: success, 0: error)
58 | uint32_t TZ_FreeModuleContext_S (TZ_MemoryId_t id);
59 |
60 | /// Load secure context (called on RTOS thread context switch)
61 | /// \param[in] id TrustZone memory slot identifier
62 | /// \return execution status (1: success, 0: error)
63 | uint32_t TZ_LoadContext_S (TZ_MemoryId_t id);
64 |
65 | /// Store secure context (called on RTOS thread context switch)
66 | /// \param[in] id TrustZone memory slot identifier
67 | /// \return execution status (1: success, 0: error)
68 | uint32_t TZ_StoreContext_S (TZ_MemoryId_t id);
69 |
70 | #endif // TZ_CONTEXT_H
71 |
--------------------------------------------------------------------------------
/ControlFirmware/Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ex.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file stm32g4xx_hal_flash_ex.h
4 | * @author MCD Application Team
5 | * @brief Header file of FLASH HAL Extended module.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © COPYRIGHT(c) 2019 STMicroelectronics
10 | *
11 | * This software component is licensed by ST under BSD 3-Clause license,
12 | * the "License"; You may not use this file except in compliance with the
13 | * License. You may obtain a copy of the License at:
14 | * opensource.org/licenses/BSD-3-Clause
15 | *
16 | ******************************************************************************
17 | */
18 |
19 | /* Define to prevent recursive inclusion -------------------------------------*/
20 | #ifndef STM32G4xx_HAL_FLASH_EX_H
21 | #define STM32G4xx_HAL_FLASH_EX_H
22 |
23 | #ifdef __cplusplus
24 | extern "C" {
25 | #endif
26 |
27 | /* Includes ------------------------------------------------------------------*/
28 | #include "stm32g4xx_hal_def.h"
29 |
30 | /** @addtogroup STM32G4xx_HAL_Driver
31 | * @{
32 | */
33 |
34 | /** @addtogroup FLASHEx
35 | * @{
36 | */
37 |
38 | /* Exported types ------------------------------------------------------------*/
39 |
40 | /* Exported constants --------------------------------------------------------*/
41 |
42 | /* Exported macro ------------------------------------------------------------*/
43 |
44 | /* Exported functions --------------------------------------------------------*/
45 | /** @addtogroup FLASHEx_Exported_Functions
46 | * @{
47 | */
48 |
49 | /* Extended Program operation functions *************************************/
50 | /** @addtogroup FLASHEx_Exported_Functions_Group1
51 | * @{
52 | */
53 | HAL_StatusTypeDef HAL_FLASHEx_Erase(FLASH_EraseInitTypeDef *pEraseInit, uint32_t *PageError);
54 | HAL_StatusTypeDef HAL_FLASHEx_Erase_IT(FLASH_EraseInitTypeDef *pEraseInit);
55 | HAL_StatusTypeDef HAL_FLASHEx_OBProgram(FLASH_OBProgramInitTypeDef *pOBInit);
56 | void HAL_FLASHEx_OBGetConfig(FLASH_OBProgramInitTypeDef *pOBInit);
57 | HAL_StatusTypeDef HAL_FLASHEx_EnableSecMemProtection(uint32_t Bank);
58 | void HAL_FLASHEx_EnableDebugger(void);
59 | void HAL_FLASHEx_DisableDebugger(void);
60 | /**
61 | * @}
62 | */
63 |
64 | /**
65 | * @}
66 | */
67 |
68 | /** @addtogroup FLASHEx_Private_Functions
69 | * @{
70 | */
71 | void FLASH_PageErase(uint32_t Page, uint32_t Banks);
72 | void FLASH_FlushCaches(void);
73 | /**
74 | * @}
75 | */
76 |
77 | /**
78 | * @}
79 | */
80 |
81 | /**
82 | * @}
83 | */
84 |
85 | #ifdef __cplusplus
86 | }
87 | #endif
88 |
89 | #endif /* STM32G4xx_HAL_FLASH_EX_H */
90 |
91 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
92 |
--------------------------------------------------------------------------------
/ControlFirmware/Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash_ramfunc.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file stm32g4xx_hal_flash_ramfunc.h
4 | * @author MCD Application Team
5 | * @brief Header file of FLASH RAMFUNC driver.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © COPYRIGHT(c) 2019 STMicroelectronics
10 | *
11 | * This software component is licensed by ST under BSD 3-Clause license,
12 | * the "License"; You may not use this file except in compliance with the
13 | * License. You may obtain a copy of the License at:
14 | * opensource.org/licenses/BSD-3-Clause
15 | *
16 | ******************************************************************************
17 | */
18 |
19 | /* Define to prevent recursive inclusion -------------------------------------*/
20 | #ifndef STM32G4xx_FLASH_RAMFUNC_H
21 | #define STM32G4xx_FLASH_RAMFUNC_H
22 |
23 | #ifdef __cplusplus
24 | extern "C" {
25 | #endif
26 |
27 | /* Includes ------------------------------------------------------------------*/
28 | #include "stm32g4xx_hal_def.h"
29 |
30 | /** @addtogroup STM32G4xx_HAL_Driver
31 | * @{
32 | */
33 |
34 | /** @addtogroup FLASH_RAMFUNC
35 | * @{
36 | */
37 |
38 | /* Exported types ------------------------------------------------------------*/
39 | /* Exported macro ------------------------------------------------------------*/
40 | /* Exported functions --------------------------------------------------------*/
41 | /** @addtogroup FLASH_RAMFUNC_Exported_Functions
42 | * @{
43 | */
44 |
45 | /** @addtogroup FLASH_RAMFUNC_Exported_Functions_Group1
46 | * @{
47 | */
48 | /* Peripheral Control functions ************************************************/
49 | __RAM_FUNC HAL_StatusTypeDef HAL_FLASHEx_EnableRunPowerDown(void);
50 | __RAM_FUNC HAL_StatusTypeDef HAL_FLASHEx_DisableRunPowerDown(void);
51 | #if defined (FLASH_OPTR_DBANK)
52 | __RAM_FUNC HAL_StatusTypeDef HAL_FLASHEx_OB_DBankConfig(uint32_t DBankConfig);
53 | #endif
54 | /**
55 | * @}
56 | */
57 |
58 | /**
59 | * @}
60 | */
61 |
62 | /**
63 | * @}
64 | */
65 |
66 | /**
67 | * @}
68 | */
69 |
70 | #ifdef __cplusplus
71 | }
72 | #endif
73 |
74 | #endif /* STM32G4xx_FLASH_RAMFUNC_H */
75 |
76 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
77 |
--------------------------------------------------------------------------------
/ControlFirmware/Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp_ex.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file stm32g4xx_hal_opamp_ex.h
4 | * @author MCD Application Team
5 | * @brief Header file of OPAMP HAL Extended module.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef STM32G4xx_HAL_OPAMP_EX_H
22 | #define STM32G4xx_HAL_OPAMP_EX_H
23 |
24 | #ifdef __cplusplus
25 | extern "C" {
26 | #endif
27 |
28 | /* Includes ------------------------------------------------------------------*/
29 | #include "stm32g4xx_hal_def.h"
30 |
31 | /** @addtogroup STM32G4xx_HAL_Driver
32 | * @{
33 | */
34 |
35 | /** @addtogroup OPAMPEx OPAMPEx
36 | * @{
37 | */
38 | /* Exported types ------------------------------------------------------------*/
39 | /* Exported constants --------------------------------------------------------*/
40 | /* Exported macro ------------------------------------------------------------*/
41 | /* Exported functions --------------------------------------------------------*/
42 | /** @addtogroup OPAMPEx_Exported_Functions OPAMP Extended Exported Functions
43 | * @{
44 | */
45 |
46 | /** @addtogroup OPAMPEx_Exported_Functions_Group1 Extended Input and Output operation functions
47 | * @{
48 | */
49 |
50 | /* I/O operation functions *****************************************************/
51 |
52 | #if defined(STM32G473xx) || defined(STM32G474xx) || defined(STM32G483xx) || defined(STM32G484xx)
53 | HAL_StatusTypeDef HAL_OPAMPEx_SelfCalibrateAll(OPAMP_HandleTypeDef *hopamp1, OPAMP_HandleTypeDef *hopamp2,
54 | OPAMP_HandleTypeDef *hopamp3, OPAMP_HandleTypeDef *hopamp4, OPAMP_HandleTypeDef *hopamp5, OPAMP_HandleTypeDef *hopamp6);
55 | #elif defined(STM32GBK1CB) || defined(STM32G431xx) || defined(STM32G441xx) || defined(STM32G471xx)
56 | HAL_StatusTypeDef HAL_OPAMPEx_SelfCalibrateAll(OPAMP_HandleTypeDef *hopamp1, OPAMP_HandleTypeDef *hopamp2,
57 | OPAMP_HandleTypeDef *hopamp3);
58 | #elif defined(STM32G491xx) || defined(STM32G4A1xx)
59 | HAL_StatusTypeDef HAL_OPAMPEx_SelfCalibrateAll(OPAMP_HandleTypeDef *hopamp1, OPAMP_HandleTypeDef *hopamp2,
60 | OPAMP_HandleTypeDef *hopamp3, OPAMP_HandleTypeDef *hopamp6);
61 | #endif
62 |
63 | /**
64 | * @}
65 | */
66 |
67 | /**
68 | * @}
69 | */
70 |
71 | /**
72 | * @}
73 | */
74 |
75 | /**
76 | * @}
77 | */
78 |
79 |
80 | #ifdef __cplusplus
81 | }
82 | #endif
83 |
84 |
85 | #endif /* STM32G4xx_HAL_OPAMP_EX_H */
86 |
87 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
88 |
--------------------------------------------------------------------------------
/ControlFirmware/check-cppcheck-build-dir/control_table.a1:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/ControlFirmware/check-cppcheck-build-dir/eeprom.a1:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/ControlFirmware/check-cppcheck-build-dir/files.txt:
--------------------------------------------------------------------------------
1 | control_algo.a1::Core/Src/control_algo.c
2 | control_table.a1::Core/Src/control_table.c
3 | eeprom.a1::Core/Src/eeprom.c
4 | led.a1::Core/Src/led.c
5 | main.a1::Core/Src/main.c
6 | math_tool.a1::Core/Src/math_tool.c
7 | pic.a1::Core/Src/pic.c
8 | protocol.a1::Core/Src/protocol.c
9 | serial.a1::Core/Src/serial.c
10 | stm32g4xx_hal_msp.a1::Core/Src/stm32g4xx_hal_msp.c
11 | stm32g4xx_it.a1::Core/Src/stm32g4xx_it.c
12 | syscalls.a1::Core/Src/syscalls.c
13 | sysmem.a1::Core/Src/sysmem.c
14 | system_stm32g4xx.a1::Core/Src/system_stm32g4xx.c
15 |
--------------------------------------------------------------------------------
/ControlFirmware/check-cppcheck-build-dir/led.a1:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/ControlFirmware/check-cppcheck-build-dir/math_tool.a1:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/ControlFirmware/check-cppcheck-build-dir/pic.a1:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/ControlFirmware/check-cppcheck-build-dir/statistics.txt:
--------------------------------------------------------------------------------
1 | [08.01.2021]
2 | 1610120062644
3 | cppcheck-error:0
4 | cppcheck-warning:0
5 | cppcheck-style:57
6 | cppcheck-performance:0
7 | cppcheck-portability:0
8 |
--------------------------------------------------------------------------------
/ControlFirmware/check-cppcheck-build-dir/stm32g4xx_it.a1:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/ControlFirmware/check-cppcheck-build-dir/syscalls.a1:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ControlFirmware/check-cppcheck-build-dir/sysmem.a1:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/ControlFirmware/check-cppcheck-build-dir/system_stm32g4xx.a1:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/ControlFirmware/check.cppcheck:
--------------------------------------------------------------------------------
1 |
2 |
3 | check-cppcheck-build-dir
4 | Unspecified
5 | false
6 | true
7 | false
8 | 2
9 | 100
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/ControlModes/CaptureCurrent.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlModes/CaptureCurrent.PNG
--------------------------------------------------------------------------------
/ControlModes/CaptureTRIGGER.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlModes/CaptureTRIGGER.PNG
--------------------------------------------------------------------------------
/ControlModes/Mode 2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlModes/Mode 2.png
--------------------------------------------------------------------------------
/ControlModes/Mode1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlModes/Mode1.png
--------------------------------------------------------------------------------
/ControlModes/current.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlModes/current.png
--------------------------------------------------------------------------------
/ControlModes/mode1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlModes/mode1.jpg
--------------------------------------------------------------------------------
/ControlModes/mode2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlModes/mode2.jpg
--------------------------------------------------------------------------------
/ControlModes/trigger.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlModes/trigger.png
--------------------------------------------------------------------------------
/ControlTable/SMS control table.xlsx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/ControlTable/SMS control table.xlsx
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2022 pat92fr
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/Pictures/CaptureHackaday.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/CaptureHackaday.PNG
--------------------------------------------------------------------------------
/Pictures/IMG20210104151520.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210104151520.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210104151520drv.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210104151520drv.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210104151547.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210104151547.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210104151650.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210104151650.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210104151734.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210104151734.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210104153136.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210104153136.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210104153136stm32.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210104153136stm32.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210104155614.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210104155614.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210104160551.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210104160551.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210104160612.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210104160612.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210104161140.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210104161140.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210104161915.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210104161915.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210104161948.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210104161948.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210104161958.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210104161958.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210105074709.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210105074709.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210109225448.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210109225448.jpg
--------------------------------------------------------------------------------
/Pictures/IMG20210109225906.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/Pictures/IMG20210109225906.jpg
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | https://hackaday.io/project/176678-smarter-micro-servo-sms-mod
2 |
3 | # SMSMod
4 | Smarter Micro Servo (SMS) MOD
5 |
6 | 
7 |
8 | This projet is a tiny control board for micro servo. It replaces the original servo control board and provides a smart bus interface (TTL level, Up to 1Mbps) and configurable close-loop regulation for robotic applications. Any micro and mini servo may be hacked and driven by this board (5-pin interface : 2 for DC motor, 3 for potentiometer). The control board may be directly powered by a LIPo 2S battery (min 6.5V, max 10V).
9 |
10 | Commercial off-the-shelf smart 3-pin cables, hubs, accessories and physical interface adapter boards (e.g. TTLinker) may be used to connect the hacked servo to the host controller (Arduino board, Arm-based board, RPi, and Jetson). User can drive up to 254 servo, with the same bus.
11 |
12 | Position, velocity, and torque of each servo are controlable. Present position, velocity, and torque feedback are avaible. Communication protocol is developed in Python and C/C++ (Arduino). Ping, read, write, sync write, reboot, factory reset commands are supported. One command takes about 1ms to be processed with a return status.
13 |
--------------------------------------------------------------------------------
/SMSUtility/CaptureGUI001.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/SMSUtility/CaptureGUI001.png
--------------------------------------------------------------------------------
/SMSUtility/CaptureGUI001i.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/SMSUtility/CaptureGUI001i.png
--------------------------------------------------------------------------------
/SMSUtility/SMSUtility.py:
--------------------------------------------------------------------------------
1 | import time
2 |
3 | import serial
4 | # help : https://pythonhosted.org/pyserial/pyserial_api.html
5 |
6 | from tkinter import *
7 | #from tkinter.ttk import *
8 |
9 | from id_frame import *
10 | from eeprom_frame import *
11 | from ram_frame import *
12 | from trace_frame import *
13 | from protocol2 import *
14 |
15 | import cProfile
16 |
17 |
18 | def main():
19 |
20 | servo = servo_protocol2('COM3',500000) ##eeprom baud = 3
21 |
22 | window = Tk()
23 | window.title(" MyServoGUI")
24 | window.geometry("1600x1020")
25 | window.minsize(1600,1020)
26 |
27 | fi = id_frame(window,servo)
28 | fe = eeprom_frame(window,servo,fi)
29 | ft =trace_frame(window,servo,fi)
30 | fr = ram_frame(window,servo,ft,fi)
31 |
32 | fi.grid(column = 0, row = 0, sticky='nsew')
33 | fe.grid(column = 1, row = 0, sticky='nsew')
34 | ft.grid(column = 2, row = 0, sticky='nsew')
35 | fr.grid(column = 3, row = 0, sticky='nsew')
36 |
37 | window.columnconfigure(2, weight=1)
38 | window.rowconfigure(0, weight=1)
39 |
40 | mainloop()
41 |
42 |
43 | if __name__ == "__main__":
44 |
45 | ##cProfile.run("main()")
46 | main()
47 |
48 |
49 |
--------------------------------------------------------------------------------
/SMSUtility/__pycache__/eeprom_frame.cpython-37.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/SMSUtility/__pycache__/eeprom_frame.cpython-37.pyc
--------------------------------------------------------------------------------
/SMSUtility/__pycache__/felin.cpython-37.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/SMSUtility/__pycache__/felin.cpython-37.pyc
--------------------------------------------------------------------------------
/SMSUtility/__pycache__/id_frame.cpython-37.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/SMSUtility/__pycache__/id_frame.cpython-37.pyc
--------------------------------------------------------------------------------
/SMSUtility/__pycache__/ik.cpython-37.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/SMSUtility/__pycache__/ik.cpython-37.pyc
--------------------------------------------------------------------------------
/SMSUtility/__pycache__/intersection.cpython-37.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/SMSUtility/__pycache__/intersection.cpython-37.pyc
--------------------------------------------------------------------------------
/SMSUtility/__pycache__/protocol2.cpython-37.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/SMSUtility/__pycache__/protocol2.cpython-37.pyc
--------------------------------------------------------------------------------
/SMSUtility/__pycache__/ram_frame.cpython-37.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/SMSUtility/__pycache__/ram_frame.cpython-37.pyc
--------------------------------------------------------------------------------
/SMSUtility/__pycache__/trace_frame.cpython-37.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pat92fr/SMSMod/5a25963661b2b21c9e4990acab97350e17aed776/SMSUtility/__pycache__/trace_frame.cpython-37.pyc
--------------------------------------------------------------------------------
/SMSUtility/felin.py:
--------------------------------------------------------------------------------
1 | # Robot
2 |
3 | # Position of the Coxa Joint (C) in the body reference frame of the robot
4 | # oX is forward
5 | Lhx = 0.000
6 | # oY is left
7 | Lhy = 0.000
8 | # oZ is upward
9 | Lhz = 0.000
10 |
11 | # Relative position of knee servo (S2) // hip servo (S1)
12 | S2x = 0.000 #-0.010
13 | S2z = 0.000 #0.012
14 |
15 | # Femur Joint (A) is // with the XZ plane of body frame
16 | # Tibia Joint (B) is // with the XZ plane of body frame
17 |
18 | # Legs :
19 | # Femur Length
20 | Lf = 0.06
21 | # Tibia Length
22 | Lt = 0.07 #0.06
23 | # Tibia to hord end
24 | Ll = 0.015 #0.023
25 | # S2 horn
26 | Lh2 = 0.0135
27 | # rod length
28 | Lb = 0.060 #0.063
29 |
30 |
31 | # foot standby position in leg reference frame
32 | # oX is backward (RIGHT), forward (LEFT)
33 | Fx = 0.000
34 | # oY is exterior
35 | Fy = 0.000
36 | # oZ is upward
37 | Fz = -0.070
38 |
39 |
--------------------------------------------------------------------------------
/SMSUtility/id_frame.py:
--------------------------------------------------------------------------------
1 | ## http://www.science.smith.edu/dftwiki/index.php/Color_Charts_for_TKinter
2 |
3 |
4 | from tkinter import *
5 | #from tkinter.ttk import *
6 | from protocol2 import sign
7 | import time
8 |
9 | class id_frame(LabelFrame):
10 |
11 | def __init__(self,window,protocol):
12 | super().__init__(text="ID")
13 | self.protocol = protocol
14 | self.labels = {}
15 | self.entries = {}
16 | self.lists = {}
17 | self.variables = {}
18 | self.row = 0
19 |
20 | self.current_id = 1
21 |
22 | # update button
23 | button_update = Button(self,text="Update",command = self.update)
24 | button_update.grid(column = 0, row = self.row, sticky='we')
25 | self.row += 1
26 |
27 | # list
28 | self.lists["ids"] = Listbox(self)
29 | self.lists["ids"].grid(column = 0, row = self.row, sticky='w')
30 | self.lists["ids"].bind("<>", self.select_id)
31 | self.row += 1
32 |
33 | # startup auto ping and update list
34 | self.update()
35 |
36 |
37 | def gui_spacer(self,text_label):
38 | label = Label(self, text = text_label, anchor="w", justify=LEFT)
39 | label.grid(column = 0, row = self.row, sticky='w')
40 | self.row += 1
41 |
42 | def update(self):
43 | counter = 0
44 | for i in range(1,20):
45 | print("ping servo ID:" + str(i) + '...')
46 | error, model_number, firmware_version = self.protocol.ping_command(i)
47 | #print("error:"+str(error))
48 | if(error==0):
49 | self.lists["ids"].insert(counter,str(i))
50 | counter += 1
51 | self.lists["ids"].selection_set(0)
52 | if self.lists["ids"].curselection():
53 | self.current_id = int(self.lists["ids"].get(self.lists["ids"].curselection()))
54 | print("self.current_id:"+str(self.current_id))
55 |
56 | def select_id(self,event):
57 | if self.lists["ids"].curselection():
58 | self.current_id = int(self.lists["ids"].get(self.lists["ids"].curselection()))
59 | print("self.current_id:"+str(self.current_id))
60 |
--------------------------------------------------------------------------------
/SMSUtility/ik.py:
--------------------------------------------------------------------------------
1 | import numpy as np
2 | import math
3 |
4 | from felin import *
5 | from intersection import *
6 |
7 | ##DEBUG #######################################################################
8 |
9 | # TRACE macro
10 | DEBUG = False
11 |
12 | def log(s):
13 | if DEBUG:
14 | print(s)
15 |
16 | ##DEBUG #######################################################################
17 |
18 | # return 3x1 vector (a (femur), b (tibia)) in RADIANS
19 | def ik(foot_position): # input 3x1 vector (x,y,z,1) in METERS, where x axis pointing forward, y axis pointing exterior, and z axis pointing upward
20 | log("foot_position:\n"+str(foot_position))
21 | # Angle Y
22 | Y = math.atan2(-foot_position[2,0],foot_position[0,0])
23 | log("Y: "+str(round(math.degrees(Y),0))+"deg")
24 | # Distance HK
25 | HK = math.sqrt(foot_position[2,0]**2+foot_position[0,0]**2)
26 | log("HK: "+str(round(HK,3))+"m")
27 | # Angle E
28 | E = math.acos((HK**2 + Lf**2 - Lt**2)/(2*HK*Lf))
29 | log("E: "+str(round(math.degrees(E),0))+"deg")
30 | # Angle S1
31 | A = math.pi - E - Y
32 | log("A: "+str(round(math.degrees(A),0))+"deg")
33 | # Knee position
34 | Kx = -Lf * math.cos(A)
35 | Kz = - Lf * math.sin(A)
36 | log("Kx:"+str(Kx))
37 | log("Kz:"+str(Kz))
38 | # Position B
39 | Bx = (Lt+Ll)/Lt*(Kx-foot_position[0,0])+foot_position[0,0]
40 | Bz = (Lt+Ll)/Lt*(Kz-foot_position[2,0])+foot_position[2,0]
41 | log("Bx:"+str(Bx))
42 | log("Bz:"+str(Bz))
43 | # A position at circle intersection
44 | Ax, Az = intetsection(Bx,Bz,Lb,S2x,S2z,Lh2)
45 | log("Ax:"+str(Ax))
46 | log("Az:"+str(Az))
47 | # Angle S2
48 | B = math.atan2(Az-S2z,-(Ax-S2x))
49 | log("B: "+str(round(math.degrees(B),0))+"deg")
50 | return np.array((A,B)).reshape((2,1))
51 |
52 |
53 | if __name__ == "__main__":
54 | print("Test Unitaire ik.py")
55 | foot_position = np.zeros((3,1)) # x,y,z
56 | foot_position[0,0] = 0.000
57 | foot_position[1,0] = 0.000
58 | foot_position[2,0] = -0.060
59 | print(foot_position)
60 | leg_joint_angles = ik(foot_position) # A,B
61 | print(np.round(np.degrees(leg_joint_angles),1))
62 | # return 0.0 90.0
63 |
64 | foot_position[0,0] = 0.000
65 | foot_position[1,0] = 0.000
66 | foot_position[2,0] = -0.060
67 | print(foot_position)
68 | leg_joint_angles = ik(foot_position) # A,B
69 | print(np.round(np.degrees(leg_joint_angles),1))
70 | # return 41.4 82.8
71 |
72 | foot_position[0,0] = 0.000
73 | foot_position[1,0] = 0.000
74 | foot_position[2,0] = -0.060
75 | print(foot_position)
76 | leg_joint_angles = ik(foot_position) # A,B
77 | print(np.round(np.degrees(leg_joint_angles),1))
78 | # return 41.4 82.8
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
--------------------------------------------------------------------------------
/SMSUtility/intersection.py:
--------------------------------------------------------------------------------
1 | import math
2 |
3 | def intetsection(x0,y0,R0,x1,y1,R1):
4 | dx = x0-x1
5 | dy = y0-y1
6 | ratio = dx/dy
7 | N = ( R1**2 - R0**2 - x1**2 + x0**2 - y1**2 + y0**2 ) / ( 2 * (y0-y1) )
8 | A = (dx/dy)**2+1
9 | B = 2*y0*(dx/dy)-2*N*(dx/dy)-2*x0
10 | C = x0**2+y0**2+N**2-R0**2-2*y0*N
11 | delta = math.sqrt(B**2-4*A*C)
12 | xi1 = (-B+delta)/(2*A)
13 | xi2 = (-B-delta)/(2*A)
14 | yi1 = N-xi1*dx/dy
15 | yi2 = N-xi2*dx/dy
16 | if xi1