Hi there, I need to make an application, with these requirements:
1. Take a sensor reading every 30 minutes 2. Use mesh networking to transfer sensor readings to PC 3. Conserve battery power as much as possible There will be several sensor motes in the field. The motes are tmote sky, with 2 penlight batteries. I've already implemented the above (using CTP network protocol), but I'm concerned about battery life. What type of network logic do you recommend? I have done a bit of research on this, but I'm a beginner with tinyos, so I'm not sure what will work best, and be simple to implement. Below this there are some (tldr) notes I've made, for what I've researched so far (mainly reading mailing list and docs) as a reference. You can skim or ignore it. Thanks, David. ===TLDR stuff below=== >From what I've read, continuous "collect" algorithm usage will exhaust the battery fairly quickly (in about 1-2 weeks), due to radio actively listening. If possible, I'd like to extend the battery life to several months (tinyos faq mentions that 6-month lifetime can be achieved, including multi-hop networking). I have done a bit of research, and found these possiblities: - Low Power Listening - SCP-MAC And I've also considered an alternative network layout (some motes are wall-powered, or have larger batteries, and act as relays for the other motes. Either using CTP or Tymo). My biggest problem is being a beginner with tinyos coding (it will take me a long time if I need to start digging into network code). So I'm looking for some simple-to-implement logic that will maximize battery life with the above application. As a beginner with tinyos, my problems with the above are: 1. LPL: - Is reported to have problems with CTP in the mailing lists - Motes being constantly in transmit mode (waiting for other motes to wake up) might take a lot of battery life - I'm not sure what the optimal settings are to use with this. - Will lowering the transmit strength in the compile settings, help to extend the battery life? 2. SCP-MAC - I think it might be tinyos 1.x-only - Not sure how well it will work alongside the CTP algorithm (radio turning off for a long time, means that CTP will have a lot of extra network traffic when motes radio come on again, wasting battery). (I've also considered a basic re-implementation: All motes sync their time over disseminate, and then turn off/on periodically (off 30 mins, on 2 mins, off again, etc) to share data and re-sync time. But this might be complicated, and waste a lot of battery due to extra CTP/disseminate network traffic to re-discover routes each time). 3. Custom network setup (small number of high-powered motes act as relays, with CTP) (basically, all the sensors just wake up, do a sensor reading, broadcast it to anyone listening, and then go back to sleep for another 30 mins. And then a 2nd type of mote with high power, listens for these values, and relays via collect back to the PC). - I'm concerned this might have a lot of dropped readings sometimes (nodes trying to relay too much data - eg: 10 sensors read by 5 relays in a short period, meaning 50 packets need to be sent over CTP to PC, overloading relay motes a bit). Will probably need to spend time finetuning and error checking (eg: each relay mote has a whitelist of sensor motes it will forward data for). 4. Tymo (point-to-point) Another possibility, is to have each "relay" mote store all the readings, and then the PC makes the basestation mote use "Tymo" algorithm to connect to each relay over mult-hop, and then pull all it's data, before going on to the next "relay". (The difference to CTP is that we don't have a lot of relay motes using the network simultaneously, causing congestion/overload). - Not sure how well this will work (how well Tymo works with 2.x). Also the PC needs to know about all the relays, to cycle between them. _______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
