Hi All, I have some problems with Iris mote and mts300 sensor board:
I'm working with *TinyOs 2.0.2* ( i followed *isis.vanderbilt.edu * instructions). I'm trying to use temperature sensor but my mote crushes. So I installed an opportune modified Oscilloscope application: */*----- OscilloscopeAppC.nc ------*/ [cut] implementation { components new SensorMts300C(); [/cut] [cut] // sensor components OscilloscopeC.Vref -> SensorMts300C.Vref; OscilloscopeC.Sounder -> SensorMts300C.Sounder; OscilloscopeC.Light -> SensorMts300C.Light; OscilloscopeC.Temp -> SensorMts300C.Temp; OscilloscopeC.Microphone -> SensorMts300C.Microphone; OscilloscopeC.AccelX -> SensorMts300C.AccelX; OscilloscopeC.AccelY -> SensorMts300C.AccelY; OscilloscopeC.MagX -> SensorMts300C.MagX; OscilloscopeC.MagY -> SensorMts300C.MagY; [/cut] } /*----- OscilloscopeAppC.nc ------*/ [cut] uses { // sensor components interface Mts300Sounder as Sounder; interface Read<uint16_t> as Vref; interface Read<uint16_t> as Temp; interface Read<uint16_t> as Light; interface Read<uint16_t> as Microphone; interface Read<uint16_t> as AccelX; interface Read<uint16_t> as AccelY; interface Read<uint16_t> as MagX; interface Read<uint16_t> as MagY; [cut] event void Timer.fired() { [cut] if (call Temp.read() != SUCCESS) report_problem(); } [cut] event void Temp.readDone(error_t result, uint16_t val) { if (result != SUCCESS) { val = 0xffff; report_problem(); } local.readings[reading++] = val; } } [cut]* *Oscilloscope.h *is the same of cvs, and in the *Makefile* I add * SENSORBOARD=mts300* I installed it with *make iris install,1 mib520,com1* with two warnings: * /opt/tinyos-2.x/tos/sensorboards/mts300/MagP.nc:83: warning: `Mag.gainAdjustXDone' called asynchronously from `I2CPacket.writeDone' /opt/tinyos-2.x/tos/sensorboards/mts300/MagP.nc:87: warning: `Mag.gainAdjustYDone' called asynchronously from `I2CPacket.writeDone'* and it works for all other sensors. If i try to sense temperature when i switch it on, it crushes and doesn't report problems (*report_problem() *switch on red led): *Iris mote* doesn't send (so *BaseStation* doesn't receive). If I install the same application in a *MicaZ *mote with the same *mts300*sensor board it works (temperature sensor too). So I read this thread * http://www.mail-archive.com/tinyos-help@millennium.berkeley.edu/msg16094.html *and I modified *PhotoTempDeviceC *in the following way: *// TempControl.Power -> MicaBusC.Int2; TempControl.Power -> MicaBusC.PW0;* With *MicaZ *motes it is the same (with or without this patch). With *Iris *motes, they don't crushes but temperature value is 0 or not the real and it is not costant. I tried all combination of hardware, cvs is just updated, so i think that the problem is another one. Can Anybody help me? Thanks in advance. Ciao, -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Federico Porceddu
_______________________________________________ Tinyos-help mailing list Tinyos-help@millennium.berkeley.edu https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help