[Tinyos-help] Do mate support multi-path routing for micaZ?
Hi, I currently use matfor programing MICAz mote. I would liketo implement amulti-path routing protocolusing mat. Do mat support multi-path routing for MICAz? Any help or guidance is appreciated. Regards. tomoto ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] Problem in Compiling; which was not before
Hi all, All of sudden my applications are not compiling. They are giving some errors which I never seen before. I dont have any clue why it started happening. Please advice. [EMAIL PROTECTED] /opt/tinyos-1.x/apps/SurgeTelos $ make pc mkdir -p build/pc compiling Surge to a pc binary ncc -o build/pc/main.exe -g -O0 -I%T/lib/MultiHopLQI -DSEND_QUEUE_SIZE=8 -DMHOP_ LEDS -pthread -fnesc-nido-tosnodes=1000 -fnesc-simulate -Wall -Wshadow -DDEF_TOS _AM_GROUP=0x7d -Wnesc-all -target=pc -fnesc-cfile=build/pc/app.c -board=micasb - I%T/lib/Deluge -I%T/lib/Flash -I%T/lib/Flash/STM25P -DDEFAULT_EEPROM_SIZE=0x1000 00 -DIDENT_PROGRAM_NAME=\Surge\ -DIDENT_USER_ID=\Sumit\ -DIDENT_HOSTNAME=\s uperComp\ -DIDENT_USER_HASH=0x85ed13fbL -DIDENT_UNIX_TIME=0x450e3dbbL -DIDENT_U ID_HASH=0x5cbfa006L Surge.nc -lm In file included from Surge.nc:43: In component `SurgeM': SurgeM.nc:47: interface CC2420Control not found SurgeM.nc:47: interface CC2420Control not found SurgeM.nc:48: interface MacControl not found SurgeM.nc:48: interface MacControl not found In file included from Surge.nc:43: SurgeM.nc: In function `StdControl.start': SurgeM.nc:117: interface has no command or event named `SetRFPower' SurgeM.nc:118: interface has no command or event named `enableAck' In component `Surge': Surge.nc: At top level: Surge.nc:51: component CC2420RadioC not found In file included from /opt/tinyos-1.x/tos/lib/MultiHopLQI/LQIMultiHopRouter.nc:2 6, from Surge.nc:52: In component `MultiHopLQI': /opt/tinyos-1.x/tos/lib/MultiHopLQI/MultiHopLQI.nc: In function `ReceiveMsg.rece ive': /opt/tinyos-1.x/tos/lib/MultiHopLQI/MultiHopLQI.nc:320: struct has no member nam ed `lqi' /opt/tinyos-1.x/tos/lib/MultiHopLQI/MultiHopLQI.nc:343: struct has no member nam ed `lqi' /opt/tinyos-1.x/tos/lib/MultiHopLQI/MultiHopLQI.nc:352: struct has no member nam ed `lqi' In file included from Surge.nc:52: In component `LQIMultiHopRouter': /opt/tinyos-1.x/tos/lib/MultiHopLQI/LQIMultiHopRouter.nc: At top level: /opt/tinyos-1.x/tos/lib/MultiHopLQI/LQIMultiHopRouter.nc:37: component CC2420Rad ioC not found In component `Surge': Surge.nc:73: cannot find `CC2420Control' Surge.nc:74: cannot find `MacControl' make: *** [exe0] Error 1 [EMAIL PROTECTED] /opt/tinyos-1.x/apps/SurgeTelos $ Please advice what to do? Regards, Sumit ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] Re: Problem in Compiling; which was not before
I would also like to tell that this is happening only in SurgeTelos activity. I dont know why? Please advice. SumitOn 9/18/06, Sumit Gupta [EMAIL PROTECTED] wrote: Hi all, All of sudden my applications are not compiling. They are giving some errors which I never seen before. I dont have any clue why it started happening. Please advice. [EMAIL PROTECTED] /opt/tinyos-1.x/apps/SurgeTelos $ make pc mkdir -p build/pc compiling Surge to a pc binary ncc -o build/pc/main.exe -g -O0 -I%T/lib/MultiHopLQI -DSEND_QUEUE_SIZE=8 -DMHOP_ LEDS -pthread -fnesc-nido-tosnodes=1000 -fnesc-simulate -Wall -Wshadow -DDEF_TOS _AM_GROUP=0x7d -Wnesc-all -target=pc -fnesc-cfile=build/pc/app.c -board=micasb - I%T/lib/Deluge -I%T/lib/Flash -I%T/lib/Flash/STM25P -DDEFAULT_EEPROM_SIZE=0x1000 00 -DIDENT_PROGRAM_NAME=\Surge\ -DIDENT_USER_ID=\Sumit\ -DIDENT_HOSTNAME=\s uperComp\ -DIDENT_USER_HASH=0x85ed13fbL -DIDENT_UNIX_TIME=0x450e3dbbL -DIDENT_U ID_HASH=0x5cbfa006L Surge.nc -lm In file included from Surge.nc:43: In component `SurgeM': SurgeM.nc:47: interface CC2420Control not found SurgeM.nc:47: interface CC2420Control not found SurgeM.nc:48: interface MacControl not found SurgeM.nc:48: interface MacControl not found In file included from Surge.nc:43: SurgeM.nc: In function `StdControl.start': SurgeM.nc:117: interface has no command or event named `SetRFPower' SurgeM.nc:118: interface has no command or event named `enableAck' In component `Surge': Surge.nc: At top level: Surge.nc:51: component CC2420RadioC not found In file included from /opt/tinyos-1.x/tos/lib/MultiHopLQI/LQIMultiHopRouter.nc:2 6, from Surge.nc:52: In component `MultiHopLQI': /opt/tinyos-1.x/tos/lib/MultiHopLQI/MultiHopLQI.nc: In function `ReceiveMsg.rece ive': /opt/tinyos-1.x/tos/lib/MultiHopLQI/MultiHopLQI.nc:320: struct has no member nam ed `lqi' /opt/tinyos-1.x/tos/lib/MultiHopLQI/MultiHopLQI.nc:343: struct has no member nam ed `lqi' /opt/tinyos-1.x/tos/lib/MultiHopLQI/MultiHopLQI.nc:352: struct has no member nam ed `lqi' In file included from Surge.nc:52: In component `LQIMultiHopRouter': /opt/tinyos-1.x/tos/lib/MultiHopLQI/LQIMultiHopRouter.nc: At top level: /opt/tinyos-1.x/tos/lib/MultiHopLQI/LQIMultiHopRouter.nc:37: component CC2420Rad ioC not found In component `Surge': Surge.nc:73: cannot find `CC2420Control' Surge.nc:74: cannot find `MacControl' make: *** [exe0] Error 1 [EMAIL PROTECTED] /opt/tinyos-1.x/apps/SurgeTelos $ Please advice what to do? Regards, Sumit ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
Re: [Tinyos-help] Re: Problem in Compiling; which was not before
You are including CC2420 specific stuff in your application and then compiling for target pc! This is causing the error messages.On 9/18/06, Sumit Gupta [EMAIL PROTECTED] wrote: I would also like to tell that this is happening only in SurgeTelos activity. I dont know why? Please advice. SumitOn 9/18/06, Sumit Gupta [EMAIL PROTECTED] wrote: Hi all, All of sudden my applications are not compiling. They are giving some errors which I never seen before. I dont have any clue why it started happening. Please advice. [EMAIL PROTECTED] /opt/tinyos-1.x/apps/SurgeTelos $ make pc mkdir -p build/pc compiling Surge to a pc binary ncc -o build/pc/main.exe -g -O0 -I%T/lib/MultiHopLQI -DSEND_QUEUE_SIZE=8 -DMHOP_ LEDS -pthread -fnesc-nido-tosnodes=1000 -fnesc-simulate -Wall -Wshadow -DDEF_TOS _AM_GROUP=0x7d -Wnesc-all -target=pc -fnesc-cfile=build/pc/app.c -board=micasb - I%T/lib/Deluge -I%T/lib/Flash -I%T/lib/Flash/STM25P -DDEFAULT_EEPROM_SIZE=0x1000 00 -DIDENT_PROGRAM_NAME=\Surge\ -DIDENT_USER_ID=\Sumit\ -DIDENT_HOSTNAME=\s uperComp\ -DIDENT_USER_HASH=0x85ed13fbL -DIDENT_UNIX_TIME=0x450e3dbbL -DIDENT_U ID_HASH=0x5cbfa006L Surge.nc -lm In file included from Surge.nc:43: In component `SurgeM': SurgeM.nc:47: interface CC2420Control not found SurgeM.nc:47: interface CC2420Control not found SurgeM.nc:48: interface MacControl not found SurgeM.nc:48: interface MacControl not found In file included from Surge.nc:43: SurgeM.nc: In function `StdControl.start': SurgeM.nc:117: interface has no command or event named `SetRFPower' SurgeM.nc:118: interface has no command or event named `enableAck' In component `Surge': Surge.nc: At top level: Surge.nc:51: component CC2420RadioC not found In file included from /opt/tinyos-1.x/tos/lib/MultiHopLQI/LQIMultiHopRouter.nc:2 6, from Surge.nc:52: In component `MultiHopLQI': /opt/tinyos-1.x/tos/lib/MultiHopLQI/MultiHopLQI.nc: In function `ReceiveMsg.rece ive': /opt/tinyos-1.x/tos/lib/MultiHopLQI/MultiHopLQI.nc:320: struct has no member nam ed `lqi' /opt/tinyos-1.x/tos/lib/MultiHopLQI/MultiHopLQI.nc:343: struct has no member nam ed `lqi' /opt/tinyos-1.x/tos/lib/MultiHopLQI/MultiHopLQI.nc:352: struct has no member nam ed `lqi' In file included from Surge.nc:52: In component `LQIMultiHopRouter': /opt/tinyos-1.x/tos/lib/MultiHopLQI/LQIMultiHopRouter.nc: At top level: /opt/tinyos-1.x/tos/lib/MultiHopLQI/LQIMultiHopRouter.nc:37: component CC2420Rad ioC not found In component `Surge': Surge.nc:73: cannot find `CC2420Control' Surge.nc:74: cannot find `MacControl' make: *** [exe0] Error 1 [EMAIL PROTECTED] /opt/tinyos-1.x/apps/SurgeTelos $ Please advice what to do? Regards, Sumit ___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] Re: problem with qsort
Actually, this error is generated when a function is called BEFORE its defined/declared (remember that nesC is C-based not C++).Just put the function declaration/definition at the start in the implementation body in nesC file or just above the function in which you are going to call it.On 9/18/06,Sumit Gupta singhals.sumit at gmail.com wrote: Well, all qsort() function doing here in MultiHopLEPSM.nc is sorting anarray of struct SortEntry in assending order on the basis of receiveEst. Soafter studying all about this function I figure out that we can simplyreplace with nested for loop which can do the same. You can comment outqsort() and replace with following code:uint8_t k;struct SortEntry tempEntry;for(i=0; ij; i++){for(k=0;kj;k++){if(sortTbl[i].receiveEst sortTbl[k].receiveEst){tempEntry.id = sortTbl[i].id;tempEntry.receiveEst = sortTbl[i].receiveEst;sortTbl[i].id = sortTbl[k].id;sortTbl[i].receiveEst = sortTbl[k].receiveEst;sortTbl[k].id = tempEntry.id;sortTbl[k].receiveEst = tempEntry.receiveEst;}}}I hope it helped.Good Luck.SumitOn 9/18/06, Dachiraju Raju dandydude83 at yahoo.com wrote: hi, i was wondering how you solved the problem on the function qsort .? i also have same error as you when trying to compile for telos. so i commented tht line.. i was hoping you could tell me a solution for the error. Implicit declaration of function qsort. thanks a lot! -- How low will we go? Check out Yahoo! Messenger's low PC-to-Phone call rates. http://us.rd.yahoo.com/mail_us/taglines/postman8/*http://us.rd.yahoo.com/evt=39663/*http://voice.yahoo.com ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] Re: regarding the TosMsgptr and TosMsg
Perhaps what you want is TOSBase (it's an application included with TinyOS). You install it on a mote and this mote will act as a bridge between the radio and the serial port (will send to the serial port everything that hears from the radio and will send to the radio any packet received by the serial port). You program one mote with this application and use 'java net.tinyos.tools.Listen' to listen to all packets received through the radio or 'java net.tinyos.mcenter.MessageCenter' (see tinyos-1.x/doc/mcenter.html for more information). Of course, if you just have one mote you won't see anything, you need to programa one or more motes with your program and another one with TOSBase to see ion your computer (using the java programs) what the other motes and sending through the radio or to inject new packets with 'java net.tinyos.mcenter.MessageCenter' or another application.TOS_Msg is just an structure. You can see it at tinyos-1.x/tos/types/AM.h. If you want to access its fields you just do the next:TOS_Msg your_msg;TOS_Msg* your_msgPtr;your_msg.addr = destination_address;your_msgPtr-data = "" (accessing with pointer)If you want to build packets in the PC and sent them to motes you can use the tool mig [1]. But you must declare you message structures in an .h file with a specific format. However, I guess that this is not what you want to do right now.[1]: http://www.tinyos.net/tinyos-1.x/doc/nesc/mig.htmlP.D.: please, post in tinyos-help@millennium.berkeley.edu so that we all can read questions and answers, this information might be extended/corrected by others and might also be useful for others who have the same questions.mudunuru krishnaveni [EMAIL PROTECTED] escribió: hai, i have gone through the link u specified ..but my thing is not yet cleared..could u pls elaborate the answer for my doubt.. after reading the lesson i understood that TOS_Msg data wraps all the address, payload,data everything..but my doubt is i want to hardcode the values by giving a packet of data say " helloworld" to be transmitted(to the program)over the radio and see this data transmitted from oneradio in the hyperminal by means of uart so ,could u say, where in the program i have to give the address,data.i.e suppose if i want to send a packet say" hello world" to one radioand receive the same packet over the other radio and view this packet in the hyperterminal by means of uart ,.how can i do that. another doubt is that, i want one radio to transmit the next packet to the other radio only after it receives an interrupt from the other radio.. On 9/18/06, Pablo Gil Montaño [EMAIL PROTECTED] wrote: Take a look at [1], and if you still have doubts, ask me (send to the list so that everyone can read).[1]: http://www.tinyos.net/tinyos-1.x/doc/tutorial/lesson4.htmlmudunuru krishnaveni [EMAIL PROTECTED] escribió: hai, can u help me out with this problem. i am not able to understand the nesC language in the case of sending and receiving packets. here i am attaching a sample prog which i have writtenfor sending a packet to the uart.pls correct the prog if anything wrong. the problem of mine is ..1.) no where i am giving the data which has to be sent to the uarti am just declaring a buf variable., but not loading data into it..how to do that... 2.) cannt i write TOS_Msg buf[ ] (i.e in the case of C language we would be using arrays or stack and stack pointers to store thepackets and then send them). this part of the nesC is a bit confusing to understand so i am notable to move forward.but i have to make up with it soon.so can u help me out with this with regards, krishnaveniLLama Gratis a cualquier PC del Mundo.Llamadas a fijos y móviles desde 1 céntimo por minuto. http://es.voice.yahoo.com LLama Gratis a cualquier PC del Mundo.Llamadas a fijos y móviles desde 1 céntimo por minuto.http://es.voice.yahoo.com___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] RE: Tinyos-help Digest, Vol 41, Issue 74
Hello every one, I want to do Byte level radio transmission and reception. My receiver application receives some junk data and I could not check whether my transmitter is sending the data correctly. Please help me if any one has done this before. Hari Hara Sudhan ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] Lqi question
Hi all, i'm using Tmote sky modules and running Trawler application... I would like to know how is measured LQI parameter (db? watts?) and how i can calculate it. I see that if I move further the modules the indicator on the edges rises, and vice versa when i move near them. Thanks a lotG. Petracca ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] how to simulate Smac protocol in tossim
hi everyone I want to simulate Smac (a kind of mac protocal) in tossim, but the souce codeisdesigned formica board. It seems i have to change the bottom interfacesifi want to simulate it in tossim. But ithere are so many interfacesthat has been used, i don't know how to dealwith it. Can anyone give me some advices? Any responce will be appreciated. By the way ,is it feasible if i just change makefile? happyaspen 2006-09-17 ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] Help regarding the CC1000RadioM module
Hello Everyone, I went through the cc1000RadioM module. In that module I could find statements like call SpiByteFifo.enableIntr(); call SpiByteFifo.disableIntr(); Why are these interrupts disabled? In what situations we have to disable the interrupts? Please help me regarding this Hari Hara Sudhan.R ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] Packet transmission frequency
Hi all, i would like to know, on tmote sky modules, what is the frequency of packet transmission using Delta application. (i.e. how many packets per second). thanks a lotG. Petracca ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
Re: [Tinyos-help] Lqi question
The Tmote datasheet gives how lqi is calculated. On Mon, 18 Sep 2006, Giovanni Petracca wrote: Hi all, i'm using Tmote sky modules and running Trawler application... I would like to know how is measured LQI parameter (db? watts?) and how i can calculate it. I see that if I move further the modules the indicator on the edges rises, and vice versa when i move near them. Thanks a lot G. Petracca ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
Re: [Tinyos-help] Watchdog for tmote
Hi, is that possible you can use two or more timer so that one timer can be used as the watchdog? On Mon, 18 Sep 2006, [iso-8859-1] Pablo Gil Monta?o wrote: Hello. I want to use a watchdog timer in tmotes nodes to reset the motes if something goes wrong. I have been browsing through WDTC and WatchdogC, but they seem to be written for other platforms. Is there any implementation for tmote? Thanks in advance. - LLama Gratis a cualquier PC del Mundo. Llamadas a fijos y m?viles desde 1 c?ntimo por minuto. http://es.voice.yahoo.com ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] Wiring on multiple adc
Spam detection software, running on the system mail.Millennium.Berkeley.EDU, has identified this incoming email as possible spam. The original message has been attached to this so you can view it (if it isn't spam) or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: Hi all, Is the below wiring good? TelosADCM.ADC1 - ADCC.ADC[TOS_ADC_GIO0_PORT]; TelosADCM.ADC2 - ADCC.ADC[TOS_ADC_GIO1_PORT]; TelosADCM.ADC3 - ADCC.ADC[TOS_ADC_GIO2_PORT]; TelosADCM.ADCControl1 - ADCC; TelosADCM.ADCControl2 - ADCC; TelosADCM.ADCControl3 - ADCC; [...] Content analysis details: (5.3 points, 5.0 required) pts rule name description -- -- 2.2 FORGED_YAHOO_RCVD 'From' yahoo.com does not match 'Received' headers 0.0 HTML_MESSAGE BODY: HTML included in message 0.4 DNS_FROM_RFC_ABUSE RBL: Envelope sender in abuse.rfc-ignorant.org 0.5 DNS_FROM_RFC_WHOIS RBL: Envelope sender in whois.rfc-ignorant.org 1.4 DNS_FROM_RFC_POST RBL: Envelope sender in postmaster.rfc-ignorant.org 0.9 UPPERCASE_50_75message body is 50-75% uppercase The original message was not completely plain text, and may be unsafe to open with some email clients; in particular, it may contain a virus, or confirm that your address can receive spam. If you wish to view it, it may be safer to save it to a file and open it with an editor. ---BeginMessage--- Hi all, Is the below wiring good? TelosADCM.ADC1 - ADCC.ADC[TOS_ADC_GIO0_PORT]; TelosADCM.ADC2 - ADCC.ADC[TOS_ADC_GIO1_PORT]; TelosADCM.ADC3 - ADCC.ADC[TOS_ADC_GIO2_PORT]; TelosADCM.ADCControl1 - ADCC; TelosADCM.ADCControl2 - ADCC; TelosADCM.ADCControl3 - ADCC;where;enum{ TOS_ADC_GIO0_PORT = unique("ADCPort"), TOSH_ACTUAL_ADC_GIO0_PORT = ASSOCIATE_ADC_CHANNEL( INPUT_CHANNEL_A0, REFERENCE_VREFplus_AVss, REFVOLT_LEVEL_2_5 ),};enum{ TOS_ADC_GIO1_PORT = unique("ADCPort"), TOSH_ACTUAL_ADC_GIO1_PORT = ASSOCIATE_ADC_CHANNEL( INPUT_CHANNEL_A1, REFERENCE_VREFplus_AVss, REFVOLT_LEVEL_2_5 ),};enum{ TOS_ADC_GIO2_PORT = unique("ADCPort"), TOSH_ACTUAL_ADC_GIO2_PORT = ASSOCIATE_ADC_CHANNEL( INPUT_CHANNEL_A2, REFERENCE_VREFplus_AVss, REFVOLT_LEVEL_1_5 ),}; Do you Yahoo!? Get on board. You're invited to try the new Yahoo! Mail.---End Message--- ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
Re: [Tinyos-help] Watchdog for tmote
>From what I understand, I don't think so, because if the system enters an infinite loop or somtehing it will prevent both timers from firing and nobody will reset the device.KANG HUI [EMAIL PROTECTED] escribió: Hi,is that possible you can use two or more timer so that one timer can beused as the watchdog?On Mon, 18 Sep 2006, [iso-8859-1] Pablo Gil Montaño wrote: Hello. I want to use a watchdog timer in tmotes nodes to reset the motes if something goes wrong. I have been browsing through WDTC and WatchdogC, but they seem to be written for other platforms. Is there any implementation for tmote? Thanks in advance. - LLama Gratis a cualquier PC del Mundo. Llamadas a fijos y móviles desde 1 céntimo por minuto. http://es.voice.yahoo.com LLama Gratis a cualquier PC del Mundo.Llamadas a fijos y móviles desde 1 céntimo por minuto.http://es.voice.yahoo.com___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
RE: [Tinyos-help] repeating tests,no free memory
I'm using not so much RAM, at compile time is around 1700 bytes (it depends on the different versions of my program). But now, after other tests, i see that when the motes enter in the reading-from-flash phase, something happens and some of them break down. They are not more able to work.And only after a reading phase. May be the batteries? i know about the 70mA of current, but if i use rechangeable batteries, so 1.3 V, are there problems?i can measure only voltage by a voltmetre. I really don't know how to understand what's going on in the reading phase to let some motes to break down in this way. One problem may be is about the parameters i need when the reading phase is done: i need the same parameters i use when i posted the task.So the global parameters buf_flash,State,mess,flashAddr, flashLen,flashBuffer are probably different when the readDone event fires up from the ones used posting the task.But only when the reading is done i can use that buffer and so i can execute my program..so for example sending packets,math operations,etc.. Buffer *flashBuffer,*buffer,*ibuf,*ibuff; Buf_flash *Head,*buf_flash; Datagram *mess,*datagram; uint8_t State; task void readFlash(){ if (!call FlashBridge.read(flashAddr,flashBuffer,flashLen)){ post readFlash();} return; } void readInToFlash(uint8_t s,Buf_flash *buf,Datagram *message,Buffer *buffer_r,uint32_t addr, uint32_t len){ buf_flash=buf; State=s; mess=message; flashAddr=addr; flashLen=len; flashBuffer=buffer_r; post readFlash(); return; } event void FlashBridge.readDone(uint32_t addr, void *buf, uint32_t len, result_t result){ if (result){ //operations where i need to use the same global variables declared in the task!for now i'm using normally mess,State,etc..but i think are different from the same one before posting the task. //for example if i use //if(mess-data==...). //i think it is not the same mess written before post readFlash()... else post readFlash(); return; } -Original Message- From: David Moss [mailto:[EMAIL PROTECTED] Sent: Fri 9/15/2006 6:27 PM To: Munaretto, Daniel; tinyos-help@Millennium.Berkeley.EDU Cc: Subject: RE: [Tinyos-help] repeating tests,no free memory How much RAM is your program consuming at compile time? The MicaZ is notorious for running out of RAM just when you need it because it only has 4kB. If your global memory usage is already quite a bit (3kB maybe? maybe more? maybe less?) and you throw a bunch of stuff on the stack, your mote will crash in a seemingly random fashion, depending on what's going on. I've had apps before that used around 3kB of RAM when the program is compiled, and then crashed awhile later because the stack overflowed. If the task queue is full (and it's in global memory btw, so simply posting tasks shouldn't cause a stack overflow) then when you post a task, the post will return FAIL. It could also be that your app is posting a task and expecting it to run before continuing on, and that task never actually got posted. I've personally never had that problem before, even with running a full file system on top of flash bridge with the radio transmitting and receiving. -Original Message- From: Munaretto, Daniel [mailto:[EMAIL PROTECTED] Sent: Friday, September 15, 2006 9:02 AM To: David Moss; tinyos-help@Millennium.Berkeley.EDU Subject: RE: [Tinyos-help] repeating tests,no free memory Dear all, i tried to use TinyAlloc interface but the results are really similar. So this is not a problem of the calloc function. But i start thinking the problem is in the stack. If i post too many tasks, can the mote crash? The problem is that i have to use tasks to handle the FlashBridge interface in order to use properly the reading and writing phase on Flash-RAM. And i'm also using a task for the sending interface (own mote messages) and for the forwarding one (messages from other motes), all synchronized by timers. So if i use micaz motes, tinyos-1.x, can it be a problem? Because i'm freeing all the times the memory i allocate, but if i repeat the experiments with the motes on, in the second round or in the third one, one (or more)of these breaks down. It seems quite randomly. Hoping in any kind of help, cheers Daniele -Original Message- From: David Moss
Re: [Tinyos-help] Lqi question
On Sep 18, 2006, at 7:09 AM, KANG HUI wrote: The Tmote datasheet gives how lqi is calculated. Well, not really. Here's a more detailed explanation Oyvind Janbu, who was the program manager for the CC420 chip, gave me: - First of all, regarding the correlation value provided in the RXFIFO together with the received frame: Like you know, the 2.4 GHz physical layer of the 15.4 standard uses 32 chips to represent 4 information bits. Each of the 16 possible symbols is represented by a predefined 32 chip sequence. The receiver is based on correlating the received chip sequence against all of the 16 possible symbols. However, the receiver never does _chip_ decision. Each chip is represented by a soft decision chip (more like a probability of being either 0 or 1) which in turn is used to correlate against the known chip sequences. For each symbol following the SFD, the receiver will select the one with the highest correlation value. The correlation value in the RXFIFO is the sum of the 8 first correlation values for the selected symbols following the SFD, represented by a 7 bit unsigned integer value. My point with respect to the paper is that the receiver doesn't do chip decision at all, hence there is no actual chip errors. This is of course implementation specific, and may be different on another transceiver. The soft decision chips are also the reason why the correlation value doesn't go all the way to 127 (even if its a 7 bit value). This is due to bandwidht limitations in both the transmitter and receiver, that make the soft decision chips stay away from the ideal values. However, this doesn't affect the performance of the receiver, it's only a representation issue. - Phil ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] error when update from TinyOS1.1.10 and TinyOS1.1.15
I upgraded TinyOS1.1.10 to TinyOS1.1.15 but when I try to compile an application in tinyos1.x/apps I got the following error: [EMAIL PROTECTED] /cygdrive/c/tinyos/cygwin/opt/tinyos-1.x/apps/TOSBase $ make mica2 ../Makerules:26: /../apps/Makerules: No such file or directory make: *** No rule to make target `/../apps/Makerules'. Stop. And if I compile an appllication from contrib/xbow/apps I got another error: [EMAIL PROTECTED] /cygdrive/c/tinyos/cygwin/opt/tinyos-1.x/contrib/xbow/apps/CntToLe dsAndRfm $ make mica2 mkdir -p build/mica2 compiling CntToLedsAndRfm to a mica2 binary ncc -o build/mica2/main.exe -Os -I%T/lib/Counters -I%T/../contrib/xbow/tos/platf orm/mica2 -finline-limit=10 -Wall -Wshadow -DDEF_TOS_AM_GROUP=125 -Wnesc-all -target=mica2 -fnesc-cfile=build/mica2/app.c -board=micasb -DCC1K_DEFAULT_FREQ= RADIO_916BAND_CHANNEL_00 -DRADIO_XMIT_POWER=0xFF -DCC2420_TXPOWER=TXPOWER_MAX -D CC2420_DEF_CHANNEL=26 -I%T/lib/Deluge -DIDENT_PROGRAM_NAME=\CntToLedsAndRfm\ - DIDENT_USER_ID=\jabdo\ -DIDENT_HOSTNAME=\aias127\ -DIDENT_USER_HASH=0x86067b fcL -DIDENT_UNIX_TIME=0x450c8106L -DIDENT_UID_HASH=0x6a3fdce7L CntToLedsAndRfm.n c -lm make: *** [exe0] Error 255 This is the output from the command rpm -qa [EMAIL PROTECTED] /cygdrive/c/tinyos/cygwin/opt/tinyos-1.x/apps/Blink $ rpm -qa avr-libc-20030512cvs-1w avarice-2.0.20030825cvs-1w tinyos-contrib-1.1.0-1 tinyos-1.1.15Dec2005cvs-1 avr-binutils-2.13.2.1-1w avr-gcc-3.3tinyos-1w avr-insight-pre6.0cvs.tinyos-1w tinyos-tools-1.1.0-1 task-tinydb-1.1.0-1 tinyos-vm-1.1.0-1 nesc-1.2.7a-1 Thanks in advance, Julia. ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] error when update from TinyOS1.1.10 to TinyOS1.1.15
I upgraded TinyOS1.1.10 to TinyOS1.1.15 but when I try to compile an application in tinyos1.x/apps I got the following error: [EMAIL PROTECTED] /cygdrive/c/tinyos/cygwin/opt/tinyos-1.x/apps/TOSBase $ make mica2 ../Makerules:26: /../apps/Makerules: No such file or directory make: *** No rule to make target `/../apps/Makerules'. Stop. And if I compile an appllication from contrib/xbow/apps I got another error: [EMAIL PROTECTED] /cygdrive/c/tinyos/cygwin/opt/tinyos-1.x/contrib/xbow/apps/CntToLe dsAndRfm $ make mica2 mkdir -p build/mica2 compiling CntToLedsAndRfm to a mica2 binary ncc -o build/mica2/main.exe -Os -I%T/lib/Counters -I%T/../contrib/xbow/tos/platf orm/mica2 -finline-limit=10 -Wall -Wshadow -DDEF_TOS_AM_GROUP=125 -Wnesc-all -target=mica2 -fnesc-cfile=build/mica2/app.c -board=micasb -DCC1K_DEFAULT_FREQ= RADIO_916BAND_CHANNEL_00 -DRADIO_XMIT_POWER=0xFF -DCC2420_TXPOWER=TXPOWER_MAX -D CC2420_DEF_CHANNEL=26 -I%T/lib/Deluge -DIDENT_PROGRAM_NAME=\CntToLedsAndRfm\ - DIDENT_USER_ID=\jabdo\ -DIDENT_HOSTNAME=\aias127\ -DIDENT_USER_HASH=0x86067b fcL -DIDENT_UNIX_TIME=0x450c8106L -DIDENT_UID_HASH=0x6a3fdce7L CntToLedsAndRfm.n c -lm make: *** [exe0] Error 255 This is the output from the command rpm -qa [EMAIL PROTECTED] /cygdrive/c/tinyos/cygwin/opt/tinyos-1.x/apps/Blink $ rpm -qa avr-libc-20030512cvs-1w avarice-2.0.20030825cvs-1w tinyos-contrib-1.1.0-1 tinyos-1.1.15Dec2005cvs-1 avr-binutils-2.13.2.1-1w avr-gcc-3.3tinyos-1w avr-insight-pre6.0cvs.tinyos-1w tinyos-tools-1.1.0-1 task-tinydb-1.1.0-1 tinyos-vm-1.1.0-1 nesc-1.2.7a-1 Thanks in advance, Julia. ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
Re: [Tinyos-help] Watchdog for tmote
It is easy to use the watchdog timer in the MSP430, and using it is fairly application specific, which are primary reasons there is no component for it. Here are some tips:1) Read Chapter 10 Watchdog Timer in the MSP430 x1xx User's Guide from TI 2) MSPGCC defines some helper macros in common.h (which is indirectly included in all TinyOS MSP430 builds). Find it at /opt/msp430/msp430/include/msp430/common.h. See for instance WDT_ARST_1000 which configures the watchdog timer to fire after about 1000ms based on a 32kHz ACLK. 3) For a concrete example, see KrakenWatchdogM.nc in tinyos-1.x/contrib/nestfe/nesc/sensorboard/trio/. You will need to check that out from CVS, a packaged TinyOS distribution will not have it. For instance, the code is constructed so that this line of code is periodically called things are working correctly: WDTCTL = WDT_ARST_1000; The pieces tested here are the Timer system (explicitly) and task execution (implicitly). If either of those catastrophically fail, the system resets within a few seconds.- Cory On 9/18/06, Pablo Gil Montaño [EMAIL PROTECTED] wrote: From what I understand, I don't think so, because if the system enters an infinite loop or somtehing it will prevent both timers from firing and nobody will reset the device.KANG HUI [EMAIL PROTECTED] escribió: Hi,is that possible you can use two or more timer so that one timer can be used as the watchdog?On Mon, 18 Sep 2006, [iso-8859-1] Pablo Gil Montaño wrote: Hello. I want to use a watchdog timer in tmotes nodes to reset the motes if something goes wrong. I have been browsing through WDTC and WatchdogC, but they seem to be written for other platforms. Is there any implementation for tmote? Thanks in advance. - LLama Gratis a cualquier PC del Mundo. Llamadas a fijos y móviles desde 1 céntimo por minuto. http://es.voice.yahoo.com LLama Gratis a cualquier PC del Mundo.Llamadas a fijos y móviles desde 1 céntimo por minuto. http://es.voice.yahoo.com ___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] In Network Programming
I'm trying to program my motes through the network using TOS2.0. I've read the document Mote In-Network Programming User Reference but I'm still a bit unsure on where to start. I know I need to wire a module into my program. What is this module and where do i find it? I also can't find the XNP java tool, does it tot come in TOS2.0? How do I upload the program to my mote? Any other help / guidance you could give me would be great.Thanks ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] External sensor reading
Hello everyone, I am trying to use Moteiv- tmote telos-b unit to sample two signals using the external pins available on the unit. I want to sample each one with a sampling rate of 30 ks/s and send them to another telos-b unit connected to a laptop and save the signal waveformson the computer. Any available codes that can help me do that. I already examined Oscilloscope code and it seemed to me complex enough to modify. Thanks. Cepni ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
Re: [Tinyos-help] External sensor reading
Cepni,It will not be possible for you to sample at 30kHz across two channels and transmit the data in real-time. You will have to sample sensors to some form of flash memory. The motes have a 1mB flash chip, but this will fill up very fast with the sampling rate you are needing. The 1mB flash chip will be capable of storing only about 8.5sec worth of your data. It will probablyalso be difficult to efficient write code transfer the data across the SPI bus to the flash chip fast enough, since the system clock is just 4MHz. The reason that this is not possible for real-time sampling is that the network cannot handle throughput rates that high. The maximum theoretical data rate of the radio is 250kbps. ADC samples are 2bytes in size, so:30,000 samples/channel * 2 channels * 2 bytes/sample *8 bits/byte = 960kbpsThis is almost 4x the rate that can be pushed across the radio.Someone else on the list can correct me if I am wrong, but I thought you should know some of the restrictions that you are facing trying to uses the motes to sample that fast.Matt[EMAIL PROTECTED] wrote: -To: tinyos-help@Millennium.Berkeley.EDUFrom: "Gurkan Cepni" [EMAIL PROTECTED]Sent by: [EMAIL PROTECTED]Date: 09/18/2006 02:19PMSubject: [Tinyos-help] External sensor readingHello everyone, I am trying to use Moteiv- tmote telos-b unit to sample two signals using the external pins available on the unit. I want to sample each one with a sampling rate of 30 ks/s and send them to another telos-b unit connected to a laptop and save the signal waveformson the computer. Any available codes that can help me do that. I already examined Oscilloscope code and it seemed to me complex enough to modify. Thanks. Cepni ___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDUhttps://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] Interacting with Tinydb in Matlab
Hi all, I am trying to send queries to a network of Mica2 motes, with TinyDB installed on them, from Matlab. I believe that I have imported all of the appropriate java objects (or packages) in my mfile, but I am unsure of how to parse a query to be sent to the network. For instance, say I want to send out a message that says SELECT light, FROM sensors, EPOCH DURATION 256. I know that this message needs to be parsed and put in the QueryMsg object, I just don't know the syntax of the command, or even which parser I should be using (the SensorQueryer.translateQuery object?). In case I haven't made it obvious already I really don't know java at all, so this may be a very silly question. Any help that can be offered regarding the syntax for parsing an SQL string in Matlab would be greatly appreciated, regards, Robert ps if it matters I am using matlab 7 (R14) _ SearchYour way, your world, right now! http://imagine-windowslive.com/minisites/searchlaunch/?locale=en-usFORM=WLMTAG ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] make telosb docs -- error
I already upgraded graphviz to version 2.8, but it still report this error. How to deal with it? Thanks. == nesc1: warning: DOC WARNING: your version of `dot' does not support client-side image maps. Upgrade to graphviz = 1.8.8 to enable clickable wiring diagrams. warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
Re: [Tinyos-help] External sensor reading
Hi Cepni, at 30 ksps you should probably use DMA to interface to hte sensor. For example of how to do this look at the drivers for Microphone*.nc in /opt/moteiv/tos/sensorboards/invent/ (I assume you use Boomerang). If you would like to look at an example of buffering a larger chunk of data and disseminating it afterwards take a look at the Ditto application in /opt/moteiv/apps/invent/Ditto/ Best regards, Rob On 9/18/06, Gurkan Cepni [EMAIL PROTECTED] wrote: Hello everyone, I am trying to use Moteiv- tmote telos-b unit to sample two signals using the external pins available on the unit. I want to sample each one with a sampling rate of 30 ks/s and send them to another telos-b unit connected to a laptop and save the signal waveforms on the computer. Any available codes that can help me do that. I already examined Oscilloscope code and it seemed to me complex enough to modify. Thanks. Cepni ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
Re: [Tinyos-help] In Network Programming
On Sep 18, 2006, at 10:54 AM, Ian Welch wrote: I'm trying to program my motes through the network using TOS2.0. I've read the document Mote In-Network Programming User Reference but I'm still a bit unsure on where to start. I know I need to wire a module into my program. What is this module and where do i find it? I also can't find the XNP java tool, does it tot come in TOS2.0? How do I upload the program to my mote? Any other help / guidance you could give me would be great. TinyOS 2.0 does not yet support in-network programming. It's on the top of the list for the next release (November). Phil ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
Re: [Tinyos-help] In Network Programming
So in-network programming will be available in the next release which is due out in November? Will it be Deluge or some other program?IanOn 9/18/06, Philip Levis [EMAIL PROTECTED] wrote: On Sep 18, 2006, at 10:54 AM, Ian Welch wrote: I'm trying to program my motes through the network using TOS2.0. I've read the document Mote In-Network Programming User Reference but I'm still a bit unsure on where to start. I know I need to wire a module into my program. What is this module and where do i find it? I also can't find the XNP java tool, does it tot come in TOS2.0? How do I upload the program to my mote? Any other help / guidance you could give me would be great. TinyOS 2.0 does not yet support in-network programming. It's on thetop of the list for the next release (November).Phil ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
Re: [Tinyos-help] SerialForwarder issue with incoming packet size
It looks like the length field that the pc expects has been set to 0xff, which might be overlayed from some other data field. If you can use ListenRaw to get the actual message bytes you may be able to hand disassemble them and figure it out. I have a tiny tickle of a memory that this is a version problem between the PC and the Motes, possibly due to your TOSBase not translating micaz/AM.h structs to types/AM.h, or vice-versa. You didn't say what devices you are using, but if it is micaz, you should still use mica2 in your MOTECOM variable. MS Nuwan Ginige wrote: Hi, I've been working on micaz motes using tinyos 1.1.10, and have been experimenting with the communication functionalities, specifically AMStandard and GenericComm. Recently, when using SerialForwarder in conjunction with the Oscilloscope application, I've been getting the following error: TOS_Msg length is invalid: header_length=265, real_length=xxx where xxx represents the actual packet size (this error occurs for any program I run on the mote) Does anyone have any ideas as to why this may be happening? I've tried to trace it through, but haven't found anything as yet, and I'm pretty puzzled... any help would be greatly appreciated. Cheers Nuwan ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
Re: [Tinyos-help] External sensor reading
On Monday 18 September 2006 01:11 pm, Gurkan Cepni wrote: Actually, I am not planning to sample the signals continously. That's ok for me to sample for just 2 secs. (using 30ksps sampling rate: I want to sample it fast so that the environment will not change much) I wrote a test program on a Telos-like platform (MSP430, 4MHz) that sampled 3 channels at 26kSa/sec (aggregate rate of 78kSa/sec), performing a simple sum-of-squares calculation on each group of three samples and saving the largest vector. The program did nothing else and was definitely maxing out the processing power of the MSP430 (it was using the coprocessor to calculate the squares). This code later went into a sampling application where it was throttled back to 10kSa/sec (30kSa/sec aggregate), sampling very infrequently and only for 500ms at a time. IOW, you can probably hit 30kSa/sec for 2 channels if you can figure out how to handle the amount of data being generated. Based on your analysis, 2 secs. of data is 960kbps*2sec=1920 kb. This can be easily stored on the memory and be transferred to base station (it is not critical to how fast the mote transfers data to base station.). Actually, 1920kb is nearly 2 megabits. It would fit in flash, but I'm not sure if the TelosB is fast enough as a whole to drive the flash fast enough. If storing all the raw data, 2 second sample may still be too big to reliably handle. In short, I will push a button on the remote mote, the mote will sample 2 external signals (with 30ksps) for 2 secs, store data on the memory, send it to base-station, then laptop, then save it on the computer. The next time I push the button for the second recording can be 20 sec.s or more later, no problem. Can the mote do some processing of the sample data before sending it to the computer? If you're looking for a certain kind of event, perhaps all or part of the processing required to characterize that event could run on the mote and reduce the size of the data set considerably. ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] Problem with make platform docs
The generated document does not contain pictures. How to solve this? warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
RE: [Tinyos-help] repeating tests,no free memory
Ah, yes - 1.3V is a definit problem. You need to be able to source 2.7 volts minimum, with 75+ mA. I recommend going above 2.7 volts to about 3.3-3.6 volts just to allow for some voltage sag. The crash happens so fast (1 ms) that you can't even detect what's going on. -Original Message- From: Munaretto, Daniel [mailto:[EMAIL PROTECTED] Sent: Monday, September 18, 2006 8:52 AM To: David Moss; tinyos-help@Millennium.Berkeley.EDU Subject: RE: [Tinyos-help] repeating tests,no free memory I'm using not so much RAM, at compile time is around 1700 bytes (it depends on the different versions of my program). But now, after other tests, i see that when the motes enter in the reading-from-flash phase, something happens and some of them break down. They are not more able to work.And only after a reading phase. May be the batteries? i know about the 70mA of current, but if i use rechangeable batteries, so 1.3 V, are there problems?i can measure only voltage by a voltmetre. I really don't know how to understand what's going on in the reading phase to let some motes to break down in this way. One problem may be is about the parameters i need when the reading phase is done: i need the same parameters i use when i posted the task.So the global parameters buf_flash,State,mess,flashAddr, flashLen,flashBuffer are probably different when the readDone event fires up from the ones used posting the task.But only when the reading is done i can use that buffer and so i can execute my program..so for example sending packets,math operations,etc.. Buffer *flashBuffer,*buffer,*ibuf,*ibuff; Buf_flash *Head,*buf_flash; Datagram *mess,*datagram; uint8_t State; task void readFlash(){ if (!call FlashBridge.read(flashAddr,flashBuffer,flashLen)){ post readFlash();} return; } void readInToFlash(uint8_t s,Buf_flash *buf,Datagram *message,Buffer *buffer_r,uint32_t addr, uint32_t len){ buf_flash=buf; State=s; mess=message; flashAddr=addr; flashLen=len; flashBuffer=buffer_r; post readFlash(); return; } event void FlashBridge.readDone(uint32_t addr, void *buf, uint32_t len, result_t result){ if (result){ //operations where i need to use the same global variables declared in the task!for now i'm using normally mess,State,etc..but i think are different from the same one before posting the task. //for example if i use //if(mess-data==...). //i think it is not the same mess written before post readFlash()... else post readFlash(); return; } -Original Message- From: David Moss [mailto:[EMAIL PROTECTED] Sent: Fri 9/15/2006 6:27 PM To: Munaretto, Daniel; tinyos-help@Millennium.Berkeley.EDU Cc: Subject: RE: [Tinyos-help] repeating tests,no free memory How much RAM is your program consuming at compile time? The MicaZ is notorious for running out of RAM just when you need it because it only has 4kB. If your global memory usage is already quite a bit (3kB maybe? maybe more? maybe less?) and you throw a bunch of stuff on the stack, your mote will crash in a seemingly random fashion, depending on what's going on. I've had apps before that used around 3kB of RAM when the program is compiled, and then crashed awhile later because the stack overflowed. If the task queue is full (and it's in global memory btw, so simply posting tasks shouldn't cause a stack overflow) then when you post a task, the post will return FAIL. It could also be that your app is posting a task and expecting it to run before continuing on, and that task never actually got posted. I've personally never had that problem before, even with running a full file system on top of flash bridge with the radio transmitting and receiving. -Original Message- From: Munaretto, Daniel [mailto:[EMAIL PROTECTED] Sent: Friday, September 15, 2006 9:02 AM To: David Moss; tinyos-help@Millennium.Berkeley.EDU Subject: RE: [Tinyos-help] repeating tests,no free memory Dear all, i tried to use TinyAlloc interface but the results are really similar. So this is not a problem of the calloc function. But i start thinking the problem is in the stack. If i post too many tasks, can the mote crash? The problem is that i have to use tasks to handle the FlashBridge interface in order to use properly the reading and writing phase on Flash-RAM. And i'm also using a task for the sending interface (own mote messages) and for the forwarding one (messages from other motes), all synchronized by timers. So if i use micaz
Re: [Tinyos-help] Problem with make platform docs
What program is generating those warnings? But in any case you want to make sure that you have Graphviz installed and accessable in your PATH. (it contains the dot net-graphics plotter). MS Adam wrote: The generated document does not contain pictures. How to solve this? warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
RE: [Tinyos-help] Problem with make platform docs
Thanks, I just figure out. The reason is Matlab 6.1 has a dot.exe too. To solve it, I move Graphviz/bin to front of Matlab/bin. -Original Message- From: Michael Schippling [mailto:[EMAIL PROTECTED] Sent: Monday, September 18, 2006 4:34 PM To: Adam Cc: 'tinyos-help' Subject: Re: [Tinyos-help] Problem with make platform docs What program is generating those warnings? But in any case you want to make sure that you have Graphviz installed and accessable in your PATH. (it contains the dot net-graphics plotter). MS Adam wrote: The generated document does not contain pictures. How to solve this? warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext warning, language cmap not recognized, use one of: dot canon plain plain-ext warning, language gif not recognized, use one of: dot canon plain plain-ext ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
[Tinyos-help] RE: Blackbook5: dataLength, minimumSize for dictionary files
Hi Manu, In Blackbook5, what does BDictionary.getDataLength return? .. what should minimumSize include? First, are you referring to the BFileDir.getDataLength(char *filename) command, being run on a Dictionary file? Dictionary files have special properties to them that allow them to be updated indefinitely. The way it works is when you first open a Dictionary file, you must specify the minimum size. On the flash, Blackbook will reserve *at least* that minimum size to store data - but if you want the background information on that, the actual size on flash will extend to the next page boundary. This can make your actual file size up to 255 bytes larger than you requested. Better a file be made a few bytes too big than too small. After you have opened a Dictionary file for the first time, its footprint on flash will remain constant throughout its lifetime. The dictionary file itself will physically move around to various locations on flash as it fills up and removes invalid keys throughout its lifetime, but the valid (undeletable) footprint on flash will always stay the same. Because flash can't actually delete data very easily, is better to leave old data written to flash and just ignore it. That means that as you delete or update existing keys in your Dictionary file, the amount of data in that Dictionary file is growing, not shrinking or changing. There comes a point where the amount of data (invalid + valid data) in the Dictionary file fills up to the size you requested when you first created the file. At that point, the Dictionary file will physically move to another location on flash and copy all the previous valid key-values over, leaving all the old key-value pairs behind (to be deleted by the garbage collector when the time is right). So... if you call getDataLength(..) on your dictionary file, you'll see the size is changing all over the place as you add or update keys - or maybe it changes only after you've closed and opened the file again. However it does it, a better indicator of Dictionary file size is getReservedLength(..), which tells you the dictionary file's footprint on flash. If you were to copy a complete dictionary file from flash to your computer, you'd want to copy its entire footprint, which is getReservedLength(..). The reserved length should remain constant throughout the file's lifetime, as I said. But it could be much bigger than the amount of data actually written to the dictionary file. Also, when you call Bdictionary.open, you get an opened() event with uint32_t totalSize, uint32_t remainingBytes. These two variables give you a snapshot of the state of the Dictionary file, but it's only valid at the time you open the Dictionary file. The amount of actual data in the Dictionary file should be (totalSize - remainingBytes). Back to the minimumSize parameter on open... Because the Dictionary file's footprint remains constant throughout its lifetime, that means that the minimumSize parameter in Bdictionary.open(..) gets completely ignored if it's not the first time you've opened that specific Dictionary file. The minimumSize parameter is only accessed the first time you open a Dictionary file. The larger you make the minimumSize value when you call Bdictionary.open for the first time, then A) you'll be able to store more and larger key-value pairs in your file, and B) it's going to take more time and energy to insert and retrieve key-value pairs as your Dictionary file fills up. And yes, the only real way to count the number of keys is to actually traverse the key list like you mentioned. If Blackbook provided that functionality itself, that's exactly what it would do. And since that's not needed in all applications, it's better to save ROM space for the apps that don't need it and only implement it at a higher level above Blackbook for the apps that do need it. I hope that clears things up and I also hope Blackbook is working out for you. Let me know if you have any more questions -David -Original Message- From: Manu Bansal [mailto:[EMAIL PROTECTED] Sent: Monday, September 18, 2006 11:50 AM To: [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Subject: Blackbook5: dataLength, minimumSize for dictionary files Dear Mr. Moss, I am an undergraduate student at Indian Institute of Technology Kanpur (IIT Kanpur), working on a sensor network project and using Blackbook5. There's a question to which I couldn't find an answer in the included pdf or the interface inline comments. I couldn't get any help from the tinyos-help list either, hence a personal mail. In Blackbook5, what does BDictionary.getDataLength return? Is it the length of data inserted as values, or keys and values both, or other? And similarly, what should minimumSize include? For regular files, the semantics is clear, but I'm not sure about dictionary files, and getDataLength doesn't return the expected value. For 5 key-value pairs each having value 12B long, the returned
Re: [Tinyos-help] error when update from TinyOS1.1.10 to TinyOS1.1.15
In the first error make is complaining about the missing Makerules file under /opt/tinyos-1.x/apps directory. Not sure about the second error because you haven't given the complete error message. On 9/19/06, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: I upgraded TinyOS1.1.10 to TinyOS1.1.15 but when I try to compile anapplication in tinyos1.x/apps I got the following error:[EMAIL PROTECTED] /cygdrive/c/tinyos/cygwin/opt/tinyos-1.x/apps/TOSBase $ make mica2../Makerules:26: /../apps/Makerules: No such file or directorymake: *** No rule to make target `/../apps/Makerules'.Stop.And if I compile an appllication from contrib/xbow/apps I got another error:[EMAIL PROTECTED]/cygdrive/c/tinyos/cygwin/opt/tinyos-1.x/contrib/xbow/apps/CntToLedsAndRfm$ make mica2mkdir -p build/mica2compiling CntToLedsAndRfm to a mica2 binary ncc -o build/mica2/main.exe -Os -I%T/lib/Counters-I%T/../contrib/xbow/tos/platform/mica2 -finline-limit=10 -Wall -Wshadow -DDEF_TOS_AM_GROUP=125-Wnesc-all -target=mica2 -fnesc-cfile=build/mica2/app.c -board=micasb -DCC1K_DEFAULT_FREQ= RADIO_916BAND_CHANNEL_00 -DRADIO_XMIT_POWER=0xFF-DCC2420_TXPOWER=TXPOWER_MAX -DCC2420_DEF_CHANNEL=26 -I%T/lib/Deluge-DIDENT_PROGRAM_NAME=\CntToLedsAndRfm\ - DIDENT_USER_ID=\jabdo\ -DIDENT_HOSTNAME=\aias127\-DIDENT_USER_HASH=0x86067bfcL -DIDENT_UNIX_TIME=0x450c8106L -DIDENT_UID_HASH=0x6a3fdce7LCntToLedsAndRfm.n c -lmmake: *** [exe0] Error 255This is the output from the command rpm -qa [EMAIL PROTECTED] /cygdrive/c/tinyos/cygwin/opt/tinyos-1.x/apps/Blink$ rpm -qaavr-libc-20030512cvs-1wavarice-2.0.20030825cvs-1wtinyos-contrib-1.1.0-1tinyos-1.1.15Dec2005cvs-1avr-binutils-2.13.2.1-1w avr-gcc-3.3tinyos-1wavr-insight-pre6.0cvs.tinyos-1wtinyos-tools-1.1.0-1task-tinydb-1.1.0-1tinyos-vm-1.1.0-1nesc-1.2.7a-1Thanks in advance,Julia.___ Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDUhttps://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help