Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
c597ccf
Added support of cyrillic characters output on companion devices with…
Dec 17, 2025
118e5b1
Added support of cyrillic characters output on companion devices with…
Jan 13, 2026
ae52ee7
variants: IkokaNrf52Board: Use NRF52Board base class
fschrempf Dec 17, 2025
ed283e4
Deduplicate reboot() for NRF52 boards
fschrempf Dec 9, 2025
49b56a9
Use common NRF52 begin() and deduplicate() startup reason init
fschrempf Dec 9, 2025
3cb80d4
Deduplicate DC/DC regulator enable for NRF52 boards
fschrempf Dec 9, 2025
41653ab
Deduplicate NRF52 startOTAUpdate()
fschrempf Dec 9, 2025
f5cd665
NRF52Board.h: Mark getMCUTemperature() as virtual
fschrempf Dec 17, 2025
a73de97
variants: RAK4631: Enable DC/DC regulator to reduce power consumption
fschrempf Dec 9, 2025
ecf7d4e
queue throttling + slave latency and minor refactor
liquidraver Dec 16, 2025
7346606
move showalert after saveprefs
liquidraver Dec 11, 2025
42bce43
* check for 'early receive' ACK
Dec 27, 2025
3ed5e03
Add RS232 bridge environment configuration for ProMicro
jbrazio Dec 28, 2025
f9c460a
Fixed T1000-E temperature and lux sensors
entr0p1 Dec 19, 2025
fbb54fd
EnvironmentSensorManager.cpp: Mitigate BME280 self-heating causing in…
entr0p1 Dec 20, 2025
073d1cb
To fix the default temperature to be overridden by external sensors (…
IoTThinks Dec 27, 2025
c2a6a4c
To get and average the temperature so it is more accurate, especially…
IoTThinks Dec 27, 2025
b94ed47
Fix TX LED stuck on when StartTransmit() fails
entr0p1 Dec 20, 2025
8605542
Added powersaving to all ESP32 boards with RTC-supported DIO1
IoTThinks Dec 23, 2025
a1cb7d1
Modified hasPendingWork to return bool
IoTThinks Dec 24, 2025
8127498
Added powersaving_enabled sanitization
IoTThinks Dec 24, 2025
f8b734f
Added extra check for P_LORA_DIO_1 before going to sleep
IoTThinks Dec 24, 2025
d20022e
Fixed T-Beam board to work with sleep
IoTThinks Dec 24, 2025
c0a7b01
Added pad after powersaving_enabled
IoTThinks Dec 29, 2025
039e440
Used esp_wifi_get_mode instead of WiFi.getMode() to reduce the code size
IoTThinks Dec 29, 2025
845dcf5
Add venv dirs to .gitignore
weebl2000 Dec 31, 2025
49ee687
BUGFIX: replay protection on repeaters tripped by timestamp sent from…
entr0p1 Dec 30, 2025
a858c54
* added protocol_guide doc
Jan 2, 2026
e6ebc26
ESP factory reset clear NVS too
liquidraver Dec 31, 2025
30d9e43
Fix typos in README and source comments
cj-vana Jan 4, 2026
d9d998e
fix compilation errors for m6 companion roles
recrof Jan 3, 2026
a390357
implement frame header parising for wifi interface
liamcottle Jan 3, 2026
ac77b77
remove use of dynamic allocation
liamcottle Jan 3, 2026
61afd96
simplify reading frame header
liamcottle Jan 4, 2026
b5b4716
OFFLINE_QUEUE_SIZE for Heltec Wifi companions
an0key Jan 6, 2026
3ee19f0
variants: Xiao_S3_WIO: Add WiFi companion env
alex-vg Dec 19, 2025
224be5b
EnvironmentSensorManager.cpp: Fix RAK4631 serial GPS detection
fschrempf Dec 16, 2025
6a3eb74
EnvironmentSensorManager.cpp: Cleanup after failed RAK4631 GPS detection
fschrempf Dec 16, 2025
dafe7c8
Apply #1331 to other WiFi companions
olanwe Jan 7, 2026
f37f0e2
Fix capitalization in T1000-E manufacturer string
fmckeogh Jan 6, 2026
d444c25
* Repeater: new anon request sub-type: ANON_REQ_TYPE_REGIONS (rate l…
Jan 3, 2026
d63eebe
* ANON_REQ_TYPE_REGIONS now direct only, with reply_path encoded in r…
Jan 8, 2026
9b9b8fa
* new ANON_REQ_TYPE_VER_OWNER
Jan 9, 2026
08913e6
* ANON_REQ_TYPE_VER_OWNER, now includes node_name
Jan 9, 2026
a2e52e4
* new ANON_REQ_TYPE_VER (for just simple clock + ver info)
Jan 9, 2026
8c381cf
* CommonCLI: added "set name ..." validation
Jan 9, 2026
71b1699
* ANON_REQ_TYPE_VER_OWNER now delimited by newline chars
Jan 9, 2026
1ae5649
* new req/resp (after login): REQ_TYPE_GET_OWNER_INFO (includes firmw…
Jan 12, 2026
df5c4a1
* repeater login response, FIRMWARE_VER_LEVEL now bumped to 2
Jan 12, 2026
93513a3
remove serial debug logging from t3s3 sx1276 companion usb
recrof Jan 12, 2026
7347ef9
cleanup ikoka variants and add all supported sensors
recrof Jan 12, 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
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,5 @@ cmake-*
.cache
.ccls
compile_commands.json
.venv/
venv/
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ Please submit PR's using 'dev' as the base branch!
For minor changes just submit your PR and I'll try to review it, but for anything more 'impactful' please open an Issue first and start a discussion. Is better to sound out what it is you want to achieve first, and try to come to a consensus on what the best approach is, especially when it impacts the structure or architecture of this codebase.

Here are some general principals you should try to adhere to:
* Keep it simple. Please, don't think like a high-level lang programmer. Think embedded, and keep code concise, without any unecessary layers.
* Keep it simple. Please, don't think like a high-level lang programmer. Think embedded, and keep code concise, without any unnecessary layers.
* No dynamic memory allocation, except during setup/begin functions.
* Use the same brace and indenting style that's in the core source modules. (A .clang-format is prob going to be added soon, but please do NOT retroactively re-format existing code. This just creates unnecessary diffs that make finding problems harder)

Expand All @@ -106,7 +106,7 @@ There are a number of fairly major features in the pipeline, with no particular
- [ ] Core + Apps: support for LZW message compression
- [ ] Core: dynamic CR (Coding Rate) for weak vs strong hops
- [ ] Core: new framework for hosting multiple virtual nodes on one physical device
- [ ] V2 protocol spec: discussion and concensus around V2 packet protocol, including path hashes, new encryption specs, etc
- [ ] V2 protocol spec: discussion and consensus around V2 packet protocol, including path hashes, new encryption specs, etc

## 📞 Get Support

Expand Down
53 changes: 52 additions & 1 deletion docs/payloads.md
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,9 @@ Request type
| `0x02` | keepalive | (deprecated) |
| `0x03` | get telemetry data | TODO |
| `0x04` | get min,max,avg data | sensor nodes - get min, max, average for given time span |
| `0x05` | get access list | get node's approved access list |
| `0x05` | get access list | get node's approved access list |
| `0x06` | get neighbors | get repeater node's neighbors |
| `0x07` | get owner info | get repeater firmware-ver/name/owner info |

### Get stats

Expand Down Expand Up @@ -132,6 +134,27 @@ Gets information about the node, possibly including the following:

Request data about sensors on the node, including battery level.

### Get Telemetry

TODO

### Get Min/Max/Ave (Sensor nodes)

TODO

### Get Access List

TODO

### Get Neighors

TODO

### Get Owner Info

TODO


## Response

| Field | Size (bytes) | Description |
Expand Down Expand Up @@ -179,6 +202,34 @@ txt_type
| timestamp | 4 | sender time (unix timestamp) |
| password | rest of message | password for repeater/sensor |

## Repeater - Regions request

| Field | Size (bytes) | Description |
|----------------|-----------------|-------------------------------------------------------------------------------|
| timestamp | 4 | sender time (unix timestamp) |
| req type | 1 | 0x01 (request sub type) |
| reply path len | 1 | path len for reply |
| reply path | (variable) | reply path |

## Repeater - Owner info request

| Field | Size (bytes) | Description |
|----------------|-----------------|-------------------------------------------------------------------------------|
| timestamp | 4 | sender time (unix timestamp) |
| req type | 1 | 0x02 (request sub type) |
| reply path len | 1 | path len for reply |
| reply path | (variable) | reply path |

## Repeater - Clock and status request

| Field | Size (bytes) | Description |
|----------------|-----------------|-------------------------------------------------------------------------------|
| timestamp | 4 | sender time (unix timestamp) |
| req type | 1 | 0x03 (request sub type) |
| reply path len | 1 | path len for reply |
| reply path | (variable) | reply path |


# Group text message / datagram

| Field | Size (bytes) | Description |
Expand Down
Loading