-
Notifications
You must be signed in to change notification settings - Fork 410
Development
- gcc-arm-none-eabi-gcc https://launchpad.net/gcc-arm-embedded/+download
- stlink https://github.com/texane/stlink
- dfu-util
- For windows: STM32 virtual COMport: http://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-utilities/stsw-stm32102.html
Linux/Mac? Add your username to the dialout group to be able to access the com ports. If you have used the Arduino IDE before, this is probably already set:
sudo usermod -a -G dialout username
Linux udev rules:
SUBSYSTEM=="usb", ACTION!="add", GOTO="objdev_rules_end"
#stmbl
ATTR{idVendor}=="0483", ATTR{idProduct}=="5740", ENV{ID_MM_DEVICE_IGNORE}="1", GROUP="users", MODE="0666"
#ST USB bootloader
ATTR{idVendor}=="0483", ATTR{idProduct}=="df11", GROUP="users", MODE="0666"
LABEL="objdev_rules_end"
if you get AT commands showing up in servoterm: http://www.pezzino.ch/stm32f3-discovery-usb-virtual-com-port/
STMBL has an USB bootloader to flash the f4. This requires dfu-util to be installed.
To enter the bootloader type bootloader
in Servoterm.
Flashing with dfu-util can be invoked by make btburn
. If dfu-util detects multiple targets, make sure to connect only one STMBL board. The bootloader should be entered automatically. If not, adjust the printf statement in the btburn target to your device.
When the firmware is corrupted, or to flash the f1 micro controller on the high voltage side, you need to flash via SWD (serial wire debug). In the future it will be possible to flash both MCUs with the bootloader, and also work if a firmware on the MCU is corrupted.
The bootloader can also entered by shorting DIO to GND.
SWD requires an st-link programmer which can be found on ebay, or on any STM Discovery board. Install stlink: https://github.com/texane/stlink
Flash via SWD:
make boot_flash
for the stm32f405 bootloader
make hv_flash
for the stm32f103 main app (high voltage side)
JP1 and JP7 are the SWD headers for the f1 and f4 respectively.
To use an stm32f4 discovery as an stlink programmer:
- remove both jumpers from CN3 on the discovery board
- connect pin 2,3,4,5 of the SWD connector to CLK,GND,DIO,RST on the STMBL board
make burn
Mostly new stuff, should always work.
Experimental new stuff, not guaranteed to always work.
Simulation and PID stuff, may be broken at any time.
New hal component format
New terminal software using wxMathPlot. experimental.
f1 firmware development for the troller.