Micropython and C Play Together Better

Python is a versatile, powerful language but sometimes it’s not the best choice, especially if you’re doing work in embedded systems with limited memory. Sometimes you can get away with MicroPython for these cases, but the best language is likely C or assembly. If you’re really stubborn, like [amirgon], and …read more

Continue reading Micropython and C Play Together Better

Debug Superpowers Bring An STM32 Back From The Dead

When a processor has a fault it can leave what looks to be precious little in the way of cause and effect. Debug-by-print-statement works surprisingly well in simple cases, but where in a desktop environment you would drop into a debugger to solve trickier problems this can be an onerous …read more

Continue reading Debug Superpowers Bring An STM32 Back From The Dead

The Joy Of Properly Designed Embedded Systems

The ages-old dream of home automation has never been nearer to reality. Creating an Internet of Things device or even a building-wide collection of networked embedded devices is “easy” thanks to cheap building blocks like the ESP8266 WiFi-enabled microcontroller. Yet for any sizable project, it really helps to have a …read more

Continue reading The Joy Of Properly Designed Embedded Systems

Machine Learning on Tiny Platforms Like Raspberry Pi and Arduino

Machine learning is starting to come online in all kinds of arenas lately, and the trend is likely to continue for the forseeable future. What was once only available for operators of supercomputers has found use among anyone with a reasonably powerful desktop computer. The downsizing isn’t stopping there, though, as Microsoft is pushing development of machine learning for embedded systems now.

The Embedded Learning Library (ELL) is a set of tools for allowing Arduinos, Raspberry Pis, and the like to take advantage of machine learning algorithms despite their small size and reduced capability. Microsoft intended this library to be …read more

Continue reading Machine Learning on Tiny Platforms Like Raspberry Pi and Arduino

Poisonous Pi – The Execution of a Raspberry Pi Hacking Workshop

43 years ago, a small team led by Chuck Peddle changed the way society computes today. In 1975, encased in plastic, this 40-pin DIP 8-bit microprocessor, known as the MOS Technology 6502, made its debut. Why should you care? Not only was this the cheap… Continue reading Poisonous Pi – The Execution of a Raspberry Pi Hacking Workshop

Know the Load with this Simple Microcontroller CPU Meter

How do you tell how much load is on a CPU? On a desktop or laptop, the OS usually has some kind of gadget to display the basics. On a microcontroller, though, you’ll have to roll your own CPU load meter with a few parts, some code, and a voltmeter.

We like [Dave Marples]’s simple approach to quantifying something as complex as CPU load. His technique relies on the fact that most embedded controllers are just looping endlessly waiting for something to do. By strategically placing commands that latch an output on while the CPU is busy and then turn …read more

Continue reading Know the Load with this Simple Microcontroller CPU Meter

Reading Bingo Balls with Microcontrollers

Every once in a while a project comes along with that magical power to consume your time and attention for many months. When you finally complete it, you feel sorry that you don’t have to do anything more.

What is so special about this Bingo ball reader? It may seem like an ordinary OCR project at first glance; a camera captures the image and OCR software recognizes the number. Simple as that. And it works without problems, like every simple gadget should.

But then again, maybe it’s not that simple. Numbers are scattered all over the ball, so they have …read more

Continue reading Reading Bingo Balls with Microcontrollers

JeVois Machine Vision Camera Nails Demo Mode

JeVois is a small, open-source, smart machine vision camera that was funded on Kickstarter in early 2017. I backed it because cameras that embed machine vision elements are steadily growing more capable, and JeVois boasts an impressive range of features. It runs embedded Linux and can process video at high frame rates using OpenCV algorithms. It can run standalone, or as a USB camera streaming raw or pre-processed video to a host computer for further action. In either case it can communicate to (and be controlled by) other devices via serial port.

But none of that is what really struck …read more

Continue reading JeVois Machine Vision Camera Nails Demo Mode

Snake On A BBC Micro:bit

The first of the BBC Micro Bits are slowly making their ways into hacker circulation, as is to be expected for any inexpensive educational gadget (see: Raspberry Pi). [Martin] was able to get his hands on one and created the “hello world” of LED displays: he created a playable game of snake that runs on this tiny board.

For those new to the scene, the Micro Bit is the latest in embedded ARM systems. It has a 23-pin connector for inputs and outputs, it has Bluetooth and USB connectivity, a wealth of sensors, and a 25-LED display. That’s small for …read more

Continue reading Snake On A BBC Micro:bit