Lots of movement on the logic board today.
Instead of printing and assembling 16+ LED boards plus a logic board, why not just put it together (like PB&J) onto one board? Then I only need to attach one PCB to the enclosure, and the less things I need to do myself, the better.
Below you can see a Fritzing printout taped to a 1/2″ piece of foamcore inside a prototype enclosure. I expect that the base will be thicker in order to house more stuff, and by stuff I mean at least a battery and charging mechanism, and so that I can hold the Lamp without touching the glass.
As I was showing this around the office, a gauntlet was thrown down: why use an Arduino Uno r3 when I could use a smaller version without any penalty in processing or functionality, with the added gift of miniaturizing the stack? I didn’t have an answer to this, except, “Umm.”
So challenge accepted!
I have now integrated an Arduino Pro Mini 5v into the PCB stack. I also added some power flexibility by adding a power mounting block and an external 5v voltage regulator, even though the Pro Mini can accept up to 12VDC and has a built-in voltage regulator. I wanted to split out that function so that the Arduino doesn’t have to do any additional work. Also, I don’t know exactly how much power the main light will take, and I want some headroom to attach the largest battery I can safely source.
You might remember, dear reader, that I originally started this experiment using an Arduino Pro Mini 3v3 board (oh how we go round the bend again). I decided against reusing the 3v3 board because the GPS module which I found to be most stable needs 5v and I don’t want to go around shifting voltage where I don’t need to. I’m all about reducing complexity now.
With that in mind, I am certainly thinking about removing IC3 & IC4; IC1 & 2 run the 16 compass LEDs, while IC3 & 4 are two additional shift registers which are legacies from my original idea to build my own LED lighting array. I am now considering using an LED string such as this one sold by Adafruit or a single point source I can vary in intensity (yet to be sourced). Moving my main power supply from a 3v3/5v LiPoly source to a high voltage battery would open up more lighting sources I could use efficiently.
Adafruit and Sparkfun orders placed, let’s play with it when they arrive.
Building on the Compass PCB prototype 01 I’ve updated the PCB so that I can install the 16 boards easier, along with doing some little things to reduce the amount of wires which will need to run this array.
I created a Ground Bus which I can solder to Board 01 from the Arduino GND and then daisy chain the next 15 together, so I get rid of 15 unnecessary wires. I then moved the +5v feed (which will come from the shift registers) to the top, so I can solder wire, straight, or angled headers depending on what I decide. Lastly, I moved the support holes to the center so that I will be able to flip the board one way or another to install it. This will allow me to manage the 16 wires which go back to the shift registers in a logical way. How I will do that is for another day, at least I know I have options, and I’m giving myself some flexibility here.
I’ve been thinking a lot about the Lamp’s compass. Creating a Lamp with built-in dowsing rod capability will both increase complexity – a major headache is dealing with all the shift registers and the accompanying 16 LED’s – not to mention the added power load required to drive an accelerometer and magnetometer continuously. But it will be cool. And that’s the whole point, right?
Why do I need both an accelerometer and a magnetometer. The magnetometer is self explanatory: I need to know which way is magnetic north and compare that to the local Lamp heading so I can turn on the correct LED to point me in the right direction. I don’t have perfect balance. The accelerometer is essential to compensate for a non-flat magnetometer reading. I can also get fancy and begin to compensate for magnetic declination by both reading the accelerometer and the GPS location. If I want to get fancy.
I’ll deal with the power consumption and compass later, but right now the thought of custom making then soldering 16 LED housings to make a hexakaidecagon (hexadecagon) makes me want to run down the street. Luckily, I’ve been messing with Fritzing Fab and designed my own little LED PCB which will hold the LED, a resister, pins to go to ground and to the proper shift register, and mounting holes. At US$2.15 per board each one isn’t exactly cheap, but I will have a consistent and rugged board to mount the electronics to and then to an internal housing. Kit-bashing my own would both be more time consuming and I would have 16 times to foul it up.
I tried to fabricate my own LED harness with MakerBot, but it just was a pain in the butt to fab and then I still had all the electronics to deal with anyway. I might have to fab one anyway to hold the PCB’s but that will just give me another factor of safety with the electronics.
As it is, this board might win as the most simple board produced by Fritzing, but you try to create a run of 16 (or 32 in case I mess up) boards yourself. I’m going to rely on mass production on this one.