Kobo GPIO Extensions

From MobileRead
Jump to: navigation, search
File:KoboMiniExtraGPIO.jpg
Kobo-Mini Extra GPIOs

How to use extra Kobo General Purpose I/O pins (GPIO).

Contents

[edit] Using GPIO-Pins without pintail-soldering

On the Kobo Mini one can use the TxD and RxD pins at connector J5 as generic GPIOs. The pinmux matrix has to be reprogrammed by a kernel driver to route the internal GPIO pin to the CPU ball that is connected via the PCB to corresponding pin at J5. GPIO170 and GPIO171 can be obtained. The serial port will stop functioning.

On the Kobo Glo the same approach can be applied to the pins of the external SD-card giving an extra of 6 GPIO lines.

[edit] Extra GPIO-Pins with the help of a pintail soldering iron

Another three GPIO pins can be obtained by soldering very thin wires to the PCB. The GPIO-line can be identified by the connection between pullup/pulldown resistor combination.

GPIO location alternate function
GPIO174 wire between R193-R194 UART3-TxD
GPIO175 wire between R191-R216 UART3-RxD
GPIO177 wire between R219-R220

Those pins are used as the hardware-ID and have pullup/pulldown resistors. Since the Kobo takes the hardware-ID from a reserved section of the SD card during bootup those pins are of no real function and can be re-used. One might need to remove the corresponding pullup resistor from the PCB.

By pin-muxing (reprogramming the routing between internal CPU-pin and physical ball) a second serial port (/dev/ttymxc2) can be made available to the system. E.g. to connect a bluetooth modem like HC05.

File:KoboMiniExtraEPD.jpg
Kobo-Mini I2C-Bus

[edit] Other ways of interfacing

Resistors R26 and R27 are not soldered to the PCB. Those are used as pullups for the third i2c-bus (/dev/i2c-2). By soldering thin wires to the correct side of the (unused) resistor-pads one may access the bus. Special care has to be taken while communicating on that bus. The MSP430 chip is also connected to this and it may shut-down the system if communication of kernel with the MSP430 gets jammed.

[edit] Pictures

at this Google Gellery in the last three pictures there are fotos of the above mentioned modifications

Personal tools
Namespaces

Variants
Actions
Navigation
MobileRead Networks
Toolbox