Determine STM32 reset source
When your STM32 processor starts up from a reset, there are a number of possible sources for that reset. You may want to perform different initialisations depending on the exact source of the reset. A single register holds the flags which tell you why the processor was reset. It is…
Decimus 4 progress – minus a little smoke
It didn't take long to get the first Decimus 4 board on the bench for a build. This first one will serve as a static testbed for code development and sensor testing. After verifying that the power supplies were good, the LEDs, display, buzzer and pushbuttons were added for a…
Searching for the perfect screw
Here in the UK, we use metric fasteners. When you go shopping for small screws though, the only sizes you can generally get below M3 are old, awkward imperial sizes. Even if you are happy with M3, the variety of shapes and lengths is woefully inadequate. Imagine my delight when I found perfect screws on Amazon of all places. (more…)
Decimus 4 Begins
It has been more than two years since I promised myself that I would move on and build a new micromouse using the STM32 processor. Finally, I have done something about it. The new mouse is Decimus 4. (more…)
Some historic micromouse videos
Way back in 1985 was the 'First World Micromouse Competition'. This was not actually the first competition, nor was it really the first 'world' competition in the sense of having entries from around the world. Nonetheless, it was a major event. Just posted on YouTube is some video from that…
Adding DMA to the SPI driver with the STM32F4
Sending data over SPI with the STM32 using polling is simple and reliable but your processor is blocked, unable to do anything else until the transfer is complete. Direct Memory Access (DMA) allows you to initiate a transfer of a block of data and then carry on doing something else…
STM32F4 uses SPI for the MAX6966 LED driver
The STM32F4xx devices are not short of pins and they can be more flexibly used than on the STM32F1xx types. On a micromouse though, there is not a lot of physical space and I am not good at routing lots of traces around a board. Since I had already decided…
Using the STM32F4 internal oscillator
In an effort to minimise the amount of space taken up on my micromouse board, I wanted to use the internal oscillator (HSI) built in to the STM32F4 device I am using. As ever, working out how to set that up in code is not obvious. However, ST do have…