You can change the I2C address that the OpenServo responds on by following this simple procedure. No two devices on the I2C bus may share the same I2C address. Be sure to set your I2C address to a value below $80, or your OpenServo will no longer be adressable by the OpenServo Test program.
The OpenServo only loads it's own I2C address on startup, so after programming the address you must save and reboot.
Change the address using the OSIF
Here is the procedure to change the I2C address using the OpenServo Test program and the OSIF
- Change the address in the box.
- Write the address using write.
- Click Save
- Reset the servo using reset or preferably by power cycling.
- Rescan the bus, and presto it should change.
Change the address using a generic interface
You can use any I2C adapter to send the change address command.
- Send the current servo address (normally 0x10)
- Send the Hex output 0x20 (TWI_ADDRESS)
- Send the new address. e.g. 0x01
- send the save command 0x86 (REGISTERS_SAVE)
- Reboot the servo.
Change the address in the firmware