Open-ZB stack porting to TmoteSky: Difference between revisions
Line 9: | Line 9: | ||
== Developing phase == | == Developing phase == | ||
* [5,6 - 2007] | |||
I used the TinyOS Tmote Sky hardware modules: | |||
: \tinyos-1.x\tos\platform\msp430\ | |||
: \tinyos-1.x\tos\platform\telos\ | |||
:\tinyos-1.x\tos\platform\telosb\ | |||
moved it to: | |||
:\tinyos-1.x\contrib\hurray\tos\platform\ | |||
and I'm trying to modify some files. | |||
Since wasn't necessary change the PHY-layer files, because I have basic problem: | |||
During compiling the Blink application to a telosb binary: | |||
: ''In file included from \tinyos-1.x\contrib\hurray\tos\system\Main.nc from Blink.nc'' | |||
: ''In component 'PotC':'' | |||
: ''\tinyos-1.x\contrib\hurray\tos\system\PotC.nc component HPLPotC not found'' | |||
: ''In file included from Blink.nc:'' | |||
: ''In component 'Main':'' | |||
: ''\tinyos-1.x\contrib\hurray\tos\system\Main.nc component HPLInit not found'' | |||
: ''In file included from \tinyos-1.x\contrib\hurray\tos\system\TimerC.nc from SingleTimer.nc and Blink.nc'' | |||
: ''In component 'ClockC':'' | |||
: ''\tinyos-1.x\contrib\hurray\tos\system\ClockC.nc component HPLClock not found'' | |||
That's right. I thing, I have to change the directory ''\tinyos-1.x\contrib\hurray\tos\system\'' to ''\tinyos-1.x\contrib\hurray\tos\platform\msp430'' before linking someway, so that all files | |||
included in ''\tos\system'' (as well as in ''\platform\msp430'') were replace by the files from | |||
''\platform\msp430''. | |||
The files in ''\tos\system\'' are primarily determined for other platforms (e.g. Mica). You can see: | |||
The Blink application uses these files: | |||
MicaZ platform: | |||
: ''platform/micaz/PowerManagementM.nc'' | |||
: ''system/ClockC.nc, LedsC.nc, Main.nc, NoLeds.nc, PotC.nc, PotM.nc, RealMain.nc, TimerC.nc, TimerM.nc'' | |||
: ''tos/platform/avrmote/HPLInit.nc'' | |||
: ''tos/platform/mica/HPLClock.nc'' | |||
: ''tos/platform/mica2/HPLPotC.nc'' | |||
TelosB platform: | |||
: ''tos/platform/msp430/HPLInitC.nc, HPLInitM.nc, LocalTime.nc, MSP430Capture.nc, MSP430ClockC.nc, MSP430ClockInit.nc, MSP430ClockM.nc, MSP430Compare.nc, MSP430DCOCalibC.nc, MSP430DCOCalibM.nc, MSP430Timer.nc, MSP430TimerC.nc, MSP430TimerControl.nc, MSP430TimerM.nc, Main.nc, MainM.nc, TimerC.nc, TimerJiffy.nc, TimerM.nc, TimerMilli.nc'' | |||
: ''tos/system/LedsC.nc'' | |||
I think, it's a problem in a 'Makefile' file. | |||
I tried to add to the 'Makefile' (\tinyos-1.x\contrib\hurray\apps\Blink\) | |||
: ''PFLAGS += -I$(HURRAYROOT)/platform/msp430'' | |||
but the compiler takes the files still from \tinyos-1.x\contrib\hurray\tos\system\ | |||
---- | |||
* [3,4 - 2007] | |||
* zjistil jsem, ktere soubory pouziva implementace fyzicke vrstvy, je tvorena soubory: | * zjistil jsem, ktere soubory pouziva implementace fyzicke vrstvy, je tvorena soubory: | ||
: \contrib\hurray\tos\lib\phy\ phy_const.h, phy_enumerations.h, Phy.nc, PhyM.nc | : \contrib\hurray\tos\lib\phy\ phy_const.h, phy_enumerations.h, Phy.nc, PhyM.nc |
Revision as of 02:41, 11 February 2007
Weekly reports
Weekly Reports - what is done, what is doing, what will be done.
Project definition
Open-ZB protocol stack designed at Polytechnical institute of Porto, Portugal is implemented for MicaZ platform in TinyOS/nesC and we would like to port it to TmoteSky (TelosB) platform.
OpenZB-stack is developed for the MicaZ platform. My first task is to transform OpenZB-stack to the TelosB platform (Tmote Sky). Second task is develop aplication by using TinyOS for data collection along through the wireless body area network for monitoring physical condition of a Parkinson’s disease patient.
Developing phase
- [5,6 - 2007]
I used the TinyOS Tmote Sky hardware modules:
- \tinyos-1.x\tos\platform\msp430\
- \tinyos-1.x\tos\platform\telos\
- \tinyos-1.x\tos\platform\telosb\
moved it to:
- \tinyos-1.x\contrib\hurray\tos\platform\
and I'm trying to modify some files.
Since wasn't necessary change the PHY-layer files, because I have basic problem: During compiling the Blink application to a telosb binary:
- In file included from \tinyos-1.x\contrib\hurray\tos\system\Main.nc from Blink.nc
- In component 'PotC':
- \tinyos-1.x\contrib\hurray\tos\system\PotC.nc component HPLPotC not found
- In file included from Blink.nc:
- In component 'Main':
- \tinyos-1.x\contrib\hurray\tos\system\Main.nc component HPLInit not found
- In file included from \tinyos-1.x\contrib\hurray\tos\system\TimerC.nc from SingleTimer.nc and Blink.nc
- In component 'ClockC':
- \tinyos-1.x\contrib\hurray\tos\system\ClockC.nc component HPLClock not found
That's right. I thing, I have to change the directory \tinyos-1.x\contrib\hurray\tos\system\ to \tinyos-1.x\contrib\hurray\tos\platform\msp430 before linking someway, so that all files included in \tos\system (as well as in \platform\msp430) were replace by the files from \platform\msp430. The files in \tos\system\ are primarily determined for other platforms (e.g. Mica). You can see:
The Blink application uses these files: MicaZ platform:
- platform/micaz/PowerManagementM.nc
- system/ClockC.nc, LedsC.nc, Main.nc, NoLeds.nc, PotC.nc, PotM.nc, RealMain.nc, TimerC.nc, TimerM.nc
- tos/platform/avrmote/HPLInit.nc
- tos/platform/mica/HPLClock.nc
- tos/platform/mica2/HPLPotC.nc
TelosB platform:
- tos/platform/msp430/HPLInitC.nc, HPLInitM.nc, LocalTime.nc, MSP430Capture.nc, MSP430ClockC.nc, MSP430ClockInit.nc, MSP430ClockM.nc, MSP430Compare.nc, MSP430DCOCalibC.nc, MSP430DCOCalibM.nc, MSP430Timer.nc, MSP430TimerC.nc, MSP430TimerControl.nc, MSP430TimerM.nc, Main.nc, MainM.nc, TimerC.nc, TimerJiffy.nc, TimerM.nc, TimerMilli.nc
- tos/system/LedsC.nc
I think, it's a problem in a 'Makefile' file. I tried to add to the 'Makefile' (\tinyos-1.x\contrib\hurray\apps\Blink\)
- PFLAGS += -I$(HURRAYROOT)/platform/msp430
but the compiler takes the files still from \tinyos-1.x\contrib\hurray\tos\system\
- [3,4 - 2007]
- zjistil jsem, ktere soubory pouziva implementace fyzicke vrstvy, je tvorena soubory:
- \contrib\hurray\tos\lib\phy\ phy_const.h, phy_enumerations.h, Phy.nc, PhyM.nc
- je treba najit odpovidajici soubory patrici msp430 a telosu, ktere spravuji prikazy a udalosti, ktere obsahuji posledni dva hlavni soubory a upravit je - implementovat v nich dalsi obsazene prikazy a udalosti
- pouziva:
- \contrib\hurray\tos\lib\CC2420Radio\ byteorder.h, HPLCC2420.nc, HPLCC2420FIFO.nc, HPLCC2420RAM.nc
- z CC2420Control.nc a CC2420ControlM.nc jsou pouzity parametry a data pro PhyM.nc
- mely by zustat stejne
- \contrib\hurray\tos\platform\avrmote\ HPLInit.nc, HPLPotC.nc
- najit odpovidajici soubory pro msp430
- \contrib\hurray\tos\platform\micaz\ HPLCC2420C.nc, HPLCC2420FIFOM.nc, HPLCC2420M.nc, HPLPowerManagementM.nc,
- HPLTimer2.nc, HPLTimer2C.nc
- najit odpovidajici soubory pro telos a telosb
- \contrib\hurray\tos\system\ frame_format.h, Main.nc, RealMain.nc, PotC.nc, PotM.nc
- mely by zustat stejne
- \contrib\hurray\tos\interfaces\ Pot.nc, HPLPot.nc, PowerManagement.nc, StdControl.nc,
- mely by zustat stejne
- \contrib\hurray\tos\interfaces\ieee802154\phy\ all
- mely by zustat stejne
- protoze nelze pouze jednoduse zamenit soubory a jejich provazani je do velke hloubky, zacal jsem prodrobne analyzovat vsechny soubory vyse, abych mel alespon "predstavu" jak vse spolu komunikuje, jak je vse provazano, co co vola a pouziva, na co se co odkazuje, protoze abych porozumel, jak presne vrstva funguje a co se v ni pri behu deje, na to (snad postupem casu) nemam znalosti.
- pro nalezeni veskerych provazani jsem chtel pouzit vytvorenou dokumentaci (pomoci graphviz), moje jedine informace jsou z Technical Report (Andre Cunha, Mario Alves), coz je malo, bohuzel s temito problemy:
- - prelozit soubory MAC vrstvy nelze, vytvorit dokumentaci lze
- - prelozit soubory PHY vrstvy ani vytvorit dokumentaci nelze
- Nevite proc? Jestli se soubory kompiluji vsechny spolecne s aplikaci nebo nejak jinak, protoze pri prekladu aplikace pro micaz probehne vse ok (ale neoverim jestli to funguje, mam k dispozici pouze modul telosb).