diff --git a/examples/companion_radio/main.cpp b/examples/companion_radio/main.cpp index 255a05c9..1fc8982d 100644 --- a/examples/companion_radio/main.cpp +++ b/examples/companion_radio/main.cpp @@ -64,7 +64,7 @@ #include #include static XiaoC3Board board; -#elif defined(SEEED_XIAO_S3) +#elif defined(SEEED_XIAO_S3) || defined(LILYGO_T3S3) #include #include static ESP32Board board; @@ -110,6 +110,7 @@ static uint32_t _atoi(const char* sp) { #define RESP_CODE_SENT 6 // reply to CMD_SEND_TXT_MSG #define RESP_CODE_CONTACT_MSG_RECV 7 // a reply to CMD_SYNC_NEXT_MESSAGE #define RESP_CODE_CHANNEL_MSG_RECV 8 // a reply to CMD_SYNC_NEXT_MESSAGE +#define RESP_CODE_CURR_TIME 9 // a reply to CMD_GET_DEVICE_TIME // these are _pushed_ to client app at any time #define PUSH_CODE_ADVERT 0x80 @@ -174,9 +175,9 @@ class MyMesh : public BaseChatMesh { success = success && (file.read((uint8_t *) &c.out_path_len, 1) == 1); success = success && (file.read((uint8_t *) &c.last_advert_timestamp, 4) == 4); success = success && (file.read(c.out_path, 64) == 64); - success = success && (file.read((uint8_t *) c.lastmod, 4) == 4); - success = success && (file.read((uint8_t *) c.gps_lat, 4) == 4); - success = success && (file.read((uint8_t *) c.gps_lon, 4) == 4); + success = success && (file.read((uint8_t *) &c.lastmod, 4) == 4); + success = success && (file.read((uint8_t *) &c.gps_lat, 4) == 4); + success = success && (file.read((uint8_t *) &c.gps_lon, 4) == 4); if (!success) break; // EOF @@ -562,7 +563,7 @@ public: writeOKFrame(); } else if (cmd_frame[0] == CMD_GET_DEVICE_TIME) { uint8_t reply[5]; - reply[0] = RESP_CODE_OK; + reply[0] = RESP_CODE_CURR_TIME; uint32_t now = getRTCClock()->getCurrentTime(); memcpy(&reply[1], &now, 4); _serial->writeFrame(reply, 5); diff --git a/platformio.ini b/platformio.ini index ae984df7..f6734c52 100644 --- a/platformio.ini +++ b/platformio.ini @@ -297,6 +297,35 @@ lib_deps = adafruit/RTClib @ ^2.1.3 densaugeo/base64 @ ~1.4.0 +[env:LilyGo_T3S3_sx1262_companion_radio_usb] +extends = LilyGo_T3S3_sx1262 +build_flags = + ${LilyGo_T3S3_sx1262.build_flags} + -D MAX_CONTACTS=100 + -D MAX_GROUP_CHANNELS=1 +; -D MESH_PACKET_LOGGING=1 +; -D MESH_DEBUG=1 +build_src_filter = ${LilyGo_T3S3_sx1262.build_src_filter} +<../examples/companion_radio/main.cpp> +lib_deps = + ${LilyGo_T3S3_sx1262.lib_deps} + adafruit/RTClib @ ^2.1.3 + densaugeo/base64 @ ~1.4.0 + +[env:LilyGo_T3S3_sx1262_companion_radio_ble] +extends = LilyGo_T3S3_sx1262 +build_flags = + ${LilyGo_T3S3_sx1262.build_flags} + -D MAX_CONTACTS=100 + -D MAX_GROUP_CHANNELS=1 + -D BLE_PIN_CODE=123456 + -D BLE_DEBUG_LOGGING=1 +; -D MESH_PACKET_LOGGING=1 +; -D MESH_DEBUG=1 +build_src_filter = ${LilyGo_T3S3_sx1262.build_src_filter} + +<../examples/companion_radio/main.cpp> +lib_deps = + ${LilyGo_T3S3_sx1262.lib_deps} + adafruit/RTClib @ ^2.1.3 + densaugeo/base64 @ ~1.4.0 ; ----------------- NRF52 --------------------- [nrf52_base] diff --git a/src/helpers/ArduinoSerialInterface.h b/src/helpers/ArduinoSerialInterface.h index e7794ee0..bef7bdf2 100644 --- a/src/helpers/ArduinoSerialInterface.h +++ b/src/helpers/ArduinoSerialInterface.h @@ -8,13 +8,21 @@ class ArduinoSerialInterface : public BaseSerialInterface { uint8_t _state; uint16_t _frame_len; uint16_t rx_len; +#ifdef LILYGO_T3S3 + HWCDC* _serial; +#else HardwareSerial* _serial; +#endif uint8_t rx_buf[MAX_FRAME_SIZE]; public: ArduinoSerialInterface() { _isEnabled = false; _state = 0; } +#ifdef LILYGO_T3S3 + void begin(HWCDC& serial) { _serial = &serial; } +#else void begin(HardwareSerial& serial) { _serial = &serial; } +#endif // BaseSerialInterface methods void enable() override;