]> git.tnoah.ca Git - lora-radio.git/commitdiff
Added display read command
authorMark Qvist <mark@unsigned.io>
Sun, 8 Dec 2024 12:49:07 +0000 (13:49 +0100)
committerMark Qvist <mark@unsigned.io>
Sun, 8 Dec 2024 12:49:07 +0000 (13:49 +0100)
Framing.h
RNode_Firmware.ino
Utilities.h

index efa4b31c2146d34337b50f96d37d1a2cbb57bfa8..c124ffb7ef5fafa090368dcd8afd3277a5c623a3 100644 (file)
--- a/Framing.h
+++ b/Framing.h
@@ -52,6 +52,7 @@
   #define CMD_FB_READ     0x42
   #define CMD_FB_WRITE    0x43
   #define CMD_FB_READL    0x44
+  #define CMD_DISP_READ   0x66
   #define CMD_DISP_INT    0x45
   #define CMD_DISP_ADDR   0x63
   #define CMD_DISP_BLNK   0x64
index 57a7f2ffa9911ddb272bbea12ce05a4f1489aa05..d1e923725e2c38a24c7e8fb113dc46e276b1d03d 100644 (file)
@@ -973,9 +973,9 @@ void serialCallback(uint8_t sbyte) {
           }
         #endif
     } else if (command == CMD_FB_READ) {
-      if (sbyte != 0x00) {
-        kiss_indicate_fb();
-      }
+      if (sbyte != 0x00) { kiss_indicate_fb(); }
+    } else if (command == CMD_DISP_READ) {
+      if (sbyte != 0x00) { kiss_indicate_disp(); }
     } else if (command == CMD_DEV_HASH) {
       #if MCU_VARIANT == MCU_ESP32 || MCU_VARIANT == MCU_NRF52
         if (sbyte != 0x00) {
index d532220162ea20a56f73c66e46e5af9a10fa0587..a2b1d6cbd145d7b61256af1720e860e6c2fba808 100644 (file)
@@ -977,6 +977,20 @@ void kiss_indicate_fb() {
        serial_write(FEND);
 }
 
+void kiss_indicate_disp() {
+       serial_write(FEND);
+       serial_write(CMD_DISP_READ);
+       #if HAS_DISPLAY
+               uint8_t *da = disp_area.getBuffer();
+               uint8_t *sa = stat_area.getBuffer();
+               for (int i = 0; i < 512; i++) { escaped_serial_write(da[i]); }
+               for (int i = 0; i < 512; i++) { escaped_serial_write(sa[i]); }
+       #else
+               serial_write(0xFF);
+       #endif
+       serial_write(FEND);
+}
+
 void kiss_indicate_ready() {
        serial_write(FEND);
        serial_write(CMD_READY);