## Finally working

I just finished the first Version of the Firmware. It isn’t pretty by any means but it shows the basic functionality working.

I currently only show 3 readouts:

• supply voltage
• current drawn
• power

## New Measuring Method

While writing the firmware for the 7 segment version I noticed a design flaw in my layout. I was using a resistor network to attenuate the voltages measured at the shunt by a factor of 5. I thought this might be necessary because I was using the 1.1V reference of the ATTiny85. This would make a dynamic range at the ADC in single ended mode of $1.1V*6 = 6.6V$ which would be enough to measure the ~5V that USB should give us.

## Boards Arrived

Today finally the boards in v0.9 arrived. They are just beautiful, but before I will post some pics, I want to share the story of my hassle:

After I ordered the boards, I quickly realised that PayPay did not allow me to complete the transaction. After a long (but friendly) phone call I knew that the security system somehow stopped the transaction until all other of my transaction are completed. The problem maybe was that I ordered too much stuff for a small amount in a short time, and the automatic fraud protection did kick in for my account. After 9 days finally the payment was completed. Turn time at OSHPark was really short with 5 days until they were shipped. Shipment time was another 16 days until today which sums up to a total of 30 days!

However, now they finally arrived and they are BEAUTIFUL. Checkout them out:

Frontside

Backside:

## Stencils

As I just wrote in a Log in my DIL-Duino Project, I just tried out the OSHStencil service and ordered a set of stencils. While I was at it I also thown in a set of stencils for this project. I don’t think it is really nessecary to use a stencil for this board, but it may help me while assembling the boards.

## Low input impedance of ATtinys

In the last 4 Days I fixed several mistakes in my board and I did was checking the board from time to time and rethink some parts.

A big mistake I noticed just today is that I swapped PB2 and PB0 as data and clock for the I2C bist over the USI.

I learned this lesson the hard way a while back. If you have the time, use it to check your design, but don’t force yourself into finding errors. The best time to do it is while you’re needing a break from something else. Another thing I do quite often is print out the project (the board, schematic or even a headerfile or hand scribbled UML diagrams) so you can always have a quick look at your project. It is then when you find the most obvious errors you missed previously.

Also it is a good way to take some time each day to check everything for correctness. You most likely won’t find all errors on one day and you may have a complete different look on the things at another day