Do you have antennas attached? And of course,
define the frequency and transmit power correctly?
Those were the two things that tripped me with mica2's.
MS
Urs Hunkeler wrote:
> Hi,
>
> I have a couple of Mica2 (and Mica2Dot) motes and I wanted to use them
> for some experiments, but somehow radio communication doesn't seem to
> work. Is there anything special you need to do with the CC1000 radio?
>
> Here's the simple test program I used. It works on TelosB and TinyNode,
> but somehow does not work on Mica2 (and Mica2Dot). The LED indicating a
> successful transmission blinks as expected. The LED indicating errors
> stays off. But the LED indicating a successful reception also stays off.
> So I assume that somehow the motes do not receive any messages (I don't
> know whether they are really sending anything). Any ideas?
>
> Cheers,
> Urs
>
> ---------------
> // TestAppC.nc
> configuration TestAppC {
> }
> implementation {
> components TestC;
> components ActiveMessageC;
> //components new AMSenderC(54);
> //components new AMReceiverC(54);
> components MainC;
> components LedsC as Leds;
> components new TimerMilliC() as Timer;
>
> TestC.Boot -> MainC;
> TestC.RadioControl -> ActiveMessageC;
> //TestC.Send -> AMSenderC;
> TestC.Send -> ActiveMessageC.AMSend[54];
> //TestC.Receive -> AMReceiverC;
> TestC.Receive -> ActiveMessageC.Receive[54];
> TestC.Leds -> Leds;
> TestC.Timer -> Timer;
> }
>
> --------------------------------
> // TestC.nc
> module TestC {
> uses {
> interface Boot;
> interface SplitControl as RadioControl;
> interface AMSend as Send;
> interface Receive;
> interface Timer<TMilli>;
> interface Leds;
> }
> }
> implementation {
> message_t rPacket;
>
> event void Boot.booted() {
> call RadioControl.start();
> }
>
> event void RadioControl.startDone(error_t error) {
> if(error == SUCCESS) {
> call Timer.startPeriodic(1024L);
> } else {
> call Leds.led2On();
> call RadioControl.start();
> }
> }
>
> event void RadioControl.stopDone(error_t error) {
> }
>
> event message_t* Receive.receive(message_t* msg, void* payload,
> uint8_t len) {
> call Leds.led0Toggle();
> return msg;
> }
>
> event void Timer.fired() {
> error_t error = call Send.send(AM_BROADCAST_ADDR, &rPacket, 5);
> if(error != SUCCESS) {
> call Leds.led2On();
> }
> }
>
> event void Send.sendDone(message_t* msg, error_t error) {
> if(error != SUCCESS) {
> call Leds.led2On();
> } else {
> call Leds.led1Toggle();
> }
> }
> }
>
> _______________________________________________
> Tinyos-help mailing list
> [email protected]
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help