Connecting multiple Toys to one power/data source:

Hello!

Honors project due in 3 weeks, wah! - And am now at a point where I can try make my design work.

I have designed a series of toys, all with three arms that can connect to others. When they're connected to a base I want them to be able to communicate directly the computer to make sound.

Here are a couple of pictures:

Sony have something similar called BlockJam http://www.sonycsl.co.jp/IL/projects/blockjam/contents.html

What I need to work out is...
Can the base (5V from the USB out) power up to 10 arduinos simultaneously if they connect like the picture?
How do I channel the data from the photoresistor back to the base and read it as separate toys?
How do I only make the LED's light up when that particular arm is receiving power?

I do have the option of tethering them all to a computer using USB cables, but it would make the playing with them very difficult.

Any suggestions would be fantastic. Or pointers to other threads (I suck at searching forums, and couldn't turn anything up...)

Correct me if I am wrong but have you designed the shape and function of this without thinking of the implementation?

Depending on what you want to do with the arduino in each toy will depend if there is enough power from a USB cable. The maximum current is 500mA so for 10 you have a maximum of 50mA per toy. Given that you have at least three LEDs that's pushing things, how much current is you LED drawing. What sort of LEDs are they and what is each toy going to do?

However, a much more challenging point is that you seem to have designed only one data line for all the arduinos to communicate over, is this true? If so it presents you with a very great technical challenge.

Also do you need to know the topology of the interconnections, that is, what arm what toy is connected to? This will affect any of the real design of the electronics.

No you wouldn't be wrong there. My degree is a funny one, primarily it is the design, and then my tutor says she'd like it to work. Awesome.

Well rethinking this I think cutting it down to 4 toys would make more sense, allowing for 125mA per toy.

I am going to hunt down LED's today. They will be quite strong ones, but the place I buy them from's website is very unhelpful.

Each toy only needs to read the value of the photoresistor and relay it back to the computer (to modulate sound).

I had thought using the one data line and prefacing each piece of data with a toy ID would be sufficient, what are your thoughts there?

It would be great if I could know which toy which arm is connected to. My original thought was something where the LED intercepts the power source from the arm, and then is read via an analog port on the arduino (if there's power running through it, that's the arm that's connected?).

one data line and prefacing each piece of data with a toy ID would be sufficient

With only one data line you can normally send data only in one direction so you could ask the device to speak but you couldn't get an answer. If you have the devices themselves talking they all talk at once and the messages clash and nothing gets through. So collision avoidance is the foundation of networking. There is a technique of bi directional communications over 1 Wire called surprisingly enough "The 1 wire bus" This is supported in the Arduino with the arduino as a master but not, as far as I know, as a slave.

However, that opens up the possibility of not having an arduino inside the toy at all but having only 1 wire perihelia device instead. The main one would be the DS2450 which i s a quad (4 of them) A/D converter that could be used to measure 4 different things. Then the DS2408 is an addressable switch, this could be used to route the 1 wire bus through different arms of the toy to discover if there was anything else connected further down the chain in that direction.

Finally the LEDs sound simple but could prove to be quite complex. I suggest a bit of lateral thinking here. If you have magnets that allow the toys to snap together then just have a reed switch on the inside that is pulled in by the magnets and lights the LEDs. Otherwise you need to implement the routing switches and use the DS2413 to control the lighting of the LED depending on what it finds.

As to the suitability of you to actually implement this in three weeks I would say there is little chance. I used to lecturer at a University in the UK (not sure where you are) and I would think that this project is ambitious for an electronics student, and almost impossible for them to do in three weeks, let alone for an arts student with little grounding in electronics and programing. Also isn't it a funny time of year to be expecting a final year project to be in, term (the year has only just started in the UK. Best of luck anyway.

the final weeks of the second semester are coming now in Australia.Only two semesters 13 weeks each so 26 weeks total and 6 months off .It was great

Thanks Grumpy Mike, that's great advice. Am going to make these things look like they work as apposed to working.

So each toy will be connected with a USB cable to the computer and the arms will just have buttons that get closed by the magnetic arms.

Will post this somewhere else as well if I get to it, but do you guys know if there is an eagle part for the arduino mini pro? Not the eagle schematic but as a part so I can drop the thing into my own pcbs?