see my code below please, i have the pressure, light, pir and hall effect sensor connected to the board
the hall effect sensor doesn't generate any signal.
any advice?
thanks a lot.
Quote:
/*
* ----- wasp007 event board 1------
*
* Explanation:
*
* Event board 1, with PIR, LIGHT, AND pressure SENSOR
*
* sending from waspmote to gateway
*
* Design: Jessie Wan
*/
packetXBee* paq_sent;
int8_t state=0;
long previous=0;
char aux[200];
char* macHigh=" ";
char* macLow=" ";
int aux_1 = 0;
int aux_2 = 0;
float tem = 0;
int temp = 0;
float light = 0;
float pressure = 0;
int pir = 0;
float hall = 0;
char hc[10];
// float battery=0;
#define key_access "LIBELIUM"
void setup(){
SensorEvent.setBoardMode(SENS_ON);
//enableInterrupts(SENS_INT);
//SensorEvent.setThreshold(SENS_SOCKET3, 1.5);
SensorEvent.setThreshold(SENS_SOCKET8, 1.5);
SensorEvent.setThreshold(SENS_SOCKET6, 1.5);
// SensorEvent.setThreshold(SENS_SOCKET7, 1.5);
// Store key access in EEPROM
for(int i=0;i<8;i++){
Utils.writeEEPROM(i+107,key_access[i]);
}
RTC.ON();
ACC.ON();
XBee.setMode(XBEE_ON);
//XBee.begin(9600);
XBee.begin(38400);
delay(1000);
XBee.print("+++");
delay(2000);
XBee.println("ATBD5,AP2,WR,CN");
delay(150);
XBee.setMode(XBEE_OFF);
XBee.close();
Utils.setLED(LED0, LED_ON);
Utils.setLED(LED1, LED_ON);
delay(5000);
Utils.setLED(LED0, LED_OFF);
Utils.setLED(LED1, LED_OFF);
for (int i=0;i<24;i++){
Utils.blinkLEDs(125);
}
// Inits the XBee 802.15.4 library
xbee802.init(XBEE_802_15_4,FREQ2_4G,NORMAL);
// Powers XBee
xbee802.ON();
// Get the XBee MAC address
delay(500);
int counter = 0;
while(xbee802.getOwnMac()==1&&counter<4){
xbee802.getOwnMac();
counter++;
}
Utils.hex2str(xbee802.sourceMacHigh,macHigh,4);
Utils.hex2str(xbee802.sourceMacLow,macLow,4);
}
void loop(){
tem = RTC.getTemperature();
// battery = PWR.getBatteryLevel();
char press[10];
pressure = SensorEvent.readValue(SENS_SOCKET1);
Utils.float2String(pressure,press,2);
char l[10];
light = SensorEvent.readValue(SENS_SOCKET6);
Utils.float2String(light,l,2);
SensorEvent.attachInt();
PWR.sleep(UART0_OFF | UART1_OFF | BAT_OFF | RTC_OFF);
SensorEvent.detachInt();
enableInterrupts(SENS_INT);
SensorEvent.loadInt();
if(SensorEvent.intFlag & SENS_SOCKET7){
// delay(1000);
pir = SensorEvent.readValue(SENS_SOCKET7);
}
// delay(1300);
if(SensorEvent.intFlag & SENS_SOCKET8){
delay(1000);
hall = SensorEvent.readValue(SENS_SOCKET8);
}
// Utils.float2String(hall,hc,2);
// Inits the XBee 802.15.4 library
xbee802.init(XBEE_802_15_4,FREQ2_4G,NORMAL);
// Powers XBee
xbee802.ON();
sprintf(aux,"-ID:%s,-x:%d,y:%d,z:%d,Light:%s,-PIR:%d,-temp:%d,-pressure:%s,-contact:%d,-bat:%d%c%c%c, ","wasp008",ACC.getX(),ACC.getY(),ACC.getZ(),l,pir,(int)tem,press,(int)hall,PWR.getBatteryLevel(),'%','\r','\n');
// sprintf(aux,"-ID:%s,-x:%d,y:%d,z:%d,Light:%s,-temp:%d,-pressure:%s,-bat:%d%c%c%c, ","wasp007",ACC.getX(),ACC.getY(),ACC.getZ(),l,(int)tem,press,PWR.getBatteryLevel(),'%','\r','\n');
// sprintf(aux,"-ID:%s,-x:%d,y:%d,z:%d,-temp:%d,-pressure:%s,-bat:%d%c%c%c, ","wasp007",ACC.getX(),ACC.getY(),ACC.getZ(),(int)tem,press,PWR.getBatteryLevel(),'%','\r','\n');
paq_sent=(packetXBee*) calloc(1,sizeof(packetXBee));
paq_sent->mode=UNICAST;
paq_sent->MY_known=0;
paq_sent->packetID=0x52;
paq_sent->opt=0;
xbee802.hops=0;
xbee802.setOriginParams(paq_sent,MAC_TYPE);
xbee802.setDestinationParams(paq_sent, "0013A200406938EA", aux, MAC_TYPE, DATA_ABSOLUTE);
xbee802.sendXBee(paq_sent);
free(paq_sent);
paq_sent = NULL;
delay(5000);
}