Saturday, January 23, 2010

Phase 2 is complete

I worked until 5am Friday morning completing the information I need to send in for Phase 2.  I got up after a nap and was preparing to email what I had done the night before.  In my email was a note saying that since they wouldn't start judging until Monday, we could submit our material through Sunday.

While I was pleased that I had another 2 days, I was disappointed they waited until the last moment to let us know.  I could have done with more sleep.

Wednesday, January 20, 2010

Code complete

I finished the code for the sensor board.  I plan to use an ATtiny44 with 4K Flash program memory.  The code compiles to 3720 bytes, so it seems there is room. 

Actually, it doesn't compile.  The Chibi uses an SPI interface.  The ATtiny series doesn't support SPI in the way that ATmega and above do.  An ATmega SPI works like a USART: you write a byte into a register and it gets sent.  In the ATtiny, you write a byte into a register, and then have to manually toggle the SCL line to shift the data out.  A silly "defeature" Atmel did so they could offer devices in different price tiers. 

But, I have just two days left to complete my contest entry.  So I am putting the code aside and working on costing the BOM, a quick power analysis, and writeup.  The writeup will have my known todo items in it.  I think full disclosure will be better than sending in code that won't compile and letting them discover it.

I'm off to Digikey to get prices now.

Monday, January 18, 2010

Never give up, never surrender

I had intended to post more often, but as the deadline nears, it is hard to take the time to craft a cogent post.

I discovered on Friday that the deadline for the round 2 submission to Atmel's Smart Design contest was delayed until Friday, the 22nd.  Four extra days that I really need.  I would not have made the deadline tomorrow. 

Monday, January 11, 2010

Good progress

I finished up the last bit of coding this morning, and made stubs for the RF routines.  Rather than face the problem of deciding on an RF solution, I decided to go ahead and try to get the code to compile.

It wasn't pretty.  Coding late at night results in repeating mistakes like "uint_8" instead of "uint8_t", and lOts of subtle capItalIzation errors.  I should typedef something easier than uint8_t, but it makes the code a little more obscure to someone looking at it later, such as judges.

Sunday, January 10, 2010

Light at the end of the tunnel

I finished coding most of the main controller today.  Reducing the user interface to something more manageable really helped.

Friday, January 08, 2010

Time just keeps ticking away

Since the holidays are over, I've had to spend more time (that is, more time than zero!) on other for-pay projects.  That has not helped my progress on the contest.

It is quite clear now that I will have to use RF modules.  There just simply won't be time to design the hardware let alone code low level drivers for the chips. 

Monday, January 04, 2010

Not an Arduino

This is my "main controller" board for the Atmel design contest.  The ground pour pretty completely fills in the white spaces, so I am showing the board here without them so you can see all the lovely traces.

The SMT part in the center is an ATmega328.  The 6-pin connector on the left is the same pinout as an Arduino serial programming port.

So why didn't I just design an Arduino shield?

Well, I tried that.  Between the Arduino shield connectors and the interface connectors I need, the board was a mess of pins.  The ratsnest was also a mess.  The routing looked like it would take at least as long as this board, and for contest judging purposes, the elegance of the solution and BOM cost were not what I wanted.


On the upside, I can fall back to using Arduino boot loader and Arduino libraries if I need to save time. 

Sunday, January 03, 2010

Universal PCB design rules

I just went through the design rules of just about every prototype PCB house I know of to determine what my design rules should be so I have complete freedom of choice.