Title: Message
Hello all,
 
I am using the new version of FalshBridgeViewer for Boomerang now, but still get the same problem.
The compilation of program and uploading to the mote seem to be fine, and the green led comes up. But when I send any message through FlashBridgeViewer there is no response. The program will stuck at the point waiting for some response.
 
For example if I try read, the program will stop with the following messages displayed (it seems to be waiting for the content to come back from the mote which never arrives):
$ flashbridge -read 0x0 0x40
0x0 to 0x40
_________________________________________________
 
Tyring ping will result in no messages displayed:
$ flashbridge -ping
 
 
A little bit more digging into what's going on:
I add lines to turn on/off Led in the code FlashBridgeViewerM.nc, and it seems that the mote never receives the message. When I put ( call Leds.yellowOn();) after the line (event TOS_MsgPtr Transceiver.receiveRadio(TOS_MsgPtr m) { ) the yellow Led is never turned on, regardless whatever I send.
However in the SerialForwarder user interface, I can see the number of packets written increases when I send messages using FlashBridgeViewer, and number of clients would change from 0 to 2 at that moment.
 
I am not quite sure where should I check for this problem. Is there anyone who have seen similar issues before?
 
Thanks for any input.
 
Regards,
Weijen
----- Original Message -----
From: David Moss
Sent: Tuesday, November 07, 2006 11:23 AM
Subject: RE: A question about FlashViewer

Hi Weijen,
 
It looks like you're using Boomerang, correct?
 
I originally wrote FlashViewer for TinyOS-1.x without Boomerang, and Boomerang introduced some arbitration architecture that FlashViewer didn't support.  In fact, FlashViewer was created just to figure out the behavior of TinyOS-1.x BlockStorage on different platforms and allows you to view what's on the flash.  The green light indicates that FlashViewer mounted to volume 0, and it looks like the format program you're using is just fine in that it creates a whole bunch of volumes on the flash, each the size of a sector (erase unit).
 
I'm not sure what the StorageManagerM errors are that you're seeing, because those are part of your TinyOS distribution.  The BlockStorage behavior may have changed as well - that could be causing the problems.  If you look in FlashViewerM, there's a function called "void execute(ViewerMsg *message)" at the bottom.  And it's there that you can see how BlockStorage is being accessed. 
 
I stopped using FlashViewer when I found that BlockStorage wasn't going to work for the projects I was working on.  I built my own flash abstraction layer, which I called "FlashBridge" because it bridges any and every flash type to a set of raw, general interfaces - read, write, erase, flush, and crc.  FlashBridge was ported to Boomerang by Mark Kranz.  If you use FlashBridgeViewer, you'll be ditching the libraries in /lib/Flash and using Rincon's /tos/lib/FlashBridge instead.  The flash bridge test app is currently located in /tos/lib/FlashBridge/apps/FlashBridgeViewer.  Edit the Makefile to choose a flash type and specify Boomerang.  This will allow you to read and write raw bytes on the flash, and erase any erase unit on the flash.  Basically, it forwards the commands from your computer to the FlashBridge interface just like the FlashViewer program forwards commands from your computer to the BlockStorage interface.
 
Sorry I can't be more help on the FlashViewer/Boomerang end.  But I hope this gives you some ideas,
-David
 
 
 
 
 
 
-----Original Message-----
From: Wei-jen Hsu [mailto:[EMAIL PROTECTED]
Sent: Tuesday, November 07, 2006 8:30 AM
To: [EMAIL PROTECTED]
Subject: A question about FlashViewer

Hello David,
 
I am a Phd student starting on tinyos programming which involves using the EEPROM on tmote sky.
 
I posted this questions on the tinyos-help mail list, and I noticed that you are the person who answered most of the inquiries, since you are the author of the program.
 
If you have some time please take a look at the following question. I appreciate you help. Thanks very much.
 
Regards,
Weijen
 
=============== my question ===============
Hello all,
 
I am trying to use FlashViewer on t-mote sky.
I work under cygwin and tinyos 1.1.
 
My problem is the following:
I have compiled and installed the flashviewer Nesc program no a mote with no errors (a couple of warning, though), started the SerialForwarder, and sent a "flashviewer -ping" to my mote. But it just gets stucked there with no response coming back. The only change I can observe is that on the java window for SerialForwarder, the "Packet Written" counter increases by 1 and "Number of Clients" increases by 2 when I send the ping request.
 
Is there anything I did wrong with the above? Some information that may be related to this:
(1) The warning messages I saw when I compiled the flashviewer Nesc program are:
 
/opt/moteiv/tos/lib/CC2420Radio/RadioCRCPacket.nc:49:2: warning: #warning Using
old communication interfaces; recommend switch to SP
/opt/moteiv/tos/lib/CC2420Radio/TranslateBareSendMsgC.nc:29:2: warning: #warning
 Using old communication interfaces; recommend switch to SP
/opt/moteiv/tos/lib/Flash/STM25P/StorageManagerM.nc: In function `StorageManager
M$StdControl$init':
/opt/moteiv/tos/lib/Flash/STM25P/StorageManagerM.nc:86: warning: comparison is a
lways false due to limited range of data type
 
(2) Do I have to format the flash with a specific format? I cannot find the proper formatting utility from rincon, so I used this ( http://enl.usc.edu/cgi-bin/viewcvs/viewcvs.cgi/tenet/mote/test/FormatTelosbFlash/ ) instead. When I loaded flashviewer Nesc program to the mote, the green led came up so I thought it is OK.
 
Thanks for any input.
_______________________________________________
Tinyos-help mailing list
[email protected]
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to