It looks like you're new here. If you want to get involved, click one of these buttons!
It took a bit longer than expected, but I have finally finished routing a shield for BrewPi.
I have tried to make the shield compatible with both the Uno and Leonardo, while maintaining expandability.
The Arduino shield has a 10 pin connector to the LCD board and the LCD board has a 4 pin connector to the rotary encoder board.
On the LCD board is a shift register to save some Arduino pins. 7 pins of the shift register are in use, the 8th is routed to a header. There is also one free pin on the 10 pin connector. This pin is also available on the LCD board, together with GND and 5V.
I have settled on the following pin mapping:
As you can see, the Leonardo pin mapping is way different from the UNO, which makes backwards compatibility a bitch. I tried my best to make the shield compatible with both, without sacrificing expandability and hackability.
This mapping results in:
- RX/TX free
- HEAT/COOL and BUZZER on a PWM port
- JTAG available on the Leonardo
- I2C (SCL/SDA) is available on the Leonardo by moving two 0 OHM jumper resistors.
There is a big proto pad in the middle to enable hackers to use the free pins.
All Arduino pins have a double header row. One is for the shield connectors, the other makes it easy create connections to the proto pad.
The HEAT and COOL output are compatible with relays and SSR's. There is a schottky diode between 5V and the + pin of the outputs. This allows you to use a higher voltage for relays. The - pin is an open drain pin, about 300mA.
The output pins of the shift registers are: RS, E, Backlight, free (header), D4, D5, D6, D7. Reading from the LCD has been sacrificed. The latest version of brewpi-avr already keeps a copy of the LCD contents in avr memory, so reading is only used to check the busy pin. This will be replaced by a simple delay.
The backlight has a 10 ohm resistor, which can be bridged by a solder jumper.
Enough explanation, here is the schematic:
And the board layout:
Please comment on anything and everything. I don't want more delays, so I will probably order these in bulk right away.
I plan to make them available as bare PCB, with SMT components soldered and fully soldered.
I will start sourcing parts now, to be able to offer a complete kit.