Hey!I want to be able to communicate several arduinos (I'm talking about 60+ maybe) using a single bus, maybe two. In which way is this possible? I'm going to design it using a central node in charge of all the communications, that sends bits to one arduino and gets replies.
I thought that different baud rates would help me do the multiplexing, am I right?
... the main receiver needs threads to listen to every single frequency.
I'm going to design it using a central node in charge of all the communications, that sends bits to one arduino and gets replies.
QuoteI thought that different baud rates would help me do the multiplexing, am I right?No, I don't see how that helps in any way.
What's the $ budget for this?How much bandwidth does it need?
Any of them can be a master or slave, and you can broadcast. Of course they can't do that all at once, but there is provision for collision detection. If one is the master and sends a query and gets a reply, there should be no collision problems.
The project is oriented to home automation, and I have discarded wireless solutions because of the price and it looks more "robust" if I build it on a bus.
Quote from: manutenfruits on Oct 24, 2011, 02:46 amThe project is oriented to home automation, and I have discarded wireless solutions because of the price and it looks more "robust" if I build it on a bus.OK, how long will the wires be...?
Use RS485. All parts connect to master via twisted pair & $4 RS485 transceiver.Master talksa, all listen; if a unique slave is addressed,it responds.For examplehttp://cds.linear.com/docs/Datasheet/1480fa.pdf
Use RS485. All parts connect to master via twisted pair & $4 RS485 transceiver.Master talksa, all listen; if a unique slave is addressed,it responds.
@manutenfruitsI've just finished the PCB layout for a board that will plug onto an Arduino and convert the I2C to RS-485 async then broadcast to as many as 255 other Arduinos.Unfortunately I haven't written a single line of code yet so it won't be ready any time soon. What's your time frame?_____Rob
You can also mix it up... for example: You have a 3 story house... say that 20 Arduino will be on each floor (Can't imagine what all of them would do). You can connect one on each level to the ethernet network, and then those would be a sort of gateway to the rest of the arduinos in that level. You could also include some XBees for stuff not easily wired. Is the house built already? Or are you building it and can wire your I2C/RS485/whatever network on it? Because wiring all this around the house if it is already built will probably come out more expensive (time and materials) than getting some Ethernet shields and XBees (or clones).
In case I want to use just RS-232 serial port, that would save me the RS-485 transceiver.
I'm sorry, I don't get your point
No matter what transmission medium you choose you still have to design a protocol that involves either a master-slave arrangement where the master polls each slave in sequence (easy), or a multi-master setup that requires a lot of work to detect clashes etc (hard).
It depends largely on just how robust (reliable) you want the system to be.
What kind of multi master setup would be like?
Can't I just write on the bus "Hey, if you are Arduino2, tell me the status of your pin 3", and then Arduino2 writes on the bus "Here Arduino2: whoever asked for this, my pin 3 is ON"?
I wouldn't like the door to be opened in the middle of the night for no reason