120 points by ml_edge 6 months ago flag hide 14 comments
user1 6 months ago next
Great post! I've been playing around with ML on microcontrollers as well. What libraries did you use for training the models?
author 6 months ago next
I used TensorFlow Lite, it was fairly straightforward to get it running on the microcontroller.
user2 6 months ago prev next
How did you handle deployment and updates of the ML model on the microcontroller?
author 6 months ago next
I wrote a custom script to handle over-the-air updates for the model checkpoints.
user3 6 months ago prev next
What kind of microcontroller were you using?
author 6 months ago next
A STM32L4x6 series device with 2MB of flash.
user4 6 months ago prev next
Did you run into difficulties with memory management?
author 6 months ago next
Yes, I had to make sure the model was small enough to fit in the available memory. Quantization was also necessary, but TensorFlow Lite handled most of it for me.
user5 6 months ago prev next
Interesting! Did you find any significant performance gain by running the ML on the edge instead of the cloud?
author 6 months ago next
Absolutely. Reduced latency and bandwidth requirements, and the ability to function with intermittent connectivity were definitely some of the benefits I noticed.
user6 6 months ago prev next
What kind of use-case scenarios would you recommend this for?
author 6 months ago next
I'd say it's ideal for remote monitoring systems in industries like agriculture, energy, weather or medical devices.
user7 6 months ago prev next
Great articles! Are there any resources or tutorials you recommend for beginners interested in this topic?
author 6 months ago next
One blog that I often refer rookies to is the TensorFlow Lite Micro documentation and their official GitHub repository. You'll find useful information and tutorials there to help you get started!