My Trouble shooting pages for motes
Iris Motes with 420 cc sensor board.
I have had my 420 cc network working but I want to re-program then in lower power mode as they run out of power to quickly with the GPS ( batteries only last one day). Which is the correct app to upload? For the low power mode for the base station and for the motes/?
Also. The sensor themselves are giving off reading of 124 c for example on some boards; how to I reset this. I have reprogrammed them but they still read this.
Response: For the MTS420 sensor board, there is no low power application for this because of the GPS functionality of this board hence a low power Xmesh application is not available. The GPS needs to be powered constantly in order for it to work. Powering off the GPS during a low power application wouldn’t enable the GPS to get a satellite fix.
As for the high temperature that you are seeing, the low battery voltage might attribute to the incorrect temperature reading.
One suggestion to improve the battery life is to turn on the GPS only occasionally (eg. once a day) and other times send only the sensor data (in LP mode). This would however require modifications the existing MTS420 app and then to compile it under LP mode.
The XMTS420 is made available to you via MoteWorks. This has not been tested hence we do not how much longer this would improve the battery life. In most cases, the GPS is used only during initial deployment to identify the location of the nodes and their position is fixed from then on.
The GPS receiver draws over 100 mA current and hence 2 AA batteries would last less than 20 hours.
Unless you use large solar panels, you won’t be able to recharge the batteries that fast. I am not aware of any such solar panels.
Please read and follow the instructions in the FAQ.
The /apps/xmesh/XMTS420CC will contain the app for MTS420CC.
The /apps/xmesh/XMTS420 will contain app for MTS420CA/CB.
The build folders within each of these apps also contain pre-compiled .exe apps for MICA2, MICAz and IRIS platforms.
Please refer to my clarifications below. REF 420 CC motes.
There is no GPS receiver that is currently available in the market that can operate in a truly low power mode. The active current is ~100mA and it takes over a minute for it to find satellite fix.
That being the case, you can’t really operate the board in the lower power mode from XMesh stand-point (i.e. if you have to wait for > 1 minute from the time you turn it on before you can get data why turn it off, unless your read that data very infrequently?).
We never tell any customers that they can operate MTS420 sensor boards in low power mode nor have LP enabled apps for this. Who at Crossbow did you talk to about LP operation of the MTS420? The product/technology has been used outdoors and for several months operation (eg. eKo), ( er yes but this is a different system) but not with MTS420 or any GPS receiver.
In most applications, GPS data is used only during initial deployment to identify the location of the nodes and their position is fixed from then on.
If you must need GPS location from the outdoor nodes, one strategy I can propose is to turn on the GPS very occasionally (eg. Once a day) and at other times send only the sensor data (in LP mode). This would require you to modify the existing MTS420 app and compile it under LP mode.
Also; try low power listening is a mode of operation of the radio. You need to define LOW_POWER_LISTENING, then you radio will automatically turns on and off from time to time. This will save some energy, but of course it will not help with the GPS.
Try to search the archives, or the contrib directory of the CVS. Maybe there is some code there.
The MTS400CC/MTS420CC has some minor differences. The MTS400 offers five basic environmental sensors with an additional GPS module option (MTS420). The features offered on these boards allows for a wide variety of applications ranging; from a simple wireless weather station to a full network of environmental monitoring nodes.
Applicable industries include agriculture, industrial, forestry, HVAC and more. These environmental sensor boards utilize the latest generation of energy efficient digital IC-based board-mount sensors. This feature provides extended battery life where a low maintenance, field deployed, sensor node is required. (from manual)
I don’t know how they can say this in the manual as the batteries last a day….they need to; be programmed in high power mode to work with GPS; So this just isn’t true.
The GPS module offered on the MTS420 may be used for positional identification of Motes deployed in inaccessible environments and for location tracking of cargo, vehicles, vessels, and wildlife
Motes are designed for power efficiency. Hence all the sensors are disconnected from power on the MTS400 and MTS420 sensor boards unless specifically turned on.
Again…the MTS 420 only works has a program for high power mode. So in the manual; this again just isn’t true. The only workaround is to start the program in hight power and re cycle it to; low power; and maybe after a time period…ie once it has the gps fix. After one hours, This should allow time for deployment.
Turning Sensors On and Off
Power for all of the sensors on the MTS400/420 sensor board is controlled through an analog; power switch at location U7. It can be programmed enable and disable power to individual sensors. The default condition for the sensors is off. This design helps minimize power draw by the sensor board
X ML-RPC not sending data.
I want to connect in real time to my motes over the internet.
You seem to be using the http protocol to communicate with the XML-RPC port. The XML-RPC port in XServe 2.0 doesn’t communicate over the http protocol. Instead we use a protocol defined in the XServe Manual. Basically the first 4 bytes (in little endian) of the communication is the length of the rest of the data. <4bytes>
Looking from their script you seem to have things a bit mixed up:
1) Commands vs Live XML Stream XServe provides two XML interfaces. The first interface is a command-response interface. You use this interface to ask the motes to do something (get_config information). You send the commands down using the XML-RPC format. Responses come back in XML-RPC format. To send and recv commands using this interface you need to connect to xserve’s 9003 port. The second interface is a live data stream. This data stream *only* outputs data. There are no commands in. As data from the motes come into xserve, xserve translates the data into a simple XML data stream. The format of this XML stream is in the XServe Manual under “Simple XML Datasink”. This is by default on port 9005 (but can be changed using the -xmlport=) flag. The protocol to communicate (send/recv on the command port, or recv on the stream port) is the DataLong protocol as indicated below: i) Receive four bytes — these are the length of the subsequent data. The four bytes will be in low-endian binary. Assume this number is N. ii) Receive N bytes from the socket — this will be XML data in ASCII.
2) Using tools to communicate with XServe You *can* use Flash. Using the flash.net.Socket class you should be able to connect to xserve, much like your php script is doing. The php script you have, does not seem to be sending anything into the server. Instead is seems to be listening to it, and then timing out in 5 seconds. If you are on the command port, you never sent a command in. If you are on the Live Data port, if no data comes into the mote in 5 seconds the script will time out. As for how engineering has done it, we’ve used flash to connect. But we’ve also used a perl script to also proxy our requests from web pages.
In the end I concluded that XML RPC does not work and some middle ware was needed, a java proxy server has since been written.
Connecting motes issues 310 network.
When we try to connect via mote config we get; “Can not connect to Mote correctly. Please check your Mote”
The error message below seems to indicate that the COM5 is not a valid port. Error: No error -> \\.\COM5 make: *** [program] Error 1 Please double-check your COM port number and make sure it exists from your device manager.
The port must be there and working since the mib 510 is connected and I can see the working motes in moteview that respond…ie they are working and changing over time…. see http://igor.gold.ac.uk/motes/motestatus.php so the comm port 5 is working..ie usb to serial is there.
In that case, you need to release COM5 by stopping XServe/MoteView before attempting to programming the Mote via PN2.
Yes, we are closing moteview down before we trying to use PN2…but still the same.
Please make sure that the XServe process is not running in the back-ground. Open the Windows task manager and look for XServe under processes tab. If it is running, terminate the process and then try programming the Mote. Go to Windows Device Manager and make sure that COM5 is a valid COM port under Ports & LPTs.
XServe is not running, I have checked that. The device manager shows that com 5 is Ok. still cannot program the motes.
Can you try to program the Mote using MoteConfig instead of PN2? If you still have problems, I suspect the issue might be with the USB to Serial adapter you are using. Not all US-Serial adapters work reliably with different PCs and OS. Try using a direct serial port of the PC (typically COM1).
I got it to work, ie to make one blink. But then I tried again and then the same issue. I tried shutting down and re- start and the same error” cannot connect to mote”… …any ideas. I tried again for another hour in all sorts of variations…….no progress…
Your USB to Serial adapter seems to be unreliable. I suggest using direct serial port on the PC
Ref MTS420CC: How does one get the GPS to work ? Should the GPS data just show in moteview once the board is connected…if its working.
All the other data is there but the GPS is invalid and showing long and lat of 0
For the GPS to work correctly and provide location data, you need to attach the GPS antenna to the MTS420CC board and have it located outdoors with optimal sky visibility. If you are using MTS420CC, then there are updated GPS drivers that you should use,
I want the batteries to last longer. How do we do this? for 310 motes
It says on further reading that you have done tests “The tests showed that the motes lasted for 172 hours or about 85% of the rated capacity of the AA batteries. Furthermore, the MICA2 motes continued to work until they reached about 2.1 V.” OK I am confused about this….are you say the most the batteries will last is over a week.
HOW DOES ONE DEPLOY THIS KITS IN THE FIELD IF THE BATTERIES ONLY LAST JUST OVER A WEEK. SO HOW CAN ONE GET THE KITS TO LAST MONTHS BEFORE A BATTERY CHANGE.
The high power (HP) version of the apps don’t duty cycle the radio and hence would deplete the battery in few days. The low power (LP) version of the apps draw an average of 330 uA current with MICA2 platform and when used with alkaline AA batteries can easily deliver over 6 months of battery life. In order to make the batteries in the Kits last long time, you need to use them in XMesh-LP mode. We do have solar panel implementation in our next generation eKo Pro series products that can deliver battery life of over 5 years. http://www.xbow.com/Eko/index.aspx
I will put them in low power mode…can you a quickly tell me how to do that. or tell me the page in the manual .
How would I hack on a solar kit to this? any info or ideas appreciated. I just want to deploy it once and I don’t want to have to change any batteries. Have you a work around or idea about this? and while I am asking …this kit with GPS needs housing but all the lead for the GPS go everywhere. Has anyone deployed a kit like this? what did the use for housing?
If you could tell me which Kit do you have (or which discrete boards), I can point you to appropriate documentation. The solar kit is a turn-key product for crop monitoring and it is not possible to integrate with the discrete boards your have. Moreover, the GPS receiver is very power hungry and I don’t think the solar panel produces enough energy to keep it running. You would need much larger solar panels and larger capacity batteries for it. We don’t offer any off-the-shelf enclosures for GPS board. Since packages are very application specific, you may need to source/design one yourself.
Can this board with GPS be programmed in LP low power mode only. If so where is XMTS420 CC LP ?
The GPS receiver is a power hungry device and requires long time for warm-up/fix. Hence there is no low power (LP) app available for MTS420CC.
The GPS receiver draws over 100 mA current and hence 2 AA batteries would last less than 20 hours. Unless you use large solar panels, you won’t be able to recharge the batteries that fast. I am not aware of such solar panels.
For the MTS420 sensor board, there is no low power application for this because of the GPS functionality of this board hence a low power Xmesh application is not available. The GPS needs to be powered constantly in order for it to work. Powering off the GPS during a low power application wouldn’t enable the GPS to get a satellite fix. As for the high temperature that you are seeing, the low battery voltage might attribute to the incorrect temperature reading.
One suggestion to improve the battery life is to turn on the GPS only occasionally (eg. once a day) and other times send only the sensor data (in LP mode). This would however require modifications the existing MTS420 app and then to compile it under LP mode. The XMTS420 is made available to you via MoteWorks. This has not been tested hence we do not how much longer this would improve the battery life. In most cases, the GPS is used only during initial deployment to identify the location of the nodes and their position is fixed from then on.
How does one get the GPS to work ? Should the GPS data just show in moteview once the board is connected…if its working.
For the GPS to work correctly and provide location data, you need to attach the GPS antenna to the MTS420CC board and have it located outdoors with optimal sky visibility. If you are using MTS420CC, then there are updated GPS drivers that you should use, http://www.xbow.com/Support/wobjectDetail.aspx?id=50160000000KuHhAAK&type=Solution&page=0
This is a new patch the other did not work.
Ok thanks for the new drivers I have downloaded. However it not clear to me which are which. In the folder apps there is two more folders…I want XMTS 420CC…however in here all the files are xmts400m…
Which files do I use exactly.
Please read and follow the instructions in the FAQ. The /apps/xmesh/XMTS420CC will contain the app for MTS420CC. The /apps/xmesh/XMTS420 will contain app for MTS420CA/CB. The build folders within each of these apps also contain pre-compiled .exe apps for MICA2, MICAz and IRIS platforms.
OK thanks…I guess this is it… C:\Program Files\Crossbow\MoteView\xmesh\iris\MTS420\MTS420CCPatch\apps\xmesh\XMTS420CC\build\iris\XMTS420CC_M2110_hp
My network is in pace and working
310; temperature issues.
The temperature sensors in moteview on four of my motes show -273.15 for my other lot of 310’s. The rest of the board ie light and sound is working. How do I get the temp working or reset it.
It is quite likely that you have an MTS310CB board (look for a jumper wire on the bottom-side of the sensor board). The MTS310CA uses INT2 for temperature power control where as the CB version uses PW0. It sounds like you are using CA code on CB hardware (or vice versa) and hence the Temp sensor never gets turned on and returns 0.
If you have CB board, then you need to use CB version of the app.
May be I wasn’t clear earlier. You can use both CA and CB boards in the same network. The main difference is that they use different power control lines for temperature sensor.
To get accurate temperature readings, you should
Program the Mote attached to the CA sensor board (without jumper wire) with “XMTS300CA__.exe
and program the Mote attached to the CB sensor board (with jumper wire) with “XMTS300CB__.exe
If you are using these apps from MoteWorks, then,
The CA version of the app is
And CB version of the app is