lyzby
26
I got an MCP23017 16-bit i2c i/o expander working with the following:
i2cset -y 0 0x20 0x00 0x00 b
i2cset -y 0 0x20 0x01 0x00 b
i2cset -y 0 0x20 0x12 0x01 b
i2cset -y 0 0x20 0x13 0x20 b
These commands set port A and port B to all outputs, then turn on bit 0 of port A and bit 5 of port B.
I also was able to write to and read from a PICAXE 20X2 microprocessor set to act as an i2c slave with the first 128 bytes of its scratchpad memory acting like a 128-bit eeprom.
i2cdump -y -r 0-31 0 0x50 b
Shows first 32 bytes of scratchpad memory.
i2cset -y 0 0x50 0 0x61 b
Writes “a” to the first byte of scratchpad memory.