Skip to main content

Microcontroller

Candle Flame Oscillations as a Clock

Candle Flame Oscillations as a Clock

Todays candles have been optimized not to flicker. But it turns out when we bundle three of them together, the resulting triplet will start to naturally oscillate. Amazingly, the frequency is rather stable at ~9.9 Hz as it mainly depends on gravity and diameter of the flame. We detect the oscillation with a suspended wire and divide it down to 1 Hz.
BitNetMCU: Implementing Neural Networks on the “10-cent” RISC-V MCU without Multiplier

BitNetMCU: Implementing Neural Networks on the “10-cent” RISC-V MCU without Multiplier

·972 words·5 mins
BitNetMCU is a project focused on the training and inference of low-bit quantized neural networks, designed to run efficiently on low-end microcontrollers like the CH32V003. Quantization aware training (QAT) and fine-tuning of model structure allowed surpassing 99% Test accuracy on a 16x16 MNIST dataset in only 2kb of RAM and 16kb of Flash.
Ultra low power LED flasher

Ultra low power LED flasher

·1604 words·8 mins
Flashing a LED is certainly among the first set of problems any burgeoning electronics specialist is tackling, may it be by using an ancient NE555 or, more recently, a microcontroller to control the LED. As it turns out, we can turn any trivial problem into a harder one by changing its constraints.
The Nanite 85

The Nanite 85

·807 words·4 mins
The Nanite 85 ATtiny85 board, a very tiny breadboardable development board with USB bootloader and reset button.
Interrupt-free V-USB

Interrupt-free V-USB

·1785 words·9 mins
Background and implementation of an interrupt-free V-USB variant that allows to shrink the Micronucleus V2 bootloader while boosting USB throughput.