aboutsummaryrefslogtreecommitdiff
path: root/src/utils
diff options
context:
space:
mode:
authorkrolyxon <me@krolyxon.com>2026-06-20 00:24:34 +0530
committerkrolyxon <me@krolyxon.com>2026-06-20 00:24:34 +0530
commit7e4cfad53699fabbecb6696508e5addcffc1b095 (patch)
treeebff581b0989df578c312247e1dad514c956572b /src/utils
parent1f800b74329d4f8b1511b4cf2a0d031439e1038d (diff)
restructure to use rust source tree primarily
Diffstat (limited to 'src/utils')
-rw-r--r--src/utils/buttons.cpp19
-rw-r--r--src/utils/buttons.h10
-rw-r--r--src/utils/device_check.cpp151
-rw-r--r--src/utils/device_check.h3
-rw-r--r--src/utils/sysinfo.cpp84
-rw-r--r--src/utils/sysinfo.h3
6 files changed, 0 insertions, 270 deletions
diff --git a/src/utils/buttons.cpp b/src/utils/buttons.cpp
deleted file mode 100644
index 166ee41..0000000
--- a/src/utils/buttons.cpp
+++ /dev/null
@@ -1,19 +0,0 @@
-#include "buttons.h"
-#include "config.h"
-#include <Arduino.h>
-
-void buttonsInit() {
- pinMode(BTN_UP, INPUT_PULLUP);
- pinMode(BTN_DOWN, INPUT_PULLUP);
- pinMode(BTN_SELECT, INPUT_PULLUP);
- pinMode(BTN_BACK, INPUT_PULLUP);
- pinMode(BTN_RIGHT, INPUT_PULLUP);
- pinMode(BTN_LEFT, INPUT_PULLUP);
-}
-
-bool btnUp() { return !digitalRead(BTN_UP); }
-bool btnDown() { return !digitalRead(BTN_DOWN); }
-bool btnSelect() { return !digitalRead(BTN_SELECT); }
-bool btnBack() { return !digitalRead(BTN_BACK); }
-bool btnRight() { return !digitalRead(BTN_RIGHT); }
-bool btnLeft() { return !digitalRead(BTN_LEFT); }
diff --git a/src/utils/buttons.h b/src/utils/buttons.h
deleted file mode 100644
index cfa9fa3..0000000
--- a/src/utils/buttons.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#pragma once
-
-void buttonsInit();
-
-bool btnUp();
-bool btnDown();
-bool btnSelect();
-bool btnBack();
-bool btnRight();
-bool btnLeft();
diff --git a/src/utils/device_check.cpp b/src/utils/device_check.cpp
deleted file mode 100644
index 17613b3..0000000
--- a/src/utils/device_check.cpp
+++ /dev/null
@@ -1,151 +0,0 @@
-#include "ELECHOUSE_CC1101_SRC_DRV.h"
-#include <Arduino.h>
-#include <RF24.h>
-#include <SPI.h>
-#include <Wire.h>
-
-#include "config.h"
-#include "ui/display.h"
-#include "buttons.h"
-
-// ===== EXTERNALS =====
-extern RF24 radio1;
-extern RF24 radio2;
-extern SPIClass *RADIO_SPI;
-extern U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2;
-
-// ===== RESULTS =====
-struct DeviceStatus {
- bool nrf1 = false;
- bool nrf2 = false;
- bool cc1101 = false;
- bool oled = true;
-};
-
-// ===== NRF CHECK =====
-// bool checkNRF(RF24 &radio)
-//{
-// // safer: only init if needed
-// if (!radio.isChipConnected()) {
-// if (!radio.begin(RADIO_SPI))
-// return false;
-// }
-//
-// return radio.isChipConnected();
-//}
-
-bool checkNRF(RF24 &radio) {
- radio.powerDown();
- delay(5);
-
- if (!radio.begin(RADIO_SPI))
- return false;
-
- delay(5);
-
- return radio.isChipConnected();
-}
-
-// ===== CC1101 CHECK =====
-bool checkCC1101(uint8_t csPin) {
- ELECHOUSE_cc1101.setSpiPin(cc1101_SCK, cc1101_MISO, cc1101_MOSI, csPin);
-
- delay(5);
-
- return ELECHOUSE_cc1101.getCC1101();
-}
-
-// ===== DRAW =====
-#define MAX_ITEMS 4
-#define VISIBLE_ROWS 5
-
-const char *labels[MAX_ITEMS] = {"NRF1", "NRF2", "CC1101", "OLED"};
-
-bool values[MAX_ITEMS];
-
-int selectedIndex = 0;
-int offset = 0;
-
-void drawStatus(DeviceStatus &s) {
- values[0] = s.nrf1;
- values[1] = s.nrf2;
- values[2] = s.cc1101;
- values[3] = s.oled;
-
- u8g2.clearBuffer();
- u8g2.setFont(u8g2_font_6x10_tr);
-
- // scrolling logic
- if (selectedIndex < offset)
- offset = selectedIndex;
-
- if (selectedIndex >= offset + VISIBLE_ROWS)
- offset = selectedIndex - VISIBLE_ROWS + 1;
-
- for (int i = 0; i < VISIBLE_ROWS; i++) {
- int item = offset + i;
- if (item >= MAX_ITEMS)
- break;
-
- int y = 12 + i * 10;
-
- if (item == selectedIndex) {
- u8g2.drawBox(0, y - 9, 128, 10);
- u8g2.setDrawColor(0);
- }
-
- u8g2.drawStr(2, y, labels[item]);
-
- if (values[item])
- u8g2.drawStr(80, y, "OK");
- else
- u8g2.drawStr(80, y, "FAIL");
-
- if (item == selectedIndex)
- u8g2.setDrawColor(1);
- }
-
- u8g2.sendBuffer();
-}
-
-// ===== MAIN =====
-void device_check_run() {
- DeviceStatus status;
-
- Serial.println("Running device diagnostics...");
-
- // NRF
- status.nrf1 = checkNRF(radio1);
- status.nrf2 = checkNRF(radio2);
-
- // CC1101
- status.cc1101 = checkCC1101(CC1101_CS);
- // status.cc1101 = true;
-
- drawStatus(status);
-
- Serial.println("Diagnostics complete");
-
- while (1) {
- drawStatus(status);
-
- if (btnUp()) {
- selectedIndex--;
- if (selectedIndex < 0)
- selectedIndex = MAX_ITEMS - 1;
- delay(150);
- }
-
- if (btnDown()) {
- selectedIndex++;
- if (selectedIndex >= MAX_ITEMS)
- selectedIndex = 0;
- delay(150);
- }
-
- if (btnBack()) {
- delay(150);
- break;
- }
- }
-}
diff --git a/src/utils/device_check.h b/src/utils/device_check.h
deleted file mode 100644
index 3d6b250..0000000
--- a/src/utils/device_check.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#pragma once
-
-void device_check_run();
diff --git a/src/utils/sysinfo.cpp b/src/utils/sysinfo.cpp
deleted file mode 100644
index 091ad0f..0000000
--- a/src/utils/sysinfo.cpp
+++ /dev/null
@@ -1,84 +0,0 @@
-#include "ui/display.h"
-#include "buttons.h"
-#include <Arduino.h>
-#include <esp_chip_info.h>
-#include <esp_heap_caps.h>
-
-void runSystemInfoFeature() {
- esp_chip_info_t chip_info;
-
- esp_chip_info(&chip_info);
-
- while (true) {
- // u8g2.clearBuffer();
-
- // char buf[32];
-
- // sprintf(buf, "Cores: %d", chip_info.cores);
- // u8g2.drawStr(0, 14, buf);
-
- // sprintf(buf, "Heap: %d",
- // heap_caps_get_free_size(MALLOC_CAP_DEFAULT));
- // u8g2.drawStr(0, 28, buf);
-
- // u8g2.drawStr(0, 60, "BACK to exit");
-
- // Get RAM info
- size_t freeHeap = heap_caps_get_free_size(MALLOC_CAP_DEFAULT);
- size_t totalHeap = heap_caps_get_total_size(MALLOC_CAP_DEFAULT);
- int ramUsage = 100 - ((freeHeap * 100) / totalHeap);
-
- // Get Flash info
- // uint32_t flashSize = spi_flash_get_chip_size();
- uint32_t flashSize = ESP.getFlashChipSize();
- uint32_t flashUsed = ESP.getSketchSize();
- int flashUsage = (flashUsed * 100) / flashSize;
-
- // Temperature (approx)
- uint8_t temperature = temperatureRead();
-
- // Chip info
- esp_chip_info_t chip_info;
- esp_chip_info(&chip_info);
-
- u8g2.clearBuffer();
- u8g2.setFont(u8g2_font_6x12_tr);
-
- char buf[32];
-
- // Box 1 - RAM
- u8g2.drawFrame(0, 0, 128, 12);
- sprintf(buf, "RAM: %d%% used", ramUsage);
- u8g2.drawStr(4, 9, buf);
-
- // Box 2 - Flash
- u8g2.drawFrame(0, 12, 128, 12);
- sprintf(buf, "Flash: %d%% used", flashUsage);
- u8g2.drawStr(4, 21, buf);
-
- // Box 3 - Temp (FULL WIDTH now)
- u8g2.drawFrame(0, 24, 128, 12);
- sprintf(buf, "Temp: %d C", temperature);
- u8g2.drawStr(4, 33, buf);
-
- // Box 4 - Chip info (FULL WIDTH)
- u8g2.drawFrame(0, 36, 128, 12);
- sprintf(buf, "Cores: %d Rev: %d", chip_info.cores, chip_info.revision);
- u8g2.drawStr(4, 45, buf);
-
- // Box 5 - PSRAM (KB)
- u8g2.drawFrame(0, 48, 128, 12);
- sprintf(buf, "PSRAM: %lu KB",
- heap_caps_get_free_size(MALLOC_CAP_SPIRAM) / 1024);
- u8g2.drawStr(4, 57, buf);
-
- u8g2.sendBuffer();
-
- if (btnBack()) {
- delay(200);
- return;
- }
-
- delay(100);
- }
-}
diff --git a/src/utils/sysinfo.h b/src/utils/sysinfo.h
deleted file mode 100644
index 8a4f176..0000000
--- a/src/utils/sysinfo.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#pragma once
-
-void runSystemInfoFeature();