diff --git a/platformio.ini b/platformio.ini index 67f0037..e53778b 100644 --- a/platformio.ini +++ b/platformio.ini @@ -22,8 +22,8 @@ build_flags = -DLOG_DEBUG=1 -DLOG_INFO=1 -DLOG_ERROR=1 -platform_package = - https://github.com/esp8266/Arduino.git +upload_port = COM7 +monitor_port = COM7 [env:esp8266-1m-base] board = ${common.board_1m} diff --git a/src/IRBabyAlink.cpp b/src/IRBabyAlink.cpp index 470038f..fb8ff3b 100644 --- a/src/IRBabyAlink.cpp +++ b/src/IRBabyAlink.cpp @@ -27,18 +27,22 @@ #include "IRBabyAlink.h" #include "IRbabyGlobal.h" -#define TOPIC_NAME_MAX 64 +#define TOPIC_NAME_MAX (64) -#define PRODUCT_KEY "a1WlzsJh50b" -#define DEVICE_NAME "IRIS_Kit_Dev" -#define DEVICE_SECRET "9df2c6b48e4c66519718cc236fc9fb79" -#define REGION_ID "cn-shanghai" +#define PRODUCT_KEY "a1WlzsJh50b" +#define DEVICE_NAME "IRIS_Kit_Dev" +#define DEVICE_SECRET "9df2c6b48e4c66519718cc236fc9fb79" +#define REGION_ID "cn-shanghai" + +#define USER_NAME "strawmanbobi@irext.net" static AliyunIoTSDK iot; static char IRIS_UPSTREAM_TOPIC[TOPIC_NAME_MAX] = { 0 }; +static ep_state_t endpoint_state = FSM_IDLE; static void registerCallback(); static void irisAlinkCallback(const char *topic, uint8_t *data, int length); +static void sendIrisKitHeartBeat(); void connectToAliyunIoT() { INFOLN("Try connecting to Aliyun IoT"); @@ -51,7 +55,7 @@ void connectToAliyunIoT() { void checkAlinkMQTT() { iot.loop(); - iot.sendCustom(IRIS_UPSTREAM_TOPIC, "Hello IRIS"); + sendIrisKitHeartBeat(); } // not only for IRIS related topic based session @@ -75,3 +79,7 @@ static void irisAlinkCallback(const char *topic, uint8_t *data, int length) { INFO(", length = "); INFOLN(length); } + +static void sendIrisKitHeartBeat() { + +} \ No newline at end of file diff --git a/src/IRBabyAlink.h b/src/IRBabyAlink.h index e0bcaf2..2d943ab 100644 --- a/src/IRBabyAlink.h +++ b/src/IRBabyAlink.h @@ -24,10 +24,16 @@ #ifndef IRBABY_ALINK_H #define IRBABY_ALINK_H -#include +#include #include -typedef unsigned char uint8_t; +typedef enum { + FSM_IDLE = 0, + FSM_CONNECTED = 1, + FSM_ACTIVE = 2, + + FSM_MAX = 7, +} ep_state_t; void connectToAliyunIoT(); diff --git a/src/IRbaby.cpp b/src/IRbaby.cpp index 452048c..db75e11 100644 --- a/src/IRbaby.cpp +++ b/src/IRbaby.cpp @@ -43,8 +43,6 @@ #include "IRbabyUserSettings.h" #include "IRbabyRF.h" -#include "IRbabySecurity.h" - void uploadIP(); // device info upload to devicehive void IRAM_ATTR resetHandle(); // interrupt handle @@ -81,7 +79,7 @@ void setup() { INFOLN("██║██╔══██╗██║╚════██║"); INFOLN("██║██║ ██║██║███████║"); INFOLN("╚═╝╚═╝ ╚═╝╚═╝╚══════╝"); - INFOLN("== IRIS Kit [0.2.7] Powered by IRBaby =="); + INFOLN("== IRIS Kit [1.2.7] Powered by IRBaby =="); wifi_manager.autoConnect(); settingsLoad(); // load user settings form fs @@ -92,6 +90,7 @@ void setup() { initRF(); // RF init #endif loadIRPin(ConfigData["pin"]["ir_send"], ConfigData["pin"]["ir_receive"]); + #ifdef USE_INFO_UPLOAD uploadIP(); #endif @@ -101,6 +100,7 @@ void setup() { #else alinkCheckTask.attach_scheduled(MQTT_CHECK_INTERVALS, checkAlinkMQTT); #endif + disableIRTask.attach_scheduled(DISABLE_SIGNAL_INTERVALS, disableIR); disableRFTask.attach_scheduled(DISABLE_SIGNAL_INTERVALS, disableRF); saveDataTask.attach_scheduled(SAVE_DATA_INTERVALS, settingsSave); @@ -171,15 +171,4 @@ void uploadIP() { INFOF("update %s to devicehive\n", body.c_str()); http.PUT(body); http.end(); -} - -// security related -int securityPublish(const char *topic, const uint8_t *message, size_t msg_size, void *channel) { -#if defined USE_IRBABY_MQTT - // message via MQTT instance(not implemented) -#else - // message via embedded Alink instance - sendRawData(topic, message, msg_size); -#endif - return 0; } \ No newline at end of file