You are currently browsing the electronics tag archives.

Testing! Pow!

Posted 2012.07.11 23.58 in Computers/Internet/Technology

All my pent-up impatience just came buzzing out all at once.

With my shiney new circuit board in  hand, I started soldering up the bare minimum for testing – LiPo charging circuitry, voltage regulator, ICSP port and FTDI port. And indicator LEDs.

So far so good, the voltages were good and the LEDs worked ok. Mind you, I didn’t use the good LEDs on this. No, I already knew there’d have to be another revision because I made some mistakes on the boards…

Anyhow, power tests were passed so I added the micro-controller — an Atmel ATMega1284P — and an 8MHz resonator. Tricky soldering – the pins on the micro controller are 0.4mm wide and have 0.8mm centre-to-centre spacing. There’s 11 to a side.

My two biggest concerns at this point were that a) I might have botched up the soldering, and b) I might have totally botched up the circuit board when I laid it out.

So I plugged a programmer into the ICSP port and tested it, and presto! I had communications!

My plan was to continue using the Arduino IDE to program for this, and fortunately there was already a ‘duino based on the 1284p, called the Sanguino. Unfortunately it isn’t up to date with the latest (1.0.1) version of the IDE, and I’ve migrated everything to 1.0.1 so I ended up not using the Sanguino setup.

The only thing I did was take their 1284p bootloader, and modify it to match my board layout. Then I created my own 1284p variant in the IDE and set it to work with my customized bootloader.

I had done all that last week and without any way to test, so my first real test today was to burn my bootloader. This worked (so the microcontroller, resonator, and ICSP were definitely working correctly) but I could not write sketches from the IDE so I wasn’t sure if I had screwed up the FTDI port or not.

Further testing however revealed that my 57600baud bootloader was too ambitious for the 8MHz clock speed. At 19200baud the bootloader runs just fine, albeit slower.

So another passed test! I had working power, a working micro, working ICSP port and working FTDI port.

Next thing was to plug in a screen. That was slightly challenging as my big blunder with this board was laying out the screen at the wrong size – the holes on the board are too narrow for the holes in the screen. And I didn’t want to hook the screen up permanently since the board isn’t final. So I put in some female headers, and bent a few to fit in my misplaced pin holes.

And voilla! The screen works!

Lots of successes for a single night, but I’m not going to continue populating the board. I’ve left off all the sensors as they’re the most expensive parts (gps + compass + humidity + pressure = $85). I have to go back to the ‘drawing board’ and start fixing all the mistakes I made on the board.

I’m also running some additional tests, as I’ve noticed some problems with the ADC readings (analog, eg. temperature and voltage) that shouldn’t be happening, and I have to figure out if they are software or hardware.

Still, not bad for a single night – and it gives me stuff to work on for the next few nights.

Long Weekend Update

Posted 2012.06.30 10.33 in Pointless Blather

It’s a long weekend! Yay!

Tomorrow is Canada Day, which is about the only time of the year I do any entertaining. So rather than relaxing and slacking off for the long weekend, I’m really busy getting ready for tomorrow – got some family and friends coming, gotta make sure the house, the yard, and the food, are all just right.

In other (aka electronics) news, I’m waiting for my ISEB6-MkII boards to come back from the fabricator. I’ve heard that the boards have been made, they just have to be separated and mailed. So probably another 10 to 14 days to go.

In the meantime I’ve got most (but not all) of the components onhand now. I did my Digi-Key order last week, and in my haste forgot a few things (and made a few typos, doh!) When the boards do arrive, I’ll start populating one, and get the last of the parts in.

The waiting is really frustrating though, and I have to continually remind myself not to go back into Eagle and keep tinkering with the design!

Apart from that, we’re in another little ‘heat wave’ again. Temps in the high 80’s outside, flirting with 80’s inside. I do have A/C but I’m too frugal to turn it on. It’s more fun to tough it out. And if it does feel too hot, I just have to remember February. Any February.

Having my front door freeze shut so I have to chip my way out of the house, then shovel the walk, then scrape ice off the car… I’ll take a heat-wave any time thanks.

Anyways it’s not nearly as ‘bad’ as the heatwave last week – at night it’s still dropping into the 60’s, so I just open the windows wide at night to let the cool in. Then mostly-close them during the day to keep the heat out.

Oh and last thing, I finally found my instant coffee, but they’re still messing with me. They’ve changed the packaging from 150g to 100g. It was ‘on sale’ when I got it, but I’m skeptically waiting to see what the ‘not on sale’ price will be. If they sell it at the old price, that’s basically a 35% price hike.

Eagle Eagle Eagle Eagle

Posted 2012.06.22 9.25 in Computers/Internet/Technology, Hobbies

You know how when you get hooked on something new, it’s all you can think about? Like drawing schematics and routing traces on a circuit board? For the past week that’s almost the only thing in my head.

When I close my eyes I see a maze of red and blue lines, green dots, and skinny beige criss-cross lines. For those who aren’t familiar, that’s basically the default colours in Eagle for top traces, bottom traces, vias, and unrouted connections.

The freaky thing is, routing traces is fun! Like solving maze puzzles. You need to get this signal from here to over here. But you can’t cross any of the two dozen lines in between. And you can’t go outside the borders. And you can’t touch any lines – you can’t even get too close to any other lines.

So you snake up and down and left and right in between the lines, and when you’re completely blocked you dive down to the underside and weave around the lines on the bottom, then you pop back up again when the bottom is blocked, and finally you get to where you need to be!

And then you do that a hundred more times! And each time is harder than the last, because each time you route a trace, that’s one more trace that the next one has to avoid, and less overall space remaining available on the board.

So when the game finally ended, I had routed all my required signals, then I routed some extra pins, then I routed every last available pin on the microcontroller – even the ones that I had thought were totally trapped, I was able to find ways to break them out too.

This was all done by Tuesday – at that point there was nothing left to route, nothing left to tweak. So I spent another couple days just looking at it – admiring the patterns, and trying to find any flaws or mistakes.

Last night I finally submitted the designs for fabrication – using OSH Park’s service. They even gave me a rendering of what the board’s expected to look like:

Component Side

Solder Side

The lower part of the board with the buttons and battery connector is designed to be cut off – so it’s really two boards in one. This allows me to test it all in one-piece on the workbench, then separate the two parts for mounting on the leather bracer.

The Mark II version of the ISEB6 will have a whole lotta upgrades by the way… totally different uC, more sensors, more functions and features. It’s going to be awesome. So awesome that the PCB will be purple.

Yeah, that’s how awesome it will be!

Pow! Schematics!

Posted 2012.06.14 17.32 in Computers/Internet/Technology, Hobbies

Ok so Eagle is tough and the learning curve starts off very, very steep. But it seems like if you can get past the first 2 hours, it suddenly tapers off after that.

(Or click here for PDF version)

To get the above schematic to come out, not only did I need to figure out how to make a schematic in Eagle, but I had to make my own parts library and create four devices – the Pro Micro itself (as a discrete device rather than its own board and schematic), the OLED board, the compass module, and the Lilypad LED boards.

The reason I did this rather than laying out all those individual components was that I’ve assembled the ISEB6 out of these boards. That’s what it is. So it didn’t make sense to chart out the separate bits that go into each board – just get the boards. Or if you want to look at their schematics, get them from the source (Adafruit, Sparkfun.)

Note that 3 modifications were made to the Pro Micro board directly: the diode D2 was removed, which cuts the connection between UVCC and RAW. This prevents the LiPo from being exposed to 5vdc when a USB cable is connected. The Amber and Green LEDs were removed and hookup wire soldered to them, to connect to the two Lilypad LED panels. Oh and I removed the red power LED since it wasn’t needed. 4 modifications, then.

So if you’re looking to reproduce the ISEB6 yourself, hopefully the schematic alongside the build notes and the code (available here) should be enough.

Finally – I am already working on a Mark 2 version of the ISEB6 which in fact will do away with the Pro Micro board, and will have its own PCB (hopefully) allowing me to make it all neat and tidy and eliminate the rats-nest of hookup wire that forms the backbone of the current ISEB6.

Ok, Gonna Try Learning Eagle…

Posted 2012.06.13 13.35 in Hobbies

I’m going to have another shot at learning this Eagle thing. I’ve tried twice before and both times it made me want to cry (why does it have to be so difficult!) but enough people are using it that it seems to be the standard when it comes to schematics and pcb layouts.

Still, what ever happened to hastily-drawn pencil sketches on the backs of napkins?

Anyways, it would really, really be nice to get my own custom PCBs made now and then, for some of these projects. And it would be equally nice to be able to have a schematic to share.

If anyone can suggest a good tutorial, please let me know! I know there’s dozens of tutorials but I don’t know which ones are any good and which ones are crap.

 If I do manage to figure this beast out, then I’ll give myself two rewards – first, I get an Eagle badge from Adafruit! And second, I’ll get a custom PCB made for my ISEB-6 Mark II which will be loads of fun to assemble.

No deadline for any of this – maybe ‘end of summer’ but maybe not.


The Fun of It

Posted 2012.06.04 22.25 in Computers/Internet/Technology, Pointless Blather

So last week I did a write-up about my ISEB6, parts of which ended up making the rounds on various maker / tech blogs. I noticed a lot of people were wondering why someone would bother doing this? Why ‘waste’ so much time, money, energy, and effort making something like this?

The simplest answer is, for the fun of it.

Sure, there’s a level of enjoyment to be had from simply having the finished product, from using it. There’s the utility of it – it was designed to do a thing, and it does that thing. There’s the sense of novelty, that one might get from any new toy, be it a cellphone, computer, tv, or whatever. In this case all that is augmented or magnified by the fact that I built it myself.

When you build something yourself, you have the sense of achievement, in seeing something through from initial concept to final build. You have the knowledge and experience gained, from learning the hows and whys and whats. And you have the pride of knowing that you made something – you set a goal for yourself, and you accomplished it.

And there’s the sheer fun of solving problems and challenges. Physical computing projects like these give you the opportunity (or the challenge) to work with very limited resources. How many functions can you include, how many features can you code, when you are limited to 32kB in which to fit your entire program? And when you have only 2.5kB of RAM in which to execute that code?

Wearable projects add two more dimensions of limitations: Size and Power. How many features / peripherals can you add without making the whole thing too big / heavy / unwieldy? And how much power does everything draw? How long will it run before you need to recharge, or do you need bigger batteries?

I’ve seen a few comments that basically asked, why not just strap a smartphone to your wrist? The simplest answer there is, that’s not what I wanted. That might work for some people, of course. Find something that someone else has built that’s close enough, or good enough, buy it, settle for it.

Why settle though? I live in a world where if you want a specific product to do something the way you want it, if noone else has built exactly what you want, you build it yourself. Build it yourself and you have exactly what you want, the way you want it. And if it ever breaks, you have the know-how to fix it.

(A close runner-up is, buy something that’s mostly there, then hack it to make it perfect. Add those features, fix those functions, and get exactly what you want that way.)

Stuff does break of course. Especially when you’re building and experimenting and learning, all at the same time. Sometimes it’s part of the fun of the challenge, sometimes it’s less fun but you still roll with it. Last week the OLED screen died, I never figured out why but luckily I had a spare so I just replaced it.

Two days ago the Micro-USB port snapped off the LiPo charger. I consider that a component failure since it’s supposed to withstand plugging and unplugging. I didn’t have a spare charger board, so I’ve contacted the manufacturer to ask about a replacement, and in the meantime I did some delicate solder-surgery to enable me to keep using the broken one, for now. (That was less-fun.)

And since that write-up last week, I’ve made a dozen revisions and upgrades to the software, changed / improved some of the leather work, switched out the dull dark hardware for shiney brass, and added brass snap closures to keep it on my wrist instead of the elastic string I had started with. I still plan to redo the top leather layer to make it more attractive.

That’s part of the fun too – projects like these are never really finished. You can go on improving them, enhancing them, upgrading them, until the next big idea comes along.

Integrated Sensors Electronic Bracer

Posted 2012.05.27 23.34 in Computers/Internet/Technology, Hobbies

Introducing the Integrated Sensors Electronic Bracer (6), or ISEB6, a wrist-mounted sensor platform.

A comfortable wrist-worn leather bracer, that provides: time & date, compass heading, Exposure Value for photography, positional data, walking tracker (distance, time, average speed), galvanic skin response data, local temperature and humidity data, “alarm-clock” functions (alarm by time or countdown seconds alarm), and simple illumination / flashlight functionality.

The ISEB6 is powered by a small / lightweight Lithium-Polymer battery, running up to 48 hours usage on a single charge, and with a simple & fast on-board recharging system.

The ISEB6 is based around Sparkfun’s Pro Micro development board and Adafruit’s SSD1306 OLED display screen. The number six in the name refers to the number of sensors integrated into the bracer. It contains the following sensing circuitry:

  1. Illumination is measured with a TLS2561 digital luminance sensor.
  2. Magnetic fields are measured with an HMC6352 digital magnetometer.
  3. Location is detected with an MTK3339 GPS module.
  4. Humidity is measured with an HIH4030 analog sensor.
  5. Galvanic Skin Response is measured with a simple resistor dividor and gold-plated electrodes inside the bracer.
  6. Local temperature is measured using the on-board temperature sensor in the ATMega32u4 microprocessor.

In addition, the ISEB6 also utilizes two voltage sensors, but as these only monitor its own internal status they are not counted among the ‘listed sensors’.

Read more »