init
Dependencies: aconno_I2C Lis2dh12 WatchdogTimer
Diff: main.cpp
- Revision:
- 29:059fc7324328
- Parent:
- 28:24b02608fa5f
- Child:
- 31:c84fc6d8eaa3
--- a/main.cpp Sun Dec 23 23:09:53 2018 +0000
+++ b/main.cpp Sun Dec 23 23:50:39 2018 +0000
@@ -157,7 +157,7 @@
void setState(uint8_t state) {
RET_state_prev = RET_state;
RET_state = state;
- DEBUG("STATEREADBACK %d\n",RET_state)
+ //DEBUG("STATEREADBACK %d\n",RET_state)
}
bool memoryIntegrityCheck() {
bool pass = true;
@@ -247,13 +247,13 @@
mainthread.release();
}
break;
- case 2 :
+ case 3 :
if (RET_state == STATE_NORMAL) {
RET_state = STATE_BUTTONPRESS2;
mainthread.release();
}
break;
- case 3 :
+ case 5 :
if (RET_state == STATE_NORMAL) {
RET_state = STATE_BUTTONPRESS3;
mainthread.release();
@@ -363,8 +363,10 @@
//Result
if (test_count == test_pass) {
+ addToExceptionString("OK.");
return true;
} else {
+ addToExceptionString("FAIL.");
return false;
}
}
@@ -374,7 +376,7 @@
//------------------------------------------------------------------------------
void checkMotion() {
if (lis3dh_int2) {
- if (GLOBAL_debugLED) LED1blink(1,50);
+ //if (GLOBAL_debugLED) LED1blink(1,50);
RET_motionTriggered = true;
GLOBAL_needToConfigureLis3dh = true; //interrupt has fire so need to clear it
if (!RET_motionPendingOnState) {
@@ -399,7 +401,7 @@
if (inMotionForSeconds >= RET_setting_motion_start_seconds && RET_motionState == false) {
RET_motionState = true;
RET_motionTriggeredInTXInterval = true;
- if (GLOBAL_debugLED) LED1blink(5,50);
+ if (GLOBAL_debugLED) LED1blink(1,50);
if (RET_setting_location_tx_failsafe_hrs > 0) {
time_t epochOffsetMins = ((RET_RTCunixtime - RET_motionFrameStart) / 60);
sprintf(RET_activityData+strlen(RET_activityData),"1.%u!",epochOffsetMins);
@@ -413,7 +415,7 @@
RET_motionState = false;
GLOBAL_motionStopFlagTriggered = true;
RET_motionTotalActivityHours += (float(RET_motionStopTime - RET_motionStartTime) / 3600.0);
- if (GLOBAL_debugLED) LED1blink(3,400);
+ if (GLOBAL_debugLED) LED1blink(2,50);
if (RET_setting_location_tx_failsafe_hrs > 0) {
time_t epochOffsetMins = ((RET_RTCunixtime - RET_motionFrameStart) / 60);
sprintf(RET_activityData+strlen(RET_activityData),"0.%u!",epochOffsetMins);
@@ -432,7 +434,7 @@
int TEMP_k = -1; int TEMP_l = -1; int TEMP_m = -1; int TEMP_n = -1; int TEMP_o = -1; int TEMP_p = -1; int TEMP_q = -1; int TEMP_r = -1; int TEMP_s = -1;
if ( (matchCount = sscanf(settingsBuffer,"b:%u,c:%d,d:%d,e:%d,f:%d,g:%d,h:%d,i:%d,j:%d,k:%d,l:%d,m:%d,n:%d,o:%d,p:%d,q:%d,r:%d,s:%d",
&TEMP_b,&TEMP_c,&TEMP_d,&TEMP_e,&TEMP_f,&TEMP_g,&TEMP_h,&TEMP_i,&TEMP_j,&TEMP_k,&TEMP_l,&TEMP_m,&TEMP_n,&TEMP_o,&TEMP_p,&TEMP_q,&TEMP_r,&TEMP_s) ) > 0 ) {
- DEBUG("VALUES: b:%u,c:%d,d:%d,e:%d,f:%d,g:%d,h:%d,i:%d,j:%d,k:%d,l:%d,m:%d,n:%d,o:%d,p:%d,q:%d,r:%d,s:%d\n",
+ DEBUG("FROMSERVER: b:%u,c:%d,d:%d,e:%d,f:%d,g:%d,h:%d,i:%d,j:%d,k:%d,l:%d,m:%d,n:%d,o:%d,p:%d,q:%d,r:%d,s:%d\n",
TEMP_b,TEMP_c,TEMP_d,TEMP_e,TEMP_f,TEMP_g,TEMP_h,TEMP_i,TEMP_j,TEMP_k,TEMP_l,TEMP_m,TEMP_n,TEMP_o,TEMP_p,TEMP_q,TEMP_r,TEMP_s);
//FAILUREMODE need to be checking these against checksums
@@ -521,7 +523,7 @@
char result[180];
snprintf(result,sizeof(result),"%s",modem.USSDmessage(bytestosend, true, 2, GLOBAL_defaultApi));
if (result != "err") {
- DEBUG("\nfromserver: %s \n",result);
+ //DEBUG("\nfromserver: %s \n",result);
if (!saveSettings(result)) {
//something went critically wrong getting settings
pass = false;
@@ -558,7 +560,7 @@
if (modem.registerOnNetwork(DEFAULT_CONNECTION_ATTEMPTS,(RET_setting_connection_timeout*1000))) {
int timetaken = (RET_RTCunixtime - GLOBAL_wakeTime);
char bytestosend[160];
- snprintf(bytestosend,sizeof(bytestosend),"(%s,a:loc,f:%d,t:%.1f,v:%.2f,z:CONNTEST-%s,e:%d,c:1%s)\0",GLOBAL_defaultApi,FW_VERSION,temperature,voltage,GLOBAL_exceptionString,timetaken,locString);
+ snprintf(bytestosend,sizeof(bytestosend),"(%s,a:loc,f:%d,t:%.1f,v:%.2f,z:TEST-%s,e:%d,c:1%s)\0",GLOBAL_defaultApi,FW_VERSION,temperature,voltage,GLOBAL_exceptionString,timetaken,locString);
char result[180];
bool getSettings = true;
snprintf(result,sizeof(result),"%s",modem.USSDmessage(bytestosend, getSettings, 2, GLOBAL_defaultApi));
@@ -592,7 +594,7 @@
if (modem.registerOnNetwork(DEFAULT_CONNECTION_ATTEMPTS,(RET_setting_connection_timeout*1000))) {
int timetaken = (RET_RTCunixtime - GLOBAL_wakeTime);
char bytesToSend[160];
- snprintf(bytesToSend,sizeof(bytesToSend),"(%s,a:loc,f:%d,t:%.1f,v:%.2f,z:%s,e:%d,c:1%s)\0",GLOBAL_defaultApi,FW_VERSION,temperature,voltage,GLOBAL_exceptionString,timetaken,locString);
+ snprintf(bytesToSend,sizeof(bytesToSend),"(%s,a:loc,f:%d,t:%.1f,v:%.2f,z:LOC-%s,e:%d,c:1%s)\0",GLOBAL_defaultApi,FW_VERSION,temperature,voltage,GLOBAL_exceptionString,timetaken,locString);
char result[180];
bool getSettings = true;
snprintf(result,sizeof(result),"%s",modem.USSDmessage(bytesToSend, getSettings, 2, GLOBAL_defaultApi));
@@ -624,7 +626,7 @@
if (result != "err") {
//RESET ACTIVITY FRAME
memset(RET_activityData,0,sizeof(RET_activityData));
- if (RET_haveSettings) {RET_motionFrameStart = RET_RTCunixtime;}
+ if (RET_haveSettings) { RET_motionFrameStart = RET_RTCunixtime; }
}
}
}
@@ -678,8 +680,7 @@
//ACTIVITY EVENT
bool run_activity_tx = false;
if(RET_RTCunixtime >= RET_eventTime_activity_tx && RET_eventTime_activity_tx > 0 && strlen(RET_activityData) > 1) {
- run_activity_tx = true;
- //event_shakertest_tx();
+ run_activity_tx = true;
}
if (strlen(RET_activityData) > 130) { run_activity_tx = true; }
if (run_activity_tx) { DEBUG("ACTIVITY TX...\n"); event_activity_tx();}
@@ -759,20 +760,20 @@
if (NRF_POWER->RESETREAS != 0xffffffff) {
switch(NRF_POWER->RESETREAS) {
case 0x00000001 :
- DEBUG("reset_reason: 0x%08x. Hard Reset STATE:%d\n",NRF_POWER->RESETREAS, RET_state);
+ DEBUG("0x%08x. Hard Reset ST:%d\n",NRF_POWER->RESETREAS, RET_state);
RET_coldBoot = 1;
break;
case 0x00000002 :
- DEBUG("Watchdog reset STATE:%d\n",RET_state);
+ DEBUG("Watchdog ST:%d\n",RET_state);
break;
case 0x00000004 :
- DEBUG("Soft reset STATE:%d SLEEP:%d\n",RET_state, RET_sleepToggle);
+ DEBUG("Soft ST:%d SLP:%d\n",RET_state, RET_sleepToggle);
break;
}
NRF_POWER->RESETREAS = 0xffffffff;
}
- dumpSettings();
+ //dumpSettings();
//CHECK FOR FIRST BOOT
if (RET_coldBoot == 1) { factoryReset(); dumpSettings(); }