Hello,

I'm using an Iris mote with the latest tinyos-2.x sources from cvs.

I have a 5 ms timer, which when fired does the following:
{
Read TempC (from mda100bc sensorboard)
Read VoltageC (the internal voltage reference of the micro)
Send values over serial port
}

NOTE: please ignore the fact that the first set of readings will be
incorrect!

The TempC reading seems fine, but the VoltageC reading is incorrect.
When I don't read TempC, VoltageC readings are fine.

I thought maybe it was a matter of ADC resource not being shared properly,
but both TempC and VoltageC use the same low level resource manager for ADC
access.

Here are the readings I am getting:

Read only TempC:
TempC reading: 521 (about 26C)

Read only VoltageC:
VoltageC reading: 339 (about 3.3V, correct reading)

Read TempC then VoltageC:
TempC reading: 521 (about 26C)
VoltageC reading: 295 (about 3.8V)

Read VoltageC then TempC:
TempC reading: 521 (about 26C)
VoltageC reading: 300 (about 3.75V)

It seems to me like it's some sort of resource arbitration problem, as
VoltageC works fine if I don't read TempC. On the other hand, it doesn't
matter which I try to read first, TempC or VoltageC, TempC is always correct
and VoltageC is always incorrect.

I modified the BlinkToRadio tutorial source to read TempC and VoltageC and
send the values over the serial port. Please see the attached source code
for more details.

Am I just missing something, or is this some sort of bug? Any help will be
appreciated!

Thanks,
Anderrson

Attachment: BlinkToRadioAppC.nc
Description: Cdf file

Attachment: BlinkToRadioC.nc
Description: Cdf file

#ifndef BLINK_TO_RADIO_H
#define BLINK_TO_RADIO_H

enum {
	AM_BLINKTORADIOMSG = 6,
	TIMER_PERIOD_MILLI = 5 * 1024,
};

typedef nx_struct BlinkToRadioMsg {
  nx_uint16_t temp;
  nx_uint16_t voltage;
} BlinkToRadioMsg;

#endif /* BLINK_TO_RADIO_H */
_______________________________________________
Tinyos-help mailing list
Tinyos-help@millennium.berkeley.edu
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to