0218fb7a4c7e438477fb100eecb7b12d8e959027
10 #include "interpret.h"
11 #include "mTaskSymbols.h"
15 #include "interface.h"
17 #define MSG_GET_TASK 't'
18 #define MSG_DEL_TASK 'd'
19 #define MSG_SDS_SPEC 's'
20 #define MSG_SDS_DEL 'a'
21 #define MSG_SDS_UPD 'u'
26 void read_message(void)
29 if(input_available()){
30 uint8_t c
= read_byte();
31 debug("Receiving input: %c %02x\n", c
, c
);
34 debug("Receiving an sds");
38 debug("Receiving an sds update");
39 //TODO do something with the return value
43 debug("Receiving a delete SDS request");
47 debug("Receiving a delete task request");
51 debug("Receiving a task");
55 debug("Receiving a spec request");
59 debug("Server closed connection");
64 debug("Unknown message: %X", c
);
69 unsigned long loopmillis
= 0;
72 #ifdef ARDUINO_ESP8266_NODEMCU
73 if(getmillis()-loopmillis
< LOOPDELAY
){
85 cyclestart
= getmillis();
86 for(ct
= 0; ct
<MAXTASKS
; ct
++){
87 //See whether the task is even in use
88 if((curtask
= task_get(ct
)) == NULL
){
89 // debug("Task %d not implemented\n", ct);
93 if(is_interrupt_task(curtask
) && had_interrupt(curtask
)){
94 debug("Interrupt task %d not implemented", ct
);
96 //Interval task, and interval passed
97 } else if(cyclestart
-curtask
->lastrun
> curtask
->interval
){
98 debug("Running interval task: %d", ct
);
101 //Oneshot task, thus disable
102 if(curtask
->interval
== 0){
103 curtask
->used
= false;
105 curtask
->lastrun
= cyclestart
;
112 #elif defined ARDUINO_ESP8266_NODEMCU
115 int main(int argc
, char *argv
[]){
124 debug("sending device spec");
126 #ifndef ARDUINO_ESP8266_NODEMCU