Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
115 commits
Select commit Hold shift + click to select a range
c89a0e9
Add an external watchdog module
Quency-D Jan 22, 2026
9f38835
Merge pull request #1 from meshcore-dev/dev
Quency-D Jan 22, 2026
9df34e0
Merge branch 'dev' into solar-watchdog
Quency-D Feb 9, 2026
53ff4ed
Fix watchdog code in repeater
Quency-D Feb 9, 2026
1ab8a6f
Address review comments
weebl2000 Mar 4, 2026
f9b830b
Merge pull request #4 from weebl2000/solar-watchdog
Quency-D Mar 4, 2026
8435464
Add v4 FEM LNA CLI control commands.
Quency-D Mar 24, 2026
65752fe
Fix the memory leak issue in the strdup function.
Quency-D Mar 24, 2026
2442e9a
Adapt LNA CLI control commands for heltec_tracker_v2.
Quency-D Mar 24, 2026
9664305
Adapt LNA CLI control commands for heltec_t096.
Quency-D Mar 24, 2026
ddedb3c
Merge branch 'dev' into cli-lna-command
Quency-D Apr 25, 2026
ca047fe
Merge branch 'meshcore-dev:main' into cli-lna-command
Quency-D Apr 25, 2026
22f07b3
Revert "Merge branch 'meshcore-dev:main' into cli-lna-command"
Quency-D Apr 25, 2026
c42f6db
Revise according to the review comments.
Quency-D Apr 25, 2026
9d26953
Remove unnecessary blank line in MyMesh.cpp
Quency-D Apr 25, 2026
62b0d82
Restore WiFi operation command scope comments
Quency-D Apr 25, 2026
444dcfb
Change write to read for radio_fem_rxgain
Quency-D Apr 27, 2026
7e0d9f6
Merge pull request #10 from meshcore-dev/dev
Quency-D Apr 27, 2026
363ac44
Fix external watchdog timing around sleep
Quency-D Apr 27, 2026
8e787f6
fix(RegionMap): save() returns actual write success instead of hardco…
jirogit Apr 22, 2026
ec9fe67
Merge branch 'dev' into solar-watchdog
Quency-D May 9, 2026
12e6899
Merge branch 'dev' into cli-lna-command
Quency-D May 9, 2026
3a546a6
add heltec tower v2
Quency-D May 12, 2026
f29cae6
Added flash_mode=dio to avoid boot loop when flashing using merge.bin
IoTThinks May 16, 2026
250f448
Merge branch 'dev' into cli-lna-command
Quency-D May 20, 2026
00d445a
fix: fix typos in source code comments
sefinek May 28, 2026
4bf391f
fix: fix typos in source code comments
sefinek May 28, 2026
07bfe90
free packet on parse failure
liamcottle Jun 8, 2026
ae0bb7e
use releasePacket instead of _mgr->free
liamcottle Jun 8, 2026
5f3b7f2
Merge pull request #2722 from liamcottle/fix/free-packet-on-parse-fai…
ripplebiz Jun 8, 2026
9100a58
Merge branch 'dev' into cli-lna-command
Quency-D Jun 10, 2026
190dbb5
Merge pull request #13 from meshcore-dev/dev
Quency-D Jun 11, 2026
fe56d01
add tower v2 PA control
Quency-D Jun 12, 2026
d2d3d44
Add maximum power limit
Quency-D Jun 12, 2026
1c4c995
Fix low power consumption issues
Quency-D Jun 13, 2026
d5f74e9
* PAYLOAD_TYPE_PATH bad path_len now rejected
ripplebiz Jun 13, 2026
3ee58fd
Remove companion FEM RX gain command IDs
Quency-D Jun 13, 2026
5300fa1
Restore companion NodePrefs file ending
Quency-D Jun 13, 2026
a5cb0c2
Merge pull request #2140 from Quency-D/cli-lna-command
ripplebiz Jun 13, 2026
07648e3
* fix for anon contacts when full
ripplebiz Jun 14, 2026
c2d223f
* now handle the case where onAdvertRecv() should _replace_ the anon …
ripplebiz Jun 14, 2026
538ac38
* fix for counter in RESP_CODE_CONTACTS_START
ripplebiz Jun 14, 2026
2e73fe9
* fix for anon lastmod
ripplebiz Jun 14, 2026
29f0a7f
Merge pull request #2763 from meshcore-dev/anon-contacts-fix
oltaco Jun 14, 2026
e7db7c5
Add ESP32 Reset Reason
Jun 14, 2026
4f9a091
Use hardware channel activity detection for checking interference
weebl2000 Feb 18, 2026
813d108
Also return busy if preamble detected
weebl2000 Feb 22, 2026
04a6c70
Just check for not channel free
weebl2000 Feb 22, 2026
099ef67
Prevent packet errors from growing
weebl2000 Mar 6, 2026
7c8e092
Have CAD be a separate toggle (set cad on/off)
weebl2000 Jun 3, 2026
dd9b3b3
build fix for Heltec Mesh Solar and Mesh Pocket
oltaco Jun 14, 2026
60ea4a9
Merge pull request #1727 from weebl2000/use-hardware-channel-activity…
ripplebiz Jun 15, 2026
62849ef
Fixed GPS time sync for Heltec T114
IoTThinks Jun 22, 2026
c2cfba4
Merge pull request #2810 from IoTThinks/MCDev-Fixed-GPS-Time-for-T114…
liamcottle Jun 22, 2026
6a63dfc
Merge pull request #2771 from oltaco/nrf52-framework-buildfix
ripplebiz Jun 23, 2026
aa1cb1f
Merge pull request #2765 from fizzyfuzzle/ESP32-Reset-Reason
ripplebiz Jun 23, 2026
3192684
Merge pull request #2752 from Quency-D/heltec-tower-v2
ripplebiz Jun 23, 2026
b975180
initial support for elecrow thinknode m7
liamcottle Jun 25, 2026
5d0ff7f
remove guard on MyMesh::setRxBoostedGain()
oltaco Jun 25, 2026
9c7d71b
Added support for the nibble zero connect
ViezeVingertjes Dec 8, 2025
69df5c7
Remove NeoPixel configuration as its unused.
ViezeVingertjes Feb 5, 2026
eb938a9
Address review comments and sync with dev
ViezeVingertjes May 12, 2026
b8f1fad
Add trailing underscore to nibble_screen_connect env names to exclude…
ViezeVingertjes Jun 25, 2026
1f9bb67
return bool when setting rx boost
oltaco Jun 25, 2026
b07aba7
fix: report error when rxgain setting is unsupported or rejected
oltaco Jun 25, 2026
3d4eec4
Merge pull request #1194 from ViezeVingertjes/nibble_zero_connect
liamcottle Jun 26, 2026
f3d4d8c
always save boosted gain setting
oltaco Jun 26, 2026
62b95b4
Merge pull request #2844 from oltaco/fix-rx-boosted-gain
liamcottle Jun 26, 2026
dc200cf
Merge pull request #2639 from sefinek/fix/typos-in-comments
liamcottle Jun 26, 2026
5ff39c6
Merge pull request #2570 from IoTThinks/MCdev-Fixed-flashmode-XiaoC6-…
liamcottle Jun 26, 2026
4f8cb8d
* ACK packets being 'clipped' (in Dispatcher send). Needed to extend …
ripplebiz Jun 27, 2026
bc35208
Update number_allocations.md
HDDen Jun 27, 2026
58b0f7d
Update number_allocations.md
HDDen Jun 29, 2026
1869b57
Merge pull request #2853 from HDDen/dev
liamcottle Jun 29, 2026
2cb3a29
SX1262 LDO Support
entr0p1 Jun 30, 2026
4f7c1cb
build: add gcc, gtest to nix shell, fix native test framework
ckoehler Jun 17, 2026
dd87371
Merge pull request #2873 from ckoehler/fix/nix-devshell
liamcottle Jul 1, 2026
4f701b7
refactor: split MeshTables::hasSeen into pure query + markSeen
ckoehler Jul 2, 2026
affe61d
Merge pull request #2880 from ckoehler/push-sonzsorqmwqz
ripplebiz Jul 2, 2026
0d73795
Fix `recv_pkt_region` incorrect usage
neilalexander Jul 1, 2026
33fdf67
Merge pull request #2874 from neilalexander/neil/replyregion
ripplebiz Jul 2, 2026
acdf4e5
Merge pull request #2372 from jirogit/fix/region-save-return-value
liamcottle Jul 3, 2026
61e2146
Merge pull request #2867 from entr0p1/feature/sx1262-ldo-support
ripplebiz Jul 4, 2026
2867542
Merge branch 'dev' into solar-watchdog
Quency-D Jul 4, 2026
b40968a
stop tracking vscode extensions.json
liamcottle Jul 5, 2026
a92046b
Put powerOff and enterDeepSleep to ESP32Board
IoTThinks Jul 5, 2026
73b7367
Put powerOff to NRF52Board
IoTThinks Jul 5, 2026
7d7de88
board->powerOff() is sufficient to power off radio, display, GPS and …
IoTThinks Jul 5, 2026
eec75ea
Cleanup Poweroff for NRF52 boards
IoTThinks Jul 5, 2026
6b205da
Added missing driver/rtc_io.h
IoTThinks Jul 5, 2026
35f654c
Fixed hibernate/powerOff for ESP32 boards to stay at uA
IoTThinks Jul 5, 2026
9e66a2e
Merge pull request #2895 from IoTThinks/MCdev-Fixed-poweroff-to-uA-20…
fdlamotte Jul 6, 2026
3ee2f77
restore display and radio poweroff in ui
fdlamotte Jul 6, 2026
fec88e1
fix tenstar c3 repeater build
fdlamotte Jul 6, 2026
4605d3b
fix misspelled RF switch pin macros in SX1268/LLCC68/SX1276 radio wra…
weebl2000 Jul 9, 2026
102f1d2
Merge pull request #2913 from weebl2000/fix-typos
liamcottle Jul 10, 2026
8ef3690
fix(RegionMap): distinguish clean EOF from partial read in load()
jirogit Jul 10, 2026
07b5431
Merge branch 'dev' into pr-1446
beala Jul 12, 2026
47e1ce5
Update #defines
beala Jul 12, 2026
6343d8d
ThinkNode M6 repeater: disable leftover MESH_DEBUG/GPS_NMEA_DEBUG
jodybentley Jul 12, 2026
eb97a37
Add an instance of ExternalWatchdogManager to Tower V2
beala Jul 12, 2026
63731d3
sensors: fix millis() rollover stall in GPS time-sync + minor cleanups
jodybentley Jul 12, 2026
1429d75
ThinkNode M6/M1 room_server: set ROOM_PASSWORD default
jodybentley Jul 12, 2026
8e0c9a2
Merge pull request #2938 from benskigomez/fix/room-server-default-pas…
liamcottle Jul 13, 2026
55f43e5
Merge pull request #2935 from benskigomez/fix/m6-repeater-debug-flags
liamcottle Jul 13, 2026
17b6662
update radiolib to v7.7.1-6d893483
liamcottle Jul 13, 2026
e01a256
Merge pull request #2936 from beala/beala/MeshTowerV2_feed_watchdog_2
liamcottle Jul 13, 2026
6bd66d7
Merge pull request #2940 from liamcottle/upgrade/radiolib
liamcottle Jul 13, 2026
1c5a842
Merge pull request #2839 from liamcottle/board/thinknode-m7
liamcottle Jul 13, 2026
4f12dc0
Merge pull request #2937 from benskigomez/fix/gps-timesync-millis-ove…
ripplebiz Jul 13, 2026
87bf371
initial support for thinknode m9
liamcottle Jul 13, 2026
174bcdf
Merge pull request #2942 from liamcottle/board/thinknode-m9
ripplebiz Jul 13, 2026
b81fb8e
Merge pull request #2917 from jirogit/fix/regionmap-load-eof-handling
ripplebiz Jul 13, 2026
b09b8a0
Add RAK12501 L76K PCAS configuration
mathisono Jul 14, 2026
ecbd327
Fix RAK3401 RAK12501 UART pin mapping
mathisono Jul 14, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 0 additions & 9 deletions .vscode/extensions.json

This file was deleted.

61 changes: 61 additions & 0 deletions boards/heltec_tower_v2.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
{
"build": {
"arduino": {
"ldscript": "nrf52840_s140_v6.ld"
},
"core": "nRF5",
"cpu": "cortex-m4",
"extra_flags": "-DNRF52840_XXAA",
"f_cpu": "64000000L",
"hwids": [
["0x239A","0x4405"],
["0x239A","0x0029"],
["0x239A","0x002A"],
["0x239A","0x0071"]
],
"usb_product": "HT-n5262",
"mcu": "nrf52840",
"variant": "heltec_tower_v2",
"bsp": {
"name": "adafruit"
},
"softdevice": {
"sd_flags": "-DS140",
"sd_name": "s140",
"sd_version": "6.1.1",
"sd_fwid": "0x00B6"
},
"bootloader": {
"settings_addr": "0xFF000"
}
},
"connectivity": [
"bluetooth"
],
"debug": {
"jlink_device": "nRF52840_xxAA",
"svd_path": "nrf52840.svd",
"openocd_target": "nrf52.cfg"
},
"frameworks": [
"arduino"
],
"name": "Heltec Tower V2 Board",
"upload": {
"maximum_ram_size": 235520,
"maximum_size": 815104,
"speed": 115200,
"protocol": "nrfutil",
"protocols": [
"jlink",
"nrfjprog",
"nrfutil",
"stlink"
],
"use_1200bps_touch": true,
"require_upload_port": true,
"wait_for_upload_port": true
},
"url": "https://heltec.org/",
"vendor": "Heltec"
}
42 changes: 42 additions & 0 deletions boards/thinknode_m7.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
{
"build": {
"arduino": {
"ldscript": "esp32s3_out.ld",
"memory_type": "qio_opi"
},
"core": "esp32",
"extra_flags": [
"-D BOARD_HAS_PSRAM",
"-D ARDUINO_USB_CDC_ON_BOOT=0",
"-D ARDUINO_USB_MODE=0",
"-D ARDUINO_RUNNING_CORE=1",
"-D ARDUINO_EVENT_RUNNING_CORE=0"
],
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
"psram_type": "qio_opi",
"hwids": [["0x303A", "0x1001"]],
"mcu": "esp32s3",
"variant": "ELECROW-ThinkNode-M7"
},
"connectivity": ["wifi", "bluetooth", "lora"],
"debug": {
"default_tool": "esp-builtin",
"onboard_tools": ["esp-builtin"],
"openocd_target": "esp32s3.cfg"
},
"frameworks": ["arduino", "espidf"],
"name": "ELECROW ThinkNode M7",
"upload": {
"flash_size": "8MB",
"maximum_ram_size": 524288,
"maximum_size": 8388608,
"use_1200bps_touch": true,
"wait_for_upload_port": true,
"require_upload_port": true,
"speed": 921600
},
"url": "https://www.elecrow.com",
"vendor": "ELECROW"
}
57 changes: 57 additions & 0 deletions boards/thinknode_m9.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
{
"build": {
"arduino": {
"ldscript": "esp32s3_out.ld",
"memory_type": "qio_opi",
"partitions": "default_16MB.csv"
},
"core": "esp32",
"extra_flags": [
"-DBOARD_HAS_PSRAM",
"-DARDUINO_USB_CDC_ON_BOOT=0",
"-DARDUINO_USB_MODE=0",
"-DARDUINO_RUNNING_CORE=1",
"-DARDUINO_EVENT_RUNNING_CORE=0"
],
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
"psram_type": "qio_opi",
"hwids": [
[
"0x303A",
"0x1001"
]
],
"mcu": "esp32s3",
"variant": "ELECROW-ThinkNode-M9"
},
"connectivity": [
"wifi",
"bluetooth",
"lora"
],
"debug": {
"default_tool": "esp-builtin",
"onboard_tools": [
"esp-builtin"
],
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "elecrow-thinknode-m9",
"upload": {
"flash_size": "16MB",
"maximum_ram_size": 524288,
"maximum_size": 16777216,
"use_1200bps_touch": true,
"wait_for_upload_port": true,
"require_upload_port": true,
"speed": 921600
},
"url": "https://www.elecrow.com/thinknode-m1-meshtastic-lora-signal-transceiver-powered-by-nrf52840-with-154-screen-support-gps.html",
"vendor": "ELECROW"
}
7 changes: 4 additions & 3 deletions default.nix
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
{ pkgs ? import <nixpkgs> {} }:
let
{pkgs ? import <nixpkgs> {}}: let
in
pkgs.mkShell {
buildInputs = [
pkgs.platformio
pkgs.python3
pkgs.gcc
pkgs.gtest
# optional: needed as a programmer i.e. for esp32
pkgs.avrdude
];
}
}
28 changes: 28 additions & 0 deletions docs/cli_commands.md
Original file line number Diff line number Diff line change
Expand Up @@ -263,6 +263,20 @@ This document provides an overview of CLI commands that can be sent to MeshCore

---

#### View or change the LoRa FEM receive-path gain state on supported boards
**Usage:**
- `get radio.fem.rxgain`
- `set radio.fem.rxgain <state>`

**Parameters:**
- `state`: `on`|`off`

**Notes:**
- This controls the external LoRa FEM receive-path LNA where the board supports it.
- This is separate from `radio.rxgain`, which controls the radio chip receive gain mode.

---

### System

#### View or change this node's name
Expand Down Expand Up @@ -564,6 +578,20 @@ This document provides an overview of CLI commands that can be sent to MeshCore

---

#### Enable or disable hardware Channel Activity Detection (CAD)
**Usage:**
- `get cad`
- `set cad <on|off>`

**Description:** When enabled, the radio performs a hardware Channel Activity Detection scan before transmitting and defers if the channel is busy. Runs independently of `int.thresh` — either, both, or none may be active.

**Parameters:**
- `on|off`: Enable or disable hardware CAD

**Default:** `off`

---

#### View or change the AGC Reset Interval
**Usage:**
- `get agc.reset.interval`
Expand Down
1 change: 1 addition & 0 deletions docs/number_allocations.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ Once you have a working app/project, you need to be able to demonstrate it exist
| 0000 - 00FF | -reserved for internal use- | |
| 0100 | MeshCore Open | zsylvester@monitormx.com — https://github.com/zjs81/meshcore-open |
| 0110 - 011F | Ripple | ripple_biz@protonmail.com — https://buymeacoffee.com/ripplebiz |
| 0120 | MCO Advanced | most.original.address@gmail.com — https://hdden.ru/MCOa/ |
| FF00 - FFFF | -reserved for testing/dev- | |

(add rows, inside the range 0100 - FEFF for custom apps)
2 changes: 1 addition & 1 deletion examples/companion_radio/DataStore.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -545,7 +545,7 @@ bool DataStore::putBlobByKey(const uint8_t key[], int key_len, const uint8_t src
uint32_t pos = 0, found_pos = 0;
uint32_t min_timestamp = 0xFFFFFFFF;

// search for matching key OR evict by oldest timestmap
// search for matching key OR evict by oldest timestamp
BlobRec tmp;
file.seek(0);
while (file.read((uint8_t *) &tmp, sizeof(tmp)) == sizeof(tmp)) {
Expand Down
17 changes: 7 additions & 10 deletions examples/companion_radio/MyMesh.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -261,6 +261,9 @@ float MyMesh::getAirtimeBudgetFactor() const {
int MyMesh::getInterferenceThreshold() const {
return 0; // disabled for now, until currentRSSI() problem is resolved
}
bool MyMesh::getCADEnabled() const {
return true; // hardware CAD before TX (no CLI toggle on companion; enabled by default)
}

int MyMesh::calcRxDelay(float score, uint32_t air_time) const {
if (_prefs.rx_delay_base <= 0.0f) return 0;
Expand Down Expand Up @@ -854,7 +857,7 @@ void MyMesh::onSendTimeout() {}

MyMesh::MyMesh(mesh::Radio &radio, mesh::RNG &rng, mesh::RTCClock &rtc, SimpleMeshTables &tables, DataStore& store, AbstractUITask* ui)
: BaseChatMesh(radio, *new ArduinoMillis(), rng, rtc, *new StaticPoolPacketManager(16), tables),
_serial(NULL), telemetry(MAX_PACKET_PAYLOAD - 4), _store(&store), _ui(ui) {
_serial(NULL), telemetry(MAX_PACKET_PAYLOAD - 4), _store(&store), _ui(ui), _iter(0) {
_iter_started = false;
_cli_rescue = false;
offline_queue_len = 0;
Expand Down Expand Up @@ -1542,6 +1545,7 @@ void MyMesh::handleCmdFrame(size_t len) {
memcpy(anon.id.pub_key, pub_key, PUB_KEY_SIZE);
anon.out_path_len = 0; // default to zero-hop direct
anon.type = ADV_TYPE_NONE; // unknown
anon.lastmod = getRTCClock()->getCurrentTime();

if (addContact(anon)) recipient = &anon;
}
Expand Down Expand Up @@ -1981,6 +1985,7 @@ void MyMesh::handleCmdFrame(size_t len) {
sendPacket(pkt, priority, 0);
writeOKFrame();
} else {
releasePacket(pkt);
writeErrFrame(ERR_CODE_ILLEGAL_ARG);
}
} else {
Expand Down Expand Up @@ -2186,15 +2191,7 @@ void MyMesh::checkSerialInterface() {
&& !_serial->isWriteBusy() // don't spam the Serial Interface too quickly!
) {
ContactInfo contact;
bool found = false;
while (_iter.hasNext(this, contact)) {
if (contact.type != ADV_TYPE_NONE) {
found = true;
break;
}
}

if (found) {
if (_iter.hasNext(this, contact)) {
if (contact.lastmod > _iter_filter_since) { // apply the 'since' filter
writeContactRespFrame(RESP_CODE_CONTACT, contact);
if (contact.lastmod > _most_recent_lastmod) {
Expand Down
1 change: 1 addition & 0 deletions examples/companion_radio/MyMesh.h
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,7 @@ class MyMesh : public BaseChatMesh, public DataStoreHost {
protected:
float getAirtimeBudgetFactor() const override;
int getInterferenceThreshold() const override;
bool getCADEnabled() const override;
int calcRxDelay(float score, uint32_t air_time) const override;
uint32_t getRetransmitDelay(const mesh::Packet *packet) override;
uint32_t getDirectRetransmitDelay(const mesh::Packet *packet) override;
Expand Down
9 changes: 8 additions & 1 deletion examples/companion_radio/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,10 @@ void setup() {

board.begin();

#ifdef HAS_EXTERNAL_WATCHDOG
external_watchdog.begin();
#endif

#ifdef DISPLAY_CLASS
DisplayDriver* disp = NULL;
if (display.begin()) {
Expand Down Expand Up @@ -249,7 +253,10 @@ void loop() {
ui_task.loop();
#endif
rtc_clock.tick();

#ifdef HAS_EXTERNAL_WATCHDOG
external_watchdog.loop();
#endif

if (!the_mesh.hasPendingWork()) {
#if defined(NRF52_PLATFORM)
board.sleep(0); // nrf ignores seconds param, sleeps whenever possible
Expand Down
2 changes: 2 additions & 0 deletions examples/companion_radio/ui-new/UITask.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -697,8 +697,10 @@ void UITask::shutdown(bool restart){
if (restart) {
_board->reboot();
} else {
// still necessary until all boards are refactored to use poweroff
_display->turnOff();
radio_driver.powerOff();
// Power off board including radio, display, GPS and components
_board->powerOff();
}
}
Expand Down
2 changes: 2 additions & 0 deletions examples/companion_radio/ui-orig/UITask.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -307,7 +307,9 @@ void UITask::shutdown(bool restart){
if (restart) {
_board->reboot();
} else {
_display->turnOff();
radio_driver.powerOff();
// Power off board including radio, display, GPS and components
_board->powerOff();
}
}
Expand Down
1 change: 1 addition & 0 deletions examples/companion_radio/ui-tiny/UITask.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -568,6 +568,7 @@ void UITask::shutdown(bool restart){
} else {
_display->turnOff();
radio_driver.powerOff();
// Power off board including radio, display, GPS and components
_board->powerOff();
}
}
Expand Down
Loading