Beagle Blues

I’ve been having a lot of fun with my Raspberry Pi boards lately, as I’ve described in a few of my prior posts. With that under my belt, I decided to get out my BeagleBone Black and put it to use.

Unfortunately, I did something terrible to it – or just made a simple undiscovered error. When I plugged it in, my PC recognized it as as drive, as it’s supposed to. However, after downloading and installing the latest version of the drivers, that situation changed. I can no longer see it as a drive, I can’t see it on wired Ethernet, and I can’t see it on WiFi. I get te same results when trying to boot natively, and with a micro SD the most recent Ubuntu distribution. Yyargh

Update – I got it working. I just flashed Ubuntu onto the BBB instead of boothing from the SD or the old eMMC image. I’m thinking about putting ROS on it now and see what I can do with it.



Raspberry Pi Zero stack-up

Not stack-up, as in PC board layer stack-up, but add-on board stack-up…

The LiPoly board is working fine, as detailed in my prior posts. The USB hub board is also working. The stack shown here has the Pi Zero and both boards. As shown the D+ and D- lines from the USB hub aren’t connected to the Pi.

For the moment, I connect them with a cable, but I’ve got a small interconnect PC board on the way. With that, I won’t need extra cables and won’t need to hard solder the boards together. I’ll post pictures when it comes in.


She’ll be coming ’round the mountain when my boards come in

Raspberry Pi UPS

I built up two more of my Raspberry Pi LiPoly battery back up boards today. After doing so, it occurred to me that, in addition to allowing for portable use of a Raspberry Pi Zero, as I had originally intended, the board, with a few minor modifications, will work quite well as a UPS (uninterruptible power supply).

I wired the output from the comparitor to GPIO 21 on the Pi expansion header. I’ll be able to monitor it to detect when the external power is off. I can then gracefully shut everything down.

Without anything else running, a small 150 mAh battery will give me about 40 minutes run time with a Pi A+, and about 20 minutes with a Pi 3. Add in peripherals, and it will go down a bit from there. Regardless, it will have plenty of time for a clean shut down, or to wait out a short power outage.

The cover image here shows my Pi A+, and my Pi 3 with their UPS integrated. I still need to drill a hole in the case lids so I can flip the power switch. Otherwise, I’ll have to pop the lid off if I want to completely shut it down. Not a big deal, but still something I should do.


Pi Zero LiPoly – Final

Pi with my LiPoly board

My Pi Zero LiPoly board was working, but not exactly in the way it’s supposed to. Charging was fine. Powering the Pi from the battery, fine. Th problem came on the net MCP_IN, in the schematic below. I was reading voltage at the test point for MCP_IN, JP4.

Schmatic v1.2Either the comparitor wasn’t comparing properly, or the MOSFET wasn’t blocking all current when shut off. Or, something else was wrong.

That “something else” was a pretty rookie mistake. See if you can find it before looking below…

Error in v1.2Long enough. My comparitor was wonky, because it was unpowered, as you can see in the image below. +5 volts doesn’t actually connect to the +V pin on the comparitor chip.

Fixed that and it works exactly as expected now.

Pi Zero USB

Pi Zero USB hub

I’m far from the first person to put together a Pi Zero USB hub. In fact, mine is loosely based on the open source design from @richardhawtorn, which was based on the design by @MakerBro.

The key difference is that I removed one of the USB A ports in exchange for a reduced footprint. As much as possible, I’d like my Pi Zero boards to have the same footprint. This design allows for a small USB WiFi adapter to be plugged in while remaining within the Pi Zero board outline.

Pi LiPoly charger on Pi day

Pi with Zero charger

I considerably reworked the design, and now have one of those boards built up.. I put a P channel MOSFET on the power line going into the MCP73831 LiPoly charger chip, which is the Pi 5 volt line. The power line out, has a Schottky diode, and then goes to the Pi 5 volt line. I use a comparitor across that diode to switch the input MOSFET on and off.

1-20160314_205324If I’m running from the Pi, and charging the battery, the cathode of the diode has 5 volts, while the anode has the about 4 volts coming out of the charger chip, keeping the comparitor off. When I disconnect the Pi power supply, The anode has the 4 volts from the battery, and the Pi 5 volt line has that, less the voltage drop from the diode. This sets the comparitor, which turns off the MOSFET. That way, I won’t be feeding a low voltage back into the charging chip when running from battery.

After the Schottky diode drop, I get about 3.7 volts on the Pi 5 volt line. That’s enough for the 3.3 volt LDO regulator on the Pi. Most 5 volt peripherals won’t be able to run, but the Pi and 3 volt peripherals will be fine.


This is a bit of a late entry on Pi day, but rounded, today is 3.14.16

Simblee Breakout Shield – Almost

Simblee breakout shield

I got the blank PC boards in for my Simblee breakout board Arduino shield. They look nice, and I started to build one up. Fortunately, I thought to only partially build it up for test purposes. Unfortunately, I didn’t do a continuity test on the board before I started. It’s got a short between +5 volts and ground.

1-20160306_140029The other blank boards are fine, but I didn’t check this one before putting parts on. I’ve only got four components that sit on +5 and ground, and I’ve removed, tested, and replaced all of them. Chances are it’s the board, but I can’t say with 100% confidence.

I would throw some parts on another board, but my small-tipped soldering iron has eroded to the point where it’s not usable on such small parts anymore. I’ve got a spare tip. I just don’t know where it is at the moment.

So, what does this board do exactly?

It takes one of the Simblee Bluetooth boards and puts 3 volt to 5 volt line level converters on each pin so it can be used on a standard Arduino.


Are you there Moles? It’s Edgar.

The World’s Geekiest MP3 Player

Launchpad and capacitive touch booster pack

I’m helping put together¬† the Wireless Mesh Networked “Hello There!” badges for the upcoming 2016 Boston ESC (Embedded Systems Conference). My biggest contribution is that I got my company, Screaming Circuits, to assemble all of the badges for free, and I got Sunstone Circuits to fab the boards for free. Beyond that, I’m just trying to customize mine, so it will be just a little different than everyone else’s. [Read more about the badge here]

David Ewing, of Synapse-Wirelsss designed it to use their SNAP wireless engine, and display things on an 8×8 LED matrix. It’s also Arduino hardware compatible, which brings me to the world’s geekiest MP3 player.

I’ve got a 7-band equalizer Arduino-shield that I designed a while back with Max, who wrote the linked article above. I’m going to put that on my badge, with a microphone and turn my badge into a 1950’s style robot voice display.

Lauch pad and equalizer shieldAs a music source, while writing the software, I pulled out a Ti MSP430 Launch Pad development board with an “Audio Capacitive Touch” booster back, as shown on the right.

I acquired the Launchpad and booster pack back in 201, when I was writing for the website Microcontroller Central. I haven’t used it since then, but after bringing it back out, I might end up inspired to build it into some new project. More on the badge later.


Robots good. Neurotic thermonuclear devices bad.

Pi Zero In Hand

Raspberry Pi Zero

I own a decent variety of Raspberry Pi models. I’ve got an old B, a Pi 2, an A+, and my Zero came in the mail today. Unfortunately, I wasn’t able to buy the $5.00 version, but had to buy it in a combo pack from Adafruit. I got the “Budget pack, product ID 2817”, for $29.95. See: It’s literally in hand:

Pi Zero in-handDon’t get me wrong. It’s a really handy set of accessories that’s included. It’s just that, in my case, I already have most of it. If you aren’t fully accessorized, buying a combo set like that is the way to go. If I need more later, I can just buy the $5.00 version (if it’s ever in stock).

These things go quickly. When the Zero first came out, Adafruit had the combo packs in stock, but they were out in a few days. Last week, they came back in stock (still no unbundled), but are already out just a few days later.

Pi with my LiPoly boardI’ve seen a number of people lament the limited usefulness, since it’s so connection poor. If your plan is to use it as a stand alone device, they have a point. You would likely be better served with one of the other models. But, that’s not my intention. I’m designing a set of same-size boards that will be the basis of specialized systems. The LiPoly battery charger / power pack shown on the right, is my first. I’ve got an I2C I/O board almost ready for fab, and I’ll follow that up with a motor control or two.

This might be a good way to look at it: The bigger Pi boards are better suited to use in software or OS training, or as stand-alone computers. The Zero is ideal for hardware design training.

Yeah, yeah. I know. Nobody cares about the Zero anymore because the Pi 3 just came out.


I was ionized, but I’m better now.¬†

Welcome Edison

Intel Edison

As I wrote earlier, I now have an Arduino 101 to play with.¬† I’ve also got an Intel Edison, which can run a small Linux distribution and act as an Arduino clone. It’s a lot more serious than the Curie or pretty much any other Arduino I happen to own, with a 500 MHz, dual core Atom, sporting a Gig of program RAM and 4 GB of on board storage.

SparkFun baseboard for Intel EdisonThe Edison doesn’t have any easily accessible I/O – everything is brought out to a high density 70 pin connector. So, you can’t really use it without some sort of a base board. I got the basic USB board from SparkFun, and I plan to make a few of my own. If you don’t have access to a professional assembly house (like I do in my day job at Screaming Circuits) you should probably get one of the boards that makes the I/O accessible on a 0.1″ header strip.

I ran a program to calculate out the first 5,000 prime numbers as a very rudimentary benchmark. It took about 20 seconds on the Edison, about 50 seconds on a ChipKIT uc32 (with a Microchip PIC32), about 2:30 on the Arduino 101, with the Curie, and… my Arduino Uno is… still… working… on… it…

The Edison is more complex to set up, although getting the Arduino IDE powering it wasn’t any more difficult than the 101. Out of the box, it runs a super stripped down distribution, but you can install a more full-featured Linux if you want. It’s got built-in Bluetooth, and built-in WiFi, which is pretty handy. I changed the name of my Edison to “Tesla”, so it’ll show up as that in my router.

The Uno finished up in about 15 minutes. No surprise, but it does hint at how much more you’ll be able to wring out of some of these new “Super Arduinos.”


Help stamp out and eliminate redundancy, and maybe ambiguity, or maybe not