I2C Tools - Feature Request

Greetings,

I’ve been playing with the MCP23008 & MCP23017 GPIO Expander chips lately. Today I had the idea to hook my flipper up to the PCB I’m using. I was able to scan and find the address of the chip (0x20, right where I expected it to be) and send (maybe read is a better way to put it) to some of the chips registers. This brought up a reason for this post.

In order to really use the GPIO Expander, you need to be able to write to the registers a value. The Flipper’s current implementation of the I2C tools only provides a way to read a register from an address. What would it take to make it able to allow for the user to select the device address and write a byte to a register.

For example, I might want to send:

Device Address: 0x20
Device Register: 0X00
Option: (0 = Read, 1 = Write)
Register Config: 0xFE (Provided the previous option is set)

and when the transaction is completed, receive an ACK or NACK.

Having this ability would really be sweet and educational for those exploring the I2C protocol.

2 Likes