Pages: [1]   Go Down
Author Topic: A Low Power Arduino Network?  (Read 538 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Edison Member
*
Karma: 30
Posts: 2483
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

If everyone got together and uploaded the same firmware to them, have all of them connect to each other, and some way of routing traffic, and then have it put to some use, we could have LED's and buttons and sensors to cross communicate with other arduino's, so you can then control each others lights and have a bit of fun....

for example, if a protocol over UDP was developed, other than the UDP / TCP / IP layers upon layers... just the raw packet here

So to simplify it.

Broadcast UDPPacket(long Who; byte Action,Value,Extended);  //IP address

eg UDDPacket(SocketAddress/IPAddress,0,1,0); 

once this data gets sent to an IP address or broadcasted (however you do that over WAN?!)

Byte 1 = 0x0 
Byte 2 = 0x1
Byte 3 = 0x0

Some kind of delimiter, CR/LF? whatever, keep it to something like a 5-6 byte payload, to keep it short and quick. if the packet>5bytes, discard it, etc.


basically, a 3 byte packet 0-FF 0-FF, 0-FF 

So Let's Switch a light on (TheirIPAddress,0,1,0); //192.168.0.1  //0 meaning Lights  //1 meaning On // 0 meaning, nothing

Decimal again (0-255)
0-6, lights
7-12, Signs, Messages, Alerts
13-18, Warnings, Reminders
19-27, sync timers
28-40, Sensor Data Sharing
41-60, Game Packet Data
61-67, Monitoring Power Outages (if the power goes out, and the Arduino is running off a backup battery, it can report your power out, providing your modem too is still running via a UPS or as i did
I'm using a voltage regulator and a small Lead Acid battery which powers both the modem and the arduino if the power goes out)
68-90, Control Servos, cameras, and anything else
91 - 100, Advertisers ONLY, and only if people WANT to see these kinds of packets get through (eg, block 91-100) this way we can control content
...
...

EG, 10 people are hosting something as simple as a LDR, a light diode resistor, you know their locations, you can then gather data from other peoples sensors to help aid your own sensors, discover things
people could share and setup experiments

Connect a pizeo speaker to pin 9, people could send the packet to make it beep and then have it switch on a light, but i'm yet to think of any serious uses other than to track weather and temperature, maybe barometer, maybe some kind of basic games setup A row of LED's that light up back and forth, when you hit the button it can see which LED is lit up at the time of the button press, time and stats are calculated real time and then compared to the data generated the other end, or have it sent via server..

Scores, real world hardware/software blending in, i'd mount the LED's into my desk and have two buttons i can press, or have multiple LED's on for some kind of quick fire reaction game...


I'm sure i could think of 100 more uses alone given enough time, but it would have to be a community based collaborative effort and i'll gladly help code it but this aint going anywhere if inobody wants to get involved to begin wtith!



Logged

Minneapolis, Minnesota
Offline Offline
Full Member
***
Karma: 1
Posts: 130
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Okay, I'm willing to try this.  Let's keep it very simple to begin with, then add functionality over time. 

1. We need a common program to ask everyone to upload to an internet-connected Arduino. 
2. The Arduinos need to send something to a common IP address which has the capability of receiving 1000's of connections at the same time.
3. The person hosting this needs to display something on a web site so we can all benefit from participating.
4. We sit back and enjoy our work.
Logged

Offline Offline
Edison Member
*
Karma: 30
Posts: 2483
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Yes, however by the looks of things there's little interest.

With wiznetshields coming down in price to around $10 US, it's cheap enough to do this with old Arduino Boards and turn it into a Collaborative Effort.

The Arduino, would connect to a server capable of handling many UDP requests, it can than act on the data process or and send it back to just that 1 Arduino or have
it broadcast to multiple addresses, Depending on which area you're developing in it might end up with dedicated servers just to process weather data feedback from hundreds
of arduino's collecting data on Barometer, Light, Temp, Humidity, with the possibly of other sensors reporting data back..

But remember, data could go both ways, eg to calibrate everyone's sensors, a broadcast packet would send the data to say 1,000 people connected giving
them all the correct time, calibrations...

I personally prefer to make pyshical games, turning pins on and off, 1 packet could be used to control shift registers.. maybe i'm thinking TCP IP, after all, the Arduino
has 3 sockets, and literally have them all connected in real time...

I'm not sure the best approach really...
Logged

Pages: [1]   Go Up
Jump to: