HOWTO

Eclipse saves my ass and the day
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
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
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
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
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

ReliableSPI: Ensuring reliable communications under difficult circumstances
ReliableSPI: Ensuring reliable communications under difficult circumstances

To do anything interesting, we need reliable communication across machines (e.g. over bluetooth) and oftentimes within as well, between components working together within a device.  In one of my last projects, I wound up dealing with mounds of unreliable comm and here I’ll go over how I got around it and a few of the…

Read more

Mobile Raspberry Pi 3/Zero W: Tips and Lessons Learned
Mobile Raspberry Pi 3/Zero W: Tips and Lessons Learned

I just finished a project that involved video processing in a portable, wirelessly connected, package: a perfect opportunity to get to know the newer Raspberry Pi Zero W.  Here I’ll go over a few lessons learned while making this little computer truly mobile.  The main point of interest is power: power (as in applied voltage),…

Read more

Creating a sensor or peripheral with an SPI (slave) interface
Creating a sensor or peripheral with an SPI (slave) interface

Designed to interact with a 16-bit I/O expander, the firmware was ready for testing.  Though I was still waiting on parts, I wanted to make sure it would all work as expected.  What’s an impatient developer to do?  Create his own SPI slave to replace the missing part, of course! If you’ve gotten anywhere beyond…

Read more

Real world Kicad project postmortem and more tips
Real world Kicad project postmortem and more tips

As a follow-up to my intro/tutorial, I’ll go over a few more lessons learned using Kicad including some tips that should be of help to anyone embarking on a similar journey. The power module project was selected for a first adventure using Kicad as it was relatively small while being non-trivial.  The circuit holds around…

Read more