PLC Quickstart for programmers and embedded engineers

This is everything you need to know to get a running start with PLCs if you’re already familiar with programming or engineering embedded systems. Programmable Logic Controllers have been around a long time and there are tons of online resources devoted to the devices but I’ve found these lacking when it comes to addressing the…

Read more

Quick Hack: controlling remote AC switches with Raspberry Pi/any MCU

Need to control some smart home switches, asap? That’s what happened to me, so I hit the hardware store and got a set of Noma RF AC switches, with a little remote, and hacked it up to automate the action. Get all the details and a little demo in this video:

Creating an I2C slave interface for a sensor or peripheral

You’re creating a stand-alone module to bundle a few hardware sensors, or have an independent microcontroller that stays awake and needs to wake the main system depending on configurable environmental triggers. What’s the easiest way to let this unit receive orders and communicate results? An I²C slave! Inter-Integrated Circuit–I²C–is specifically designed to provide an easy…

Read more

Inductive kickback made simple to grasp, easy to handle

This site is about much more than inductors but if you came looking for info on inductive kickback or inductors in general, this light crash course should make it clear in no time using a few random anthropomorphizations I’ve found useful. Inductors: the grumpy old man of passive components Inductors stay on top of current…

Read more

Eclipse saves my ass and the day

It started with the best of intentions, as these things are wont to do. What had begun as a test script, nothing more than the stub of an eventual server side implementation to catch data coming in from an embedded device, was quickly morphing into an actual project. Hm… getting serious and valuable: time to…

Read more

Extending the life of a cell connected IoT device

How do we maximize the useful lifetime of our battery powered, cell connected, IoT device? The obvious answer is to sleep and conserve power as much as possible but there are a few ways of doing this when dealing with M2M networks, like NB-IoT and LTE Cat M1, each with its own advantages and trade-offs….

Read more

Simplifying Assembly: Open Source Manual Pick & Place Assistance

Building prototypes is fun but can be a huge time sink.  Hunting around on the board–how many 10k resistors are there? where is R15? ugh. Thankfully, Colin O’Flynn created an program to help you while you’re acting as a meatbag pick and place machine.  MeatbagPnP is a python application that takes generated placement files and…

Read more

Quick & Easy Attitude and Heading Reference System

Though I’d used the Razor 9DoF and a few other IMUs, it’d been a few years since I got to play with an AHRS.  Recently, I got a request to tweak a system using the MPU-9250, a nine-axis (gyro, accelerometer and compass) MEMS device, to see how nicely we could get it to play. I…

Read more

Make: building AVR and Arduino firmware on the command line

I’ve had a few requests from visitors to my old (and now defunct) electrons site for the AVR Makefile.  Originally created in 2003, and finally included in the resources for an AVR-related Linux Journal article back in 2005, it turns out it’s still pretty useful so I’m replicating the original Makefile and instructions here, with…

Read more

A dive into the guts of firmware: Getting the FT90x toolchain working with mikroprog for FT90x

So you’ve got an FT90x–a cool IC that lets you behave as both a USB device and USB host–and you’ve coded for it using the sweet GCC/Eclipse toolchain. Thing is, now you want to burn your shiny new firmware but you planned to use a mikroe mikroprog for FT90x to do the job only to…

Read more