From BitWizard WIKI
Revision as of 16:18, 16 November 2012 by Tom (talk | contribs)

Jump to: navigation, search
The pushbutton board (depicted: the SPI version)

This is the documentation page for the pushbutton boards.


This board adds 4 pushbuttons to your I2C or SPI enabled device.

Assembly instructions

None: the board comes fully assembled.

Possible Configurations

External resources


Additional software

Related projects


For the SPI connector see: SPI_connector_pinout. For the I2C connector see: I2C_connector_pinout.


The only LED is a power indicator.

jumper settings

See solder jumpers on how to change the solder jumper.

By changing the solder jumper SJ1, you can make the connector SPI0 into an ICSP programming connector for the attiny44 on the board.


The software

Reading the pushbuttons is very much like the DIO module. The read and write ports are described below.

write ports

Some ports just set a single value. So writing more than one byte to such a port is redundant. Other ports are logically a stream of bytes. So writing more than one byte is encouraged.

The pushbutton board defines just one port.

port function
0xf0 change address.

read ports

The pushbutton board supports several read ports:

port function
0x01 identification string. (terminated with 0).
0x02 read eeprom (serial number).
0x20 read button 1
0x21 read button 2
0x22 read button 3
0x23 read button 4
0x24 read button 5
0x25 read button 6
0x30 reports which buttons have been pushed since last read of this register

Default operation

Future hardware enhancements

Future software enhancements



  • Initial public release