I stumbled, and made progress on my Simblee breakout shield. If you didn’t see the first installment, check it out first.
Since the first post, I built up a non-shorted board. It seemed mostly okay, except that it gave me 3.9 volts on the 3 volt side, and the same on the 5 volt side. The answer to the puzzle lead me to one of the downfalls of open source hardware (well, it’s only a downfall in combination with poor practices). That is, not knowing what the original designer had in mind.
I took a look at the Arduino 101, which uses a 3 volt Intel Curie module. The Arduino 101 uses a Texas Instruments LSF0108PWR line level converter chip. Works for them, so I designed it in. Folly me, I didn’t read the data sheet close enough. It’s an open drain device and needs pull-up resistors on the I/O lines.
The 101 didn’t use pull-up resistors. It gets by because most 5 volt devices are fine with the 3 volt “1”. They’re really just using the chip as a5 volt to 3 volt done converter and not worrying about going up to 5 volt line levels.
Why not push ups?
I solved the final issue with my LiPoly board. It was a minor one. The yellow LED is supposed to indicate whether the LiPoly battery is on or off. It was always on. In a Captain Obvious moment, I discovered that it was always on, because I told it to. I had connected both sides of the DPDT switch together. Why? I don’t know.
But, with a lifted pin, one cut trace, and a short mod wire, it’s all set.
I already have the next set of PC boards on the way, so they’ll still require this mod. It’ll be easier to deal with before there are parts on the board. I may not order any more boards, with this fixed. I’ll have plenty for my own uses, so unless I decide to sell it, there won’t be a need. I’m thinking about a Kickstarter for this though…
Poly want a… Poly want a… Poly want a Lithium?
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.
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
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.
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.
Either 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…
Long 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.
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.
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.
If 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
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.
The 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.
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.
As 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.