Hackswell

Post Reply
User avatar
Hackswell
Posts: 21
Joined: Sat Mar 14, 2020 9:04 pm
Location: State of Confusion

Hackswell

Post by Hackswell »

Hey, y'all! I'm just starting out with Arduino-like projects. I've got a Teensy 3.2, and have a few ESP32-WROOMs on the way. But yesterday... I got these in the mail! My WeAct STM32F4x1 boards! One is a F401 (84MHz, 256/64KB RAM), and the other a F411 (100MHz, 512/128KB RAM). I'm excited to learn how these boards work and learning about embedded programming in general.
Attachments
STM32F4x1.jpg
STM32F4x1.jpg (76.13 KiB) Viewed 3916 times
ag123
Posts: 1656
Joined: Thu Dec 19, 2019 5:30 am
Answers: 24

Re: Hackswell

Post by ag123 »

this is a nice board, i made a project out of it
viewtopic.php?f=10&t=116
User avatar
Hackswell
Posts: 21
Joined: Sat Mar 14, 2020 9:04 pm
Location: State of Confusion

Re: Hackswell

Post by Hackswell »

Heh... These boards aren't the easiest to use, are they? The Teensy 3.2 spoiled me!
I've already managed to accidentally wipe the HID Bootloader and Bootloader from the F411! I'll just have to wait for the STLink adapter to come so I can put them back on! No idea why USB programming isn't default!
ag123
Posts: 1656
Joined: Thu Dec 19, 2019 5:30 am
Answers: 24

Re: Hackswell

Post by ag123 »

there is a slightly cumbersome way to install a sketch, press both reset and boot0. release reset and hold boot0.
then release boot0 after the next second. it place the stm32 in on-chip dfu firmware download mode !
connect usb
install the sketch with
http://dfu-util.sourceforge.net/

Code: Select all

dfu-util -a 0 -s 0x8000000 -RD sketch.bin
^note it means you need to build your sketch for the default 'no bootloader' (or internal boot loader) setup i.e.install address 0x8000000

you can use st's stm32 cube programmer too if you don't use dfu-util
https://www.st.com/en/development-tools ... eprog.html

the more convenient way is to get a st-link v2
https://www.st.com/en/development-tools/st-link-v2.html
https://www.adafruit.com/product/2548

it is a swd (jtag) programmer the 4 pins at the end are the swd pins. for this just connect the wires appropriately, no need to fiddle with the boot0 and reset buttons. it helps to connect the pin intended for reset on the st-link to the reset pin on the board. some of the firmware installers does a 'connect under reest' when downloading firmware. 'connect under reset' is needed if the debug pins are disabled.

the stm32f4xx doesn't really need a usb boot loader as st's own dfu boot loader is literally there in the chip itself

the st-link v2 is also useful for the other purpose which is debug itself, really handy to solve some difficult problems if you didn't figure out what may be wrong with the code
ag123
Posts: 1656
Joined: Thu Dec 19, 2019 5:30 am
Answers: 24

Re: Hackswell

Post by ag123 »

this chip and board is rather nice to work with. compared to the stm32f103 blue pills
this is a stm32f401 or f411
it has - some 64 k sram 128k (128 sram and 256 flash for f411 i think) flash - stm32f103c8 pill boards has only 20k sram
this is a cortex-m4 with fpu in on chip so floating point calc is much faster
it has that 'art accelerator' - the on chip cache and pre-fetch buffer - so some of the codes can literally run at 0 wait states from flash
this is impossible on the stm32f103. it is exploited to test the whetstone benchmarks that gives 'psuedo' Mflops of performance
it is much faster than stm32f103 even at the same mhz frequencies for this reason
the 'psuedo' whetstone benchmarks makes the stm32f4xx looks like they run as fast as the old intel p4 for the single precision mflops, making those benchmarks 'unbelievable'. e.g. old intel p4 runs at 1ghz and stm32f401 runs at 80mhz both delivers say about 100 single precision mflops on the whetstone benchmark. but of course the p4 can do 64bits dp math at much faster speeds.

it is rather 'simple' has 3 spi ports (stm32f103c8 has only 2)
1x2.5 msps adc (f401), no dac same as stm32f103
f411 has sdio i think
the rest are pretty much similar
the main gain is the fpu and more sram which helps e.g. you want a big adc buffer etc. on stm32f103 one normally needs to be rather stingy on the buffer as that 20k sram is shared with everything else
the other thing is the built-in on chip dfu boot loader, you only need a usb cable to install firmware
another thing for the more 'advanced' users, the reset and clock control (PLL pre-scalers) is quite a bit more flexible than stm32f103
hence one can easily overclock this board to get some extra mips / mflops
Post Reply

Return to “Let us know a bit about you and your projects”