Commit Graph
4369 Commits
Author SHA1 Message Date
mikecarper 7a4da3ccfb Fix Cascade power saving, USB Companion, and mOTA flows 2026-08-18 14:02:10 -07:00
mikecarper 21bfc97712 Merge remote-tracking branch 'iotthinks/PowerSaving-v17' into keymindCascade 2026-08-18 11:52:22 -07:00
mikecarper bdd7d36b40 Merge remote-tracking branch 'upstream/dev' into keymindCascade
# Conflicts:
#	examples/simple_repeater/MyMesh.cpp
2026-08-18 11:51:58 -07:00
Kevin Le 4027acc74b Fixed to support usb companions 2026-08-18 20:57:20 +07:00
fdlamotte 29b33467fb Merge pull request #3180 from fdlamotte/thinknode_m8
thinknode_m8: initial support

adds some functionalities to ui_task and epddisplay:

epd display, 
- supports screen off, and clear screen
- supports forcing full refresh every N partial refreshes (off by default, configured to 60 for M8)

ui_task
- UI_SHOW_CLOCK flag to display clock on first screen
- rotary button can act like joystick (with regards to Enter key), defaults to old config for existing nodes
- screen off on long press when using rotary button (very handy for the watch)
2026-08-18 09:33:42 -04:00
ripplebiz 808994d828 Merge pull request #3238 from recrof/meshadventurer-board-relocate
fix: move MeshadventurerBoard.h to variants/meshadventurer
2026-08-18 23:04:35 +10:00
ripplebiz 5a30456225 Merge pull request #3239 from recrof/default-loop-detect-minimal
repeater: set `loop.detect` to `minimal` as default for new installs
2026-08-18 23:03:10 +10:00
Rastislav Vysoky 2db4b40617 repeater: set loop.detect to minimal as default for new installs 2026-08-18 14:56:58 +02:00
Rastislav Vysoky d65da5a81a fix: move MeshadventurerBoard.h to correct location 2026-08-18 13:51:55 +02:00
mikecarper eb27d19518 Merge PR #3235: support multi-byte raw-data paths 2026-08-17 23:58:15 -07:00
mikecarper 76d38384a4 Merge PR #3234: probe and claim Bosch sensor addresses
Use automatic 0x76/0x77 fallback probing while preserving the newer sensor manager implementation.
2026-08-17 23:57:27 -07:00
mikecarper 572245c512 Merge PR #3226: fix T1000-E USB product name 2026-08-17 23:55:58 -07:00
mikecarper a92215fd07 Merge PR #3214: companion USB connection and flow control
Preserve the newer terminal and mOTA passthrough paths while adding real USB client detection and whole-frame transmit pacing.
2026-08-17 23:55:40 -07:00
mikecarper 829241f615 Merge upstream dev
Resolve the LR2021 transmit-power receiver restart alongside local radio state caching.
2026-08-17 23:49:41 -07:00
mikecarper c76ee004f1 Merge IoTThinks PowerSaving-v17
Port current-compatible power-saving updates while retaining newer local implementations.
2026-08-17 23:45:06 -07:00
IoTThinks 11222035ee Merge pull request #15 from Dom4n/fix/powersaving-v17-noise-floor-after-agc-reset
fix(radio): recalibrate noise floor after AGC reset
2026-08-18 11:02:46 +07:00
Kevin Le 167a32fbdc Fixed to show d h, h m and m for BLE companions 2026-08-18 10:40:16 +07:00
Scott Powell 0cce9197a1 Fix for CMD_SEND_RAW_DATA and multi-byte paths 2026-08-18 13:11:15 +10:00
Kevin Le 307bc938b5 Fixed RXPS for LR1110 2026-08-18 09:29:12 +07:00
Jarosław Domański be4b276931 fix(radio): preserve RX during noise floor calibration 2026-08-18 03:08:20 +02:00
Jarosław Domański 0965a6aad1 fix(radio): recalibrate noise floor after AGC reset 2026-08-18 02:32:19 +02:00
agessaman 2a6eabe120 fix(sensors): probe BMP/BME at both 0x76 and 0x77
Grove and other Bosch modules strap SDO high, so the 0x76-only table
never initialized them. Add an alternate-address entry per Bosch sensor;
the bus scan still gates every probe, and all four drivers verify a chip
ID before claiming an address.

Each sensor type has a single static driver instance, so skip an entry
whose query is already active: the alternate address is a fallback, not
a second device.
2026-08-17 14:59:59 -07:00
agessaman 2b0ed00004 fix(sensors): claim an I2C address after a successful init
Several table entries share an address and not every driver verifies a
chip ID: INA226::begin() only checks that the address ACKs, so an SHT4x
at 0x44 was also registered as an INA226 and reported junk current on a
second channel. Mark the address consumed once a driver initializes it
so later entries cannot re-claim the same device.
2026-08-17 14:58:49 -07:00
Florent 7f664f100d gxepd: do full refresh before screen off ... so wakes quicker ;) 2026-08-17 09:41:51 -04:00
IoTThinks a5a519ac31 Merge pull request #14 from BKWSU-UK/PowerSaving-v17
Applied GPS power saving profile with 10 min on, 1 day off cycle
2026-08-17 20:26:56 +07:00
Florent de0d5031de M8: preview messages up to 164 cars 2026-08-17 09:24:17 -04:00
Huw Duddy 45c0c32354 Merge pull request #3218 from fkallay1/fix/lr2021-set-tx-power-rx-stall
Fix LR2021 occasionally stopping reception after a TX power change
2026-08-17 23:20:32 +10:00
Huw Duddy 9387f55d7e trimmed comment 2026-08-17 23:16:01 +10:00
Simon Blandford a6ae765020 Applied GPS power saving profile with 10 min on, 1 day off cycle 2026-08-17 13:25:22 +01:00
mikecarper 23e91b792e Update Mesh America Companion catalogs for 1.17.1.2 2026-08-17 00:16:04 -07:00
Kevin Le 54e5bb04e1 Fixed build script for usb companions 2026-08-17 12:44:08 +07:00
mikecarper c9652754cf Fit complete Companion correction matrix v1.17.1.2-halo-keymind-cascade-c9652754 lora-ota-v1.17.1.2-halo-keymind-cascade-c9652754 full-profiles-v1.17.1.2-halo-keymind-cascade-c9652754 logging-v1.17.1.2-halo-keymind-cascade-c9652754 2026-08-16 22:42:07 -07:00
mikecarper a229ba1836 Add Companion-only release matrix build 2026-08-16 21:08:14 -07:00
mikecarper 80ea7976e2 Enable Companion power saving by default 2026-08-16 21:06:23 -07:00
mikecarper a514b2a6d5 Stabilize T-Beam full companion startup 2026-08-16 11:00:55 -07:00
Florent 0a595ae79d gxepddisplay: better handling of full refresh (no faint partial afterwards !!!) 2026-08-16 11:40:13 -04:00
Kevin Le 1d36e0e019 Added missing ENABLE_USB_INTERFACE for Xiao S3 Wio 2026-08-16 18:45:42 +07:00
Kevin Le 54f292f40d Added uptime to companion screen 2026-08-16 16:07:03 +07:00
Kevin Le cb7c4b0fb6 Fixed esp32c6_base to extend arduino_base 2026-08-16 15:32:44 +07:00
Michael Jensen 3641e3bb23 Fix T1000-E application reporting the bootloader's USB product name
boards/tracker-t1000-e.json set the application's usb_product to
"T1000-E-BOOT". PlatformIO's nordicnrf52 builder turns that key into
-DUSB_PRODUCT, which lands in the USB device descriptor, so a running
node enumerates as "T1000-E-BOOT" while the Seeed bootloader enumerates
as "T1000-E". The firmware that is not the bootloader is the one wearing
the bootloader's name.

That misidentification is load-bearing in the web flasher.
flasher.meshcore.io calls navigator.serial.requestPort() with no filters,
so the row label in the browser's port chooser -- which the browser builds
from the USB iProduct string -- is the only signal the user has. The nRF52
flow prompts twice, once for the 1200-baud DFU touch and again for the
flash itself, with no re-enumeration watcher in between, and at that
second prompt the two candidate rows read:

  T1000-E-BOOT (239a:8029)   <- the application
  T1000-E      (2886:0057)   <- the actual bootloader

which is backwards at the moment the user has to tell them apart.

The same define is also the Adafruit core's CFG_DEFAULT_NAME, so it is
what a companion advertises over BLE whenever the intended name is too
long for the GAP device-name attribute and setName() silently fails
(#1769). The string is user-visible over Bluetooth as well.

Name the application after the firmware it runs rather than after the
board. This deliberately differs from the hardware-name convention in the
other nRF52 board files ("WisCore RAK4631 Board", "Seeed Wio Tracker L1")
because the string's job here is to distinguish the running application
from a bootloader that will never claim to be MeshCore; "Seeed T1000-E"
would sit one word away from the bootloader's "T1000-E".

Upload and flashing are unaffected -- PlatformIO's port autodetect matches
on hwids (VID:PID), not on this string. On Linux the /dev/serial/by-id
symlink does change, from usb-Seeed_Studio_T1000-E-BOOT_<serial>-if00 to
usb-Seeed_Studio_MeshCore_T1000-E_<serial>-if00, so anything pinned to the
old path needs updating.
2026-08-15 23:58:49 -06:00
mikecarper bcedfdd019 Keep T-Beam companion available without radio 2026-08-15 22:34:45 -07:00
mikecarper 7afa6b11a8 Add T-Beam WiFi button toggle 2026-08-15 18:12:09 -07:00
mikecarper 933697f65c Fix Companion device power saving 2026-08-15 17:58:37 -07:00
mikecarper 9161dfd7d5 Expose RX power saving in WebConfig 2026-08-15 09:07:41 -07:00
Kevin Le 8a5f7cae85 Merge branch 'PowerSaving-v17' of https://github.com/IoTThinks/MeshCore into PowerSaving-v17 2026-08-15 18:30:01 +07:00
Kevin Le c0af1b5cb1 Fixed to use shorter platform_packages for BLE PowerSaving 2026-08-15 18:29:27 +07:00
Kevin Le e1758d2ece Fixed for T096 OLED to save 3.5mA and use dark theme 2026-08-15 18:26:32 +07:00
IoTThinks ca85060c42 Merge pull request #13 from Dom4n/feature/rxps-v1.17.1-clean
RX power saving using rx duty cycle
2026-08-15 17:12:54 +07:00
Kevin Le 320ce563d1 BLE Powersaving for heltec_v4_expansionkit 2026-08-15 13:13:25 +07:00
mikecarper 772607eba1 Complete v1.17.1.1 release matrix support nrf52-mota-v1.16.09-to-v1.17.1.1-halo-keymind-cascade-759a35fc 2026-08-14 21:09:14 -07:00