I'm attempting an I²C setup in which one master Arduino controls two slaves.
I'm using two 2000 ohm pullup resistors for the I²C and all boards are Arduino Duemilanoves. Both the I²C setup and the control setup function properly when disconnected from each other, but when connected the Arduinos become unresponsive as soon as the first wire.write function is called. I cease to receive serial messages, the slave Arduinos stop receiving messages from the master, and I loose the ability to turn the system on and off using the button. A schematic of my project and the code for both slaves and the masters can be found at this link: Arduino I²C freezes after startup - Stack Overflow.
I've tried adding short delays after each wire.write function and have used a variety of pullup resistors in an attempt to fix the problem, but nothing seems to work. What can I do to fix this? Does it have to do with the length of my wires or the strength of my resistors? --Thanks.
pongAssist:
I'm attempting an I²C setup in which one master Arduino controls two slaves.
I'm using two 2000 ohm pullup resistors for the I²C and all boards are Arduino Duemilanoves. Both the I²C setup and the control setup function properly when disconnected from each other, but when connected the Arduinos become unresponsive as soon as the first wire.write function is called. I cease to receive serial messages, the slave Arduinos stop receiving messages from the master, and I loose the ability to turn the system on and off using the button. A schematic of my project and the code for both slaves and the masters can be found at this link: Arduino I²C freezes after startup - Stack Overflow.
I've tried adding short delays after each wire.write function and have used a variety of pullup resistors in an attempt to fix the problem, but nothing seems to work. What can I do to fix this? Does it have to do with the length of my wires or the strength of my resistors? --Thanks.
Not sure if it's causing your problem or not, but your power distribution method on the layout drawing is very poor in my opinion. You don't show how each arduino board is getting it's input power (via USB or external 7-12vdc) but you are parallelling the three arduino on-board regulators together and that is not something you should be doing. The servos should have their own independent +5vdc voltage source, either from a power supply or properly sized battery pack. The three arduinos and all the servos do need their ground wires wired together, but forget about wiring the 5V pins together and then retest your application.