You are currently browsing the iseb6 tag archives.

Waiting Again

Posted 2012.07.31 9.12 in Computers/Internet/Technology, Pointless Blather

Back to the waiting once again. I hate this part.

There was a week or two there where I managed to distract myself with some photography fun, had a nice daytrip and that sort of thing.

But now it’s just back to waiting, hoping the mailperson brings me some goodies.

I’ve about exhausted all the coding and testing I can do using the partialy-built-out rejected board. I’ve added more modes, more functions and features. But I can’t add or test sensors without building them, and I can’t do that on the reject board – I have to wait for the good board before soldering the expensive bits.

Here is one of my favorite new features – it’s not useful or informative, it does not accomplish anything. It’s just fun to look at. That’s right, it’s Conway’s Game of Life running on the ISEB-6 Mk II.

Hey, with 128kB of flash and 16kB of ram, there’s room for all kinds of crazy stuff in there.

Board Renders

Posted 2012.07.16 9.30 in Computers/Internet/Technology

This morning I put in the order for Rev. 2 of the ISEB-6 Mark II circuit boards.

Many thanks to Laen of OSHPark who helped me sort out a problem I was having with the top silkscreen layer!

Now it’s back to the waiting game again… will have to try and find something to keep me occupied till the boards come in.

Beautiful

Posted 2012.07.15 14.18 in Computers/Internet/Technology

I’ve been working on this on-and-off for the past couple days – a second revision of the custom circuit board for my ISEB-6. After learning from all my mistakes on the first revision, this one is a thing of beauty, if I do say so myself.

It’s got a great big gorgeous ground plane, on-board USB port and FTDI chip, all the same sensors and expansions as before, but I think it’s much more neat and tidy than the first attempt.

Read more »

The Good, The Bad, The Ugly

Posted 2012.07.12 10.10 in Computers/Internet/Technology

So twelve or fourteen hours into playing with my custom circuit board for the ISEB-6 Mark II, and I’ve been compiling a list of the things I did well, the things I did poorly, and the things that were just plain dumb.

The Good:

  • It ‘works’, more or less. That is, the uC functions, I can upload programs to it, and it accepts and runs them.
  • The screen works. This is more than just a hardware thing, as I had tweaked the library to use hardware SPI rather than software SPI, to get about a 50% bump in speed, and this was the first test of that library mod that wasn’t on a breadboard.
  • The buttons and indicator LEDs work.
  • The LiPo charging circuitry works.

So all in all, there’s some legitimate successes there. On the other hand, there’s some oopses too. Somewhere between submitting the board for fabrication, and actually receiving the boards back, I started to realize my mistakes. Having the board and testing it, confirms some suspicions and adds new problems to the list.

Starting Over from Scratch

Read more »

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.

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.