IBBT event :  Technical workshop iLab.t: wilab Bart Jooris Friday November 14th 2008
Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardw...
Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardw...
Introduction: <ul><li>Zuiderpoort office park </li></ul><ul><ul><li>3 floors </li></ul></ul><ul><ul><ul><li>2 zones per fl...
Deployment of the testbed 1 st  floor
Deployment of the testbed 2 nd  floor
Deployment of the testbed 3 th  floor
Introduction DUT WLAN sensor iNode: Embedded PC WLAN EE
Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardw...
Sensornode: Tmote Sky <ul><ul><li>Tmote Sky:  </li></ul></ul><ul><ul><ul><li>Radio; CC2420 (2.4GHz band, channels 11-26, 2...
Tmote Sky front
Tmote Sky back
Tmote Sky IPC headers
Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardw...
Block Diagram of the EE
EE front
EE back
GPIO of the EE <-> GPIO of the DUT
WiLab @ IBBT: Environment Emulator DUT can be a sensor, but also an actuator! Environment Emulators can be put in cascade ...
Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardw...
iNode specifications <ul><li>iNode = PC-Engines ALIX 3c3  </li></ul><ul><ul><li>alix3c3 = 1 LAN / 2 miniPCI / LX800 / 256 ...
Inode mobo front
Inode mobo back
iNode specifications <ul><li>iNode is equipped with: </li></ul><ul><ul><li>1 x Compact Flash 1Gb </li></ul></ul><ul><ul><l...
Components
How did we get there ? iNodes EEs Assembly days
Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardw...
Software : Tinyos <ul><li>Why tinyos </li></ul><ul><ul><li>Big community, support for many platforms, huge implementation ...
Software TinyOS? <ul><li>You can try any other OS on the Tmote/telosb platform </li></ul><ul><ul><li>No restrictions on fi...
nesC static linking events and commands <ul><li>interface X { </li></ul><ul><ul><li>async command void a(); </li></ul></ul...
Demo code <ul><li>RedLed </li></ul>RedLedP.nc (Program)‏ module RedLedP { uses interface Leds; uses interface Boot; } Impl...
Software <ul><li>Sensor board communication </li></ul><ul><ul><li>exchanging  messages </li></ul></ul><ul><li>Wilab has su...
Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardw...
Software: Job <ul><li>Job </li></ul><ul><ul><li>Connect firmware images to specific sensor nodes </li></ul></ul><ul><ul><l...
Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardw...
Software scenario <ul><li>Scenario </li></ul><ul><ul><li>Execute events on predefined relative times or RT </li></ul></ul>...
Software Scenario sampler interface <ul><li>Sampler </li></ul><ul><ul><li>ADCid  can be 0-4,6,8,9 </li></ul></ul><ul><ul><...
Software Scenario sampler report <ul><li>Sampler report </li></ul><ul><ul><li>ADCid  can be 0-4,6,8,9 </li></ul></ul><ul><...
Software Scenario streamer interface <ul><li>Streamer </li></ul><ul><ul><li>DACid  can be 0,1 </li></ul></ul><ul><ul><li>i...
Software Scenario 7seg interface <ul><li>Config7Seg </li></ul><ul><ul><li>7segType  selects one of the types: </li></ul></...
Software Scenario GPIO & Occurrences interface <ul><li>32 bit “atomic” registers used for changing 16 entities: </li></ul>...
Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardw...
Extention w-iLab.t p.
Software iPlatform <ul><ul><li>User determines </li></ul></ul><ul><ul><ul><li>Inodes linux kernel </li></ul></ul></ul><ul>...
Software iPlatform : General setup p.    Partition 1    SANET jobs Partition 2    iNode jobs /tmp/log on iNode automatic...
Software iPlatform : Intended usage <ul><li>Develop on own small ALIX testbed / VM </li></ul><ul><ul><li>Install Voyage Li...
Software iPlatform:  Files needed for experiment p.    Program files start_mount_code: This script is automatically starte...
Software iPlatform  : concept p.    Inode 1 Inode 2 Inode 3 Inode 4 Master Slaves 1.2.3.4:/master_code/ 1.2.3.4:/slave_cod...
Software iPlatform  : Policy <ul><li>No WLAN testing between 06:00 and 22:00 </li></ul><ul><li>Enforcement </li></ul><ul><...
Software iPlatform : nfs mount p.    <ul><li>Grant mount access to the motelab server: </li></ul><ul><ul><li>Edit the file...
Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardw...
Remote access to wilab <ul><li>OpenVPN </li></ul><ul><ul><li>Runs on windows, linux, mac </li></ul></ul><ul><ul><li>NAT fr...
Demo 1 communication Job + Scenario + Visualisation <ul><li>Example research application: RadioPerf (IBCN devel.)‏ </li></...
Demo 2 : iPlatform (dist. ca 30m)‏ <ul><li>Max throughput on Turbo Channel  without  tweaking the Qos parameters using  1 ...
Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardw...
Conclusion: Feature set <ul><li>Feature set: </li></ul><ul><ul><li>195 fixed locations </li></ul></ul><ul><ul><ul><li>3 fl...
Software demo features <ul><li>Inode </li></ul><ul><ul><li>Toggle user led </li></ul></ul><ul><ul><li>Connect to screen or...
?
Upcoming SlideShare
Loading in...5
×

20081114 Friday Food iLabt Bart Joris

545

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
545
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Komt niet in handouts
  • 20081114 Friday Food iLabt Bart Joris

    1. 1. IBBT event : Technical workshop iLab.t: wilab Bart Jooris Friday November 14th 2008
    2. 2. Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardware </li></ul></ul><ul><ul><ul><li>Tmote Sky </li></ul></ul></ul><ul><ul><ul><li>EE </li></ul></ul></ul><ul><ul><ul><li>iNode </li></ul></ul></ul><ul><ul><li>Software </li></ul></ul><ul><ul><ul><li>Job </li></ul></ul></ul><ul><ul><ul><li>Scenario </li></ul></ul></ul><ul><ul><ul><li>iPlatform </li></ul></ul></ul><ul><li>Some example experiments </li></ul><ul><li>Conclusions, Q&A </li></ul>
    3. 3. Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardware </li></ul></ul><ul><ul><ul><li>Tmote Sky </li></ul></ul></ul><ul><ul><ul><li>EE </li></ul></ul></ul><ul><ul><ul><li>iNode </li></ul></ul></ul><ul><ul><li>Software </li></ul></ul><ul><ul><ul><li>Job </li></ul></ul></ul><ul><ul><ul><li>Scenario </li></ul></ul></ul><ul><ul><ul><li>iPlatform </li></ul></ul></ul><ul><li>Some example experiments </li></ul><ul><li>Conclusions, Q&A </li></ul>
    4. 4. Introduction: <ul><li>Zuiderpoort office park </li></ul><ul><ul><li>3 floors </li></ul></ul><ul><ul><ul><li>2 zones per floor </li></ul></ul></ul><ul><ul><li>190 locations </li></ul></ul>
    5. 5. Deployment of the testbed 1 st floor
    6. 6. Deployment of the testbed 2 nd floor
    7. 7. Deployment of the testbed 3 th floor
    8. 8. Introduction DUT WLAN sensor iNode: Embedded PC WLAN EE
    9. 9. Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardware </li></ul></ul><ul><ul><ul><li>Tmote Sky </li></ul></ul></ul><ul><ul><ul><li>EE </li></ul></ul></ul><ul><ul><ul><li>iNode </li></ul></ul></ul><ul><ul><li>Software </li></ul></ul><ul><ul><ul><li>Job </li></ul></ul></ul><ul><ul><ul><li>Scenario </li></ul></ul></ul><ul><ul><ul><li>iPlatform </li></ul></ul></ul><ul><li>Some example experiments </li></ul><ul><li>Conclusions, Q&A </li></ul>
    10. 10. Sensornode: Tmote Sky <ul><ul><li>Tmote Sky: </li></ul></ul><ul><ul><ul><li>Radio; CC2420 (2.4GHz band, channels 11-26, 250kbps)‏ </li></ul></ul></ul><ul><ul><ul><li>uC; msp4301611 (4MHz, 48K Program Flash, 10K RAM) </li></ul></ul></ul><ul><ul><ul><li>Bus; SPI with DMA (500kbps)‏ </li></ul></ul></ul><ul><ul><ul><li>I/O; (8 ADC (6 +2), 2 DAC, 13 GPIO)‏ </li></ul></ul></ul><ul><ul><ul><li>Interface; USB (program and data)‏ </li></ul></ul></ul><ul><ul><ul><li>Sensors; enf, 2 x t, h, 2 x l </li></ul></ul></ul><ul><ul><ul><li>Antenna; onboard </li></ul></ul></ul>uC Radio BUS Antenna Int Sensors pcb IO
    11. 11. Tmote Sky front
    12. 12. Tmote Sky back
    13. 13. Tmote Sky IPC headers
    14. 14. Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardware </li></ul></ul><ul><ul><ul><li>Tmote Sky </li></ul></ul></ul><ul><ul><ul><li>EE </li></ul></ul></ul><ul><ul><ul><li>iNode </li></ul></ul></ul><ul><ul><li>Software </li></ul></ul><ul><ul><ul><li>Job </li></ul></ul></ul><ul><ul><ul><li>Scenario </li></ul></ul></ul><ul><ul><ul><li>iPlatform </li></ul></ul></ul><ul><li>Some example experiments </li></ul><ul><li>Conclusions, Q&A </li></ul>
    15. 15. Block Diagram of the EE
    16. 16. EE front
    17. 17. EE back
    18. 18. GPIO of the EE <-> GPIO of the DUT
    19. 19. WiLab @ IBBT: Environment Emulator DUT can be a sensor, but also an actuator! Environment Emulators can be put in cascade DUT Environment Emulator PWR SI I(O)‏ Power DAC/ADC, I 2 C, … GP(I)O USB Ethernet + power Fixed interface: RS232, USB, … iNode Current DUT Environment Emulator PWR SI I(O)‏ Power DAC/ADC, I 2 C, … GP(I)O Fixed interface: RS232, USB, … Current
    20. 20. Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardware </li></ul></ul><ul><ul><ul><li>Tmote Sky </li></ul></ul></ul><ul><ul><ul><li>EE </li></ul></ul></ul><ul><ul><ul><li>iNode </li></ul></ul></ul><ul><ul><li>Software </li></ul></ul><ul><ul><ul><li>Job </li></ul></ul></ul><ul><ul><ul><li>Scenario </li></ul></ul></ul><ul><ul><ul><li>iPlatform </li></ul></ul></ul><ul><li>Some example experiments </li></ul><ul><li>Conclusions, Q&A </li></ul>
    21. 21. iNode specifications <ul><li>iNode = PC-Engines ALIX 3c3 </li></ul><ul><ul><li>alix3c3 = 1 LAN / 2 miniPCI / LX800 / 256 MB / USB / VGA / audio </li></ul></ul><ul><ul><li>Spec CPU: 500 MHz AMD Geode LX800 Processing powerPIII 800 MHz </li></ul></ul><ul><ul><li>DRAM: 256 MB DDR DRAM </li></ul></ul><ul><ul><li>Storage: CompactFlash socket </li></ul></ul><ul><ul><li>Power: DC jack or passive POE, min. 7V to max. 20V </li></ul></ul><ul><ul><li>Three LEDs </li></ul></ul><ul><ul><li>Expansion: 2 miniPCI slots, LPC bus </li></ul></ul><ul><ul><li>Connectivity: 1 Ethernet channel (Via VT6105M 10/100) </li></ul></ul><ul><ul><li>I/O: DB9 serial port, dual USB, VGA, audio headphone out/mic in </li></ul></ul><ul><ul><li>RTC battery </li></ul></ul><ul><ul><li>Board size: 100 x 160 mm </li></ul></ul><ul><ul><li>Firmware: Award BIOS </li></ul></ul>
    22. 22. Inode mobo front
    23. 23. Inode mobo back
    24. 24. iNode specifications <ul><li>iNode is equipped with: </li></ul><ul><ul><li>1 x Compact Flash 1Gb </li></ul></ul><ul><ul><li>2 x Compex WLM54SAG 200mW AR5006XS 802.11a/b/g 54/108 Mbps miniPCI wireless card (only main connector is used)‏ </li></ul></ul><ul><ul><li>2 x Pigtail cable I-PEX -> reverse SMA </li></ul></ul><ul><ul><li>2 x dual band antenna’s </li></ul></ul>Electrical Properties of antenna Frequency Range 2.42.5, 5.15 and 5.9GHz Impedance 50 Ohm nominal VSWR 2.0 Gain 2.45GHz = 5dBi 5.25GHz = 5dBi Radiation Omni Polarization Vertical Electrical Wave λ /4 Dipole Connector SMA Plug REVERSE
    25. 25. Components
    26. 26. How did we get there ? iNodes EEs Assembly days
    27. 27. Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardware </li></ul></ul><ul><ul><ul><li>Tmote Sky </li></ul></ul></ul><ul><ul><ul><li>EE </li></ul></ul></ul><ul><ul><ul><li>iNode </li></ul></ul></ul><ul><ul><li>Software </li></ul></ul><ul><ul><ul><li>Job </li></ul></ul></ul><ul><ul><ul><li>Scenario </li></ul></ul></ul><ul><ul><ul><li>iPlatform </li></ul></ul></ul><ul><li>Some example experiments </li></ul><ul><li>Conclusions, Q&A </li></ul>
    28. 28. Software : Tinyos <ul><li>Why tinyos </li></ul><ul><ul><li>Big community, support for many platforms, huge implementation resource,... </li></ul></ul><ul><ul><li>one IBBT team = one development environment </li></ul></ul><ul><ul><li>General description on en.wikipedia.org </li></ul></ul><ul><ul><li>Tutorials on http://docs.tinyos.net/index.php/ </li></ul></ul><ul><ul><li>IBBT Subversion https:// svn.atlantis.ugent.be/svn/wsn / </li></ul></ul><ul><li>Others </li></ul><ul><ul><li>Contiki & Reflex </li></ul></ul>
    29. 29. Software TinyOS? <ul><li>You can try any other OS on the Tmote/telosb platform </li></ul><ul><ul><li>No restrictions on firmware!!! </li></ul></ul><ul><ul><li>Encapsulate non-tinyos messages with tinyos message header </li></ul></ul>enum { TOS_SERIAL_ACTIVE_MESSAGE_ID = 0, TOS_SERIAL_802_15_4_ID = 2, TOS_SERIAL_UNKNOWN_ID = 255, }; typedef nx_struct serial_header { nx_am_addr_t dest; nx_am_addr_t src; nx_uint8_t length; nx_am_group_t group; nx_am_id_t type; } serial_header_t; 45 00 FF FF 00 00 37 00 50 00 00 00 00 FF 9E .. .. ..
    30. 30. nesC static linking events and commands <ul><li>interface X { </li></ul><ul><ul><li>async command void a(); </li></ul></ul><ul><ul><li>event void b(); </li></ul></ul><ul><li>} </li></ul><ul><li>nesC C onfiguration </li></ul><ul><ul><li>CompA.X -> CompB.X </li></ul></ul><ul><ul><ul><li>CompA registers for event b() from compB </li></ul></ul></ul><ul><ul><ul><li>CompA can invoke command a()‏ </li></ul></ul></ul><ul><li>nesC P rogram </li></ul><ul><ul><li>module CompBP { </li></ul></ul><ul><ul><li>provides interface X; </li></ul></ul><ul><ul><li>} </li></ul></ul><ul><ul><li>Implementation { </li></ul></ul><ul><ul><li>async command void X.a() {…} </li></ul></ul><ul><ul><li>} </li></ul></ul><ul><ul><li>module CompAP { </li></ul></ul><ul><ul><li>uses interface X; </li></ul></ul><ul><ul><li>} </li></ul></ul><ul><ul><li>Implementation { </li></ul></ul><ul><ul><li>event void X.b() {…} </li></ul></ul><ul><ul><li>} </li></ul></ul>
    31. 31. Demo code <ul><li>RedLed </li></ul>RedLedP.nc (Program)‏ module RedLedP { uses interface Leds; uses interface Boot; } Implementation { event void Boot.booted() { int i; call Leds.led0Toggle(); for (i=0;i<10;i++){}; //enter your C code here } } RedLedC.nc (Config)‏ configuration RedLedC { } implementation { components MainC, RedLedP, LedsC; RedLedP.Boot -> MainC.Boot; RedLedP.Leds -> LedsC.Leds; } Makefile COMPONENT=RedLedC include $(MAKERULES)‏ On cmdline you enter: make tmote If ok, upload main.exe to wilab build/telosb/main.exe
    32. 32. Software <ul><li>Sensor board communication </li></ul><ul><ul><li>exchanging messages </li></ul></ul><ul><li>Wilab has support for messages in many ways </li></ul><ul><ul><li>Tunneling over tcp socket with sf or serialForwarder </li></ul></ul><ul><ul><ul><li>Sf is running on each iNode </li></ul></ul></ul><ul><ul><ul><li>Wilab will connect to each sf </li></ul></ul></ul><ul><ul><ul><li>But the user can also connect to each sf </li></ul></ul></ul><ul><ul><li>Bridging between wired and wireless with Basestation </li></ul></ul><ul><ul><li>Auto storage of registered messages in the user db </li></ul></ul><ul><ul><li>Analyze your messages in the db RT with wilab-visual </li></ul></ul>
    33. 33. Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardware </li></ul></ul><ul><ul><ul><li>Tmote Sky </li></ul></ul></ul><ul><ul><ul><li>EE </li></ul></ul></ul><ul><ul><ul><li>iNode </li></ul></ul></ul><ul><ul><li>Software </li></ul></ul><ul><ul><ul><li>Job </li></ul></ul></ul><ul><ul><ul><li>Scenario </li></ul></ul></ul><ul><ul><ul><li>iPlatform </li></ul></ul></ul><ul><li>Some example experiments </li></ul><ul><li>Conclusions, Q&A </li></ul>
    34. 34. Software: Job <ul><li>Job </li></ul><ul><ul><li>Connect firmware images to specific sensor nodes </li></ul></ul><ul><ul><li>Registration of messages </li></ul></ul><ul><ul><ul><li>Only registered messages are parsed and stored in the user database. </li></ul></ul></ul><ul><ul><li>Schedule in a user selected zone in a free time slot </li></ul></ul>
    35. 35. Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardware </li></ul></ul><ul><ul><ul><li>Tmote Sky </li></ul></ul></ul><ul><ul><ul><li>EE </li></ul></ul></ul><ul><ul><ul><li>iNode </li></ul></ul></ul><ul><ul><li>Software </li></ul></ul><ul><ul><ul><li>Job </li></ul></ul></ul><ul><ul><ul><li>Scenario </li></ul></ul></ul><ul><ul><ul><li>iPlatform </li></ul></ul></ul><ul><li>Some example experiments </li></ul><ul><li>Conclusions, Q&A </li></ul>
    36. 36. Software scenario <ul><li>Scenario </li></ul><ul><ul><li>Execute events on predefined relative times or RT </li></ul></ul><ul><li>New re-factored events interface </li></ul><ul><ul><li>Sampler </li></ul></ul><ul><ul><li>Streamer </li></ul></ul><ul><ul><li>GpioTris </li></ul></ul><ul><ul><li>GpioPinStatus </li></ul></ul><ul><ul><li>Config7Seg </li></ul></ul><ul><ul><li>ConfigOccurrences </li></ul></ul>
    37. 37. Software Scenario sampler interface <ul><li>Sampler </li></ul><ul><ul><li>ADCid can be 0-4,6,8,9 </li></ul></ul><ul><ul><li>interSampleDelay in us with lower limit equal to 100us which is 10kHz </li></ul></ul><ul><ul><li>numberOfBuffersReq : a buffer is by default 50 samples </li></ul></ul><ul><ul><ul><li>if numberOfBuffersReq >= 1000 it means forever! </li></ul></ul></ul><ul><ul><ul><ul><li>It can work depending on the interSampleDelay </li></ul></ul></ul></ul><ul><ul><ul><li>if classification is activated then numberOfBuffersReq will be used to aggregate the numberOfBuffersReq buffers into a report </li></ul></ul></ul><ul><ul><ul><li>if numberOfBuffersReq==0 then this request will be used to stop the sampler on the ADC. </li></ul></ul></ul><ul><ul><li>triggerLevel is interpreted like this </li></ul></ul><ul><ul><ul><li><0 = falling edge; buffers will be transmitted starting with the buffer where a sample goes below |triggerLevel| </li></ul></ul></ul><ul><ul><ul><li>>0 = rising edge; buffers will be transmitted starting with the buffer where a sample goes up |triggerLevel| </li></ul></ul></ul><ul><ul><ul><li>=0 = immediately </li></ul></ul></ul><ul><ul><li>classification (7 values) will be activated when the first classifiers !=0 </li></ul></ul><ul><ul><ul><li>for example if classifiers[0] = 10 then the number of samples with a value between 0 and 10 will be stored in the EEMsgSamplerReport.values[0]. The EEMsgSamplerReport will be sent every numberOfBuffersReq and every time this happens the values will be cleared. </li></ul></ul></ul>
    38. 38. Software Scenario sampler report <ul><li>Sampler report </li></ul><ul><ul><li>ADCid can be 0-4,6,8,9 </li></ul></ul><ul><ul><li>MessageCounter will be cleared for every new SamplerConfig </li></ul></ul><ul><ul><li>The flag classified </li></ul></ul><ul><ul><li>Extra info min, avg, max </li></ul></ul><ul><ul><li>Samples </li></ul></ul><ul><ul><ul><li>if classified only the first 8 samples will be valid </li></ul></ul></ul>
    39. 39. Software Scenario streamer interface <ul><li>Streamer </li></ul><ul><ul><li>DACid can be 0,1 </li></ul></ul><ul><ul><li>interSampleDelay in us with lower limit equal to 100us which is 10kHz </li></ul></ul><ul><ul><li>numberOfSamples is in the range from 0..50 </li></ul></ul><ul><ul><ul><li>0 will stop an already running streamer </li></ul></ul></ul><ul><ul><ul><li>if streamer was already busy the values will be posted in the Q </li></ul></ul></ul><ul><ul><li>Samples </li></ul></ul><ul><ul><li>if harvesterMulitiplier > 0 then the values will become relative instead of absolute </li></ul></ul><ul><ul><ul><li>DAC1 is internally connected to ADC4 and DAC0 is internally connected to ADC0 </li></ul></ul></ul><ul><ul><ul><li>Internally a virtual capacitor will keep track of the values which will be multiplied by this harvesterMulitiplier. AND for every sample on the connected ADC the value of the sample will be subtracted from the virtual capacitor. </li></ul></ul></ul><ul><ul><ul><li>for every sample on the connected ADC the value of the harvester will be added to the virtual capacitor. </li></ul></ul></ul>
    40. 40. Software Scenario 7seg interface <ul><li>Config7Seg </li></ul><ul><ul><li>7segType selects one of the types: </li></ul></ul><ul><ul><ul><li>0 : EEMSG7SEG_BITWISE </li></ul></ul></ul><ul><ul><ul><li>1 : EEMSG7SEG_HEX_DOT </li></ul></ul></ul><ul><ul><ul><li>4-8: EEMSG7SEG_CONNECT_TO_GPIO_ X bits </li></ul></ul></ul><ul><ul><li>interCharDelay (in ms) </li></ul></ul><ul><ul><ul><li>if the type is EEMSG7SEG_BITWISE or EEMSG7SEG_HEX_DOT you can create a scrolling text </li></ul></ul></ul><ul><ul><li>numberOfChars (1..100)‏ </li></ul></ul><ul><ul><li>Chars </li></ul></ul>
    41. 41. Software Scenario GPIO & Occurrences interface <ul><li>32 bit “atomic” registers used for changing 16 entities: </li></ul><ul><ul><li>GpioTris </li></ul></ul><ul><ul><li>GpioPinStatus </li></ul></ul><ul><ul><li>ConfigOccurrences </li></ul></ul><ul><ul><ul><li>0..3 : GPIO_ X _PIN_EDGE </li></ul></ul></ul><ul><ul><ul><li>4..9 : ADC X _SAMPLER_END </li></ul></ul></ul><ul><ul><ul><li>A..B : DAC X _STREAMER_END </li></ul></ul></ul><ul><ul><ul><li>C : SCROLLER_UPDATE </li></ul></ul></ul><ul><ul><ul><li>D : CLASSIFIER_OVERFLOW </li></ul></ul></ul><ul><ul><ul><li>E : QUEUE_OVERFLOW </li></ul></ul></ul>
    42. 42. Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardware </li></ul></ul><ul><ul><ul><li>Tmote Sky </li></ul></ul></ul><ul><ul><ul><li>EE </li></ul></ul></ul><ul><ul><ul><li>iNode </li></ul></ul></ul><ul><ul><li>Software </li></ul></ul><ul><ul><ul><li>Job </li></ul></ul></ul><ul><ul><ul><li>Scenario </li></ul></ul></ul><ul><ul><ul><li>iPlatform </li></ul></ul></ul><ul><li>Some example experiments </li></ul><ul><li>Conclusions, Q&A </li></ul>
    43. 43. Extention w-iLab.t p.
    44. 44. Software iPlatform <ul><ul><li>User determines </li></ul></ul><ul><ul><ul><li>Inodes linux kernel </li></ul></ul></ul><ul><ul><ul><li>Inodes device drivers </li></ul></ul></ul><ul><ul><ul><li>Own software running for experiment </li></ul></ul></ul><ul><ul><li>Logging of experiment output </li></ul></ul><ul><ul><li>Job defenition & planning integrated in current Wilab web interface </li></ul></ul>p.
    45. 45. Software iPlatform : General setup p. Partition 1  SANET jobs Partition 2  iNode jobs /tmp/log on iNode automaticly saved to log/job_run/nodeId on NFS share
    46. 46. Software iPlatform : Intended usage <ul><li>Develop on own small ALIX testbed / VM </li></ul><ul><ul><li>Install Voyage Linux </li></ul></ul><ul><ul><ul><li>Netboot: type voyage-alix </li></ul></ul></ul><ul><ul><ul><li>Installation finished when ALIX automatically reboots </li></ul></ul></ul><ul><li>Test on w.iLab-t </li></ul><ul><ul><li>When stable </li></ul></ul><ul><ul><li>Scalability, performance, ... </li></ul></ul>p.
    47. 47. Software iPlatform: Files needed for experiment p. Program files start_mount_code: This script is automatically started after booting. You can start your own software by calling it in this script vmlinuz: Custom linux kernel initrd.img: Custom drivers log directory: Automatically created, contains content of /tmp/log directory of iNodes
    48. 48. Software iPlatform : concept p. Inode 1 Inode 2 Inode 3 Inode 4 Master Slaves 1.2.3.4:/master_code/ 1.2.3.4:/slave_code/ An iPlatform defines for all iNodes in w-iLab.t which user code will run on which iNode Inode 5 Inode 6 Inode 7 Not used
    49. 49. Software iPlatform : Policy <ul><li>No WLAN testing between 06:00 and 22:00 </li></ul><ul><li>Enforcement </li></ul><ul><ul><li>Experiments can always be scheduled </li></ul></ul><ul><ul><li>Wireless interfaces are continously monitored and killed </li></ul></ul><ul><ul><li>When killed, message is written to the log files </li></ul></ul><ul><li>Sandbox </li></ul><ul><ul><li>The nodes in the auditorium are not restricted </li></ul></ul><ul><ul><li>Allows to test if your planned experiment is configured correctly during working hours </li></ul></ul><ul><ul><li>Select zone “Sandbox” on w-iLab.t scheduler </li></ul></ul>p.
    50. 50. Software iPlatform : nfs mount p. <ul><li>Grant mount access to the motelab server: </li></ul><ul><ul><li>Edit the file /etc/exports on the mount host machine </li></ul></ul><ul><ul><li>Add line like this: /mount/path/ 10.10.5.226 (rw,no_root_squash) </li></ul></ul>
    51. 51. Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardware </li></ul></ul><ul><ul><ul><li>Tmote Sky </li></ul></ul></ul><ul><ul><ul><li>EE </li></ul></ul></ul><ul><ul><ul><li>iNode </li></ul></ul></ul><ul><ul><li>Software </li></ul></ul><ul><ul><ul><li>Job </li></ul></ul></ul><ul><ul><ul><li>Scenario </li></ul></ul></ul><ul><ul><ul><li>iPlatform </li></ul></ul></ul><ul><li>Some example experiments </li></ul><ul><li>Conclusions, Q&A </li></ul>
    52. 52. Remote access to wilab <ul><li>OpenVPN </li></ul><ul><ul><li>Runs on windows, linux, mac </li></ul></ul><ul><ul><li>NAT friendly </li></ul></ul><ul><ul><li>Runs even over HTTP proxy (TCP port 443)‏ </li></ul></ul><ul><li>Account: email [email_address] </li></ul>
    53. 53. Demo 1 communication Job + Scenario + Visualisation <ul><li>Example research application: RadioPerf (IBCN devel.)‏ </li></ul><ul><ul><li>Configurable packet generator </li></ul></ul><ul><ul><ul><li>Radio (txPower, channel)‏ </li></ul></ul></ul><ul><ul><ul><li>Packet generator (#, size, IPDelay,…)‏ </li></ul></ul></ul><ul><ul><ul><li>MAC properties (backoff, retries,…)‏ </li></ul></ul></ul><ul><ul><ul><li>LPL properties (duty cycle,…)‏ </li></ul></ul></ul><ul><ul><ul><li>Reports (IRDelay, …)‏ </li></ul></ul></ul><ul><ul><li>Dumps reports every IRDelay </li></ul></ul><ul><ul><ul><li>Enf, #Tx, #Rec, RSSI, LQI,… </li></ul></ul></ul>
    54. 54. Demo 2 : iPlatform (dist. ca 30m)‏ <ul><li>Max throughput on Turbo Channel without tweaking the Qos parameters using 1 wireless interface per iNode: </li></ul>^AP / Wireless terminal -> Unicast UDP: Ca. 65 Mbits guaranteed On channel 50 (a band)‏ Tweaking QoS WiFi parameter can give a profit of 10%
    55. 55. Overview <ul><li>Overview of technical characteristics </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>Hardware </li></ul></ul><ul><ul><ul><li>Tmote Sky </li></ul></ul></ul><ul><ul><ul><li>EE </li></ul></ul></ul><ul><ul><ul><li>iNode </li></ul></ul></ul><ul><ul><li>Software </li></ul></ul><ul><ul><ul><li>Job </li></ul></ul></ul><ul><ul><ul><li>Scenario </li></ul></ul></ul><ul><ul><ul><li>iPlatform </li></ul></ul></ul><ul><li>Some example experiments </li></ul><ul><li>Conclusions, Q&A </li></ul>
    56. 56. Conclusion: Feature set <ul><li>Feature set: </li></ul><ul><ul><li>195 fixed locations </li></ul></ul><ul><ul><ul><li>3 floors ca. 65 nodes per floor </li></ul></ul></ul><ul><ul><li>Every node is a generic PC and is equipped with </li></ul></ul><ul><ul><ul><li>2 x WiFi interfaces </li></ul></ul></ul><ul><ul><ul><li>Environment emulator </li></ul></ul></ul><ul><ul><ul><li>Sensor node </li></ul></ul></ul><ul><ul><ul><li>Extendable: Bluetooth, Software defined radio, … </li></ul></ul></ul><ul><ul><li>Every node is powered via PoE and can be dis/enabled on user request </li></ul></ul><ul><ul><li>Environment emulator can emulate </li></ul></ul><ul><ul><ul><li>The battery voltage of the sensor nodes and can measure the consumed electrical power real time </li></ul></ul></ul><ul><ul><ul><li>Environmental variables like sound or switches </li></ul></ul></ul><ul><ul><ul><ul><li>Live stream audio can be injected into the sensor nodes </li></ul></ul></ul></ul><ul><ul><ul><li>Log the events of the sensor nodes </li></ul></ul></ul><ul><ul><li>Sensor nodes can measure and react on: </li></ul></ul><ul><ul><ul><li>real and emulated environmental variables like light, switches, sound, relative humidity and temperature </li></ul></ul></ul><ul><ul><li>Indispensable for lots of testing </li></ul></ul><ul><ul><ul><li>Stress, interference and scalability </li></ul></ul></ul>
    57. 57. Software demo features <ul><li>Inode </li></ul><ul><ul><li>Toggle user led </li></ul></ul><ul><ul><li>Connect to screen or beamer </li></ul></ul><ul><li>EE </li></ul><ul><ul><li>7seg display (can display scroller)‏ </li></ul></ul><ul><li>Tmote </li></ul><ul><ul><li>3 leds </li></ul></ul><ul><li>Tmote invent </li></ul><ul><ul><li>Motion sensors </li></ul></ul><ul><ul><li>Mic + speaker </li></ul></ul><ul><ul><li>3 leds </li></ul></ul>
    58. 58. ?
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×