21 Commits
v8 ... v0.9.10

Author SHA1 Message Date
Bernhard M
fe2ebb0de7 Update CHANGELOG for version 0.9.9
Updated changelog for version 0.9.9 with changes, improvements, and fixes.
2026-02-15 17:47:23 +01:00
Bernhard M
f7a6be099c Update CHANGELOG for version 0.9.8
Updated changelog for version 0.9.8 with added features, improvements, and fixes.
2026-02-15 16:49:44 +01:00
Bernhard M
0bd7b0d620 Update CHANGELOG for v0.9.8 release
Added new features, improvements, and bug fixes across various modules including UI, Contacts, and MAP functionalities.
2026-02-15 16:48:49 +01:00
Bernhard M
749d1f0fab Create license.txt 2026-02-09 14:34:28 +01:00
Bernhard M
d0a82ce5d5 Revise CHANGELOG for v0.9.8 updates
Updated CHANGELOG with new features, improvements, and fixes for version 0.9.8.
2026-02-04 23:59:39 +01:00
Bernhard M
29e614d554 Update CHANGELOG with new features and fixes
Updated changelog with new features and fixes for various management and contacts components.
2026-02-01 22:14:30 +01:00
Bernhard M
d1f73a34da Update CHANGELOG for version 0.9.7
Updated CHANGELOG.md to reflect recent changes and fixes in the application, including improvements in the Repeater Admin layout and functionality.
2026-02-01 22:13:27 +01:00
Bernhard M
215a96066c Update CHANGELOG for version 0.9.8
Updated CHANGELOG.md to reflect new features, improvements, and bug fixes for version 0.9.8.
2026-02-01 14:08:28 +01:00
Bernhard M
d7eb6d87ea Fix duplicate message issue for hashtag channels
Fixed issue with adding new hashtag channels that could lead to duplicate messages.
2026-02-01 13:01:00 +01:00
Bernhard M
d90e198bf2 Update CHANGELOG for version 0.9.8
Add changelog entry for version 0.9.8 with new features and improvements.
2026-02-01 12:48:49 +01:00
Bernhard M
29af3a6f17 Update CHANGELOG for version 0.9.7
Added new features, improvements, and bug fixes for version 0.9.7.
2026-01-30 23:18:16 +01:00
Bernhard M
0a8a18abfd Introduce 'MC Term' section in README
Added a section for 'MC Term' to the README.
2026-01-24 00:02:18 +01:00
Bernhard M
366a9370c3 Update issue templates 2026-01-23 15:23:01 +01:00
Bernhard M
9a8513f518 Update issue templates for BUG 2026-01-21 21:21:31 +01:00
Bernhard M
1735d9c917 Update README with additional connectivity information
Expanded the description of MeshCore to include BLE and WiFi connectivity options.
2026-01-18 01:25:29 +01:00
Bernhard M
32094ac906 Update flashing instructions in README.md
Clarified instructions for first-time installation and version upgrade.
2026-01-15 21:29:56 +01:00
Bernhard M
2ca07d8122 Update README with map resources link
Added a link for map resources in the README.
2026-01-15 21:28:15 +01:00
Bernhard M
6ec86084c2 Update README to include device pictures reference
Added a note to refer to the 'images' folder for device pictures.
2026-01-15 21:10:53 +01:00
Bernhard M
f743807ea9 Add device pictures section to README
Added a section for device pictures with sample images.
2026-01-15 21:10:31 +01:00
Bernhard M
13208f2671 Add new JPEG images to images directory
Added 25 new JPEG files to the images directory. Removed the old images directory placeholder file.
2026-01-15 21:05:11 +01:00
Bernhard M
4ebccb0867 Add images directory 2026-01-15 20:40:27 +01:00
30 changed files with 258 additions and 3 deletions

29
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@@ -0,0 +1,29 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: bug
assignees: ''
---
**Describe the bug**
A clear and concise description of what the bug is.
**Which device are you using**
LilyGO T-Deck
LilyGO T-Deck Plus
SeeedStudio SenseCap Indicator D1Pro, D1L
**Which Firmware are you using**
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Additional context**
Add any other context about the problem here.

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
.DS_Store

View File

@@ -2,6 +2,152 @@
All notable changes to this project.
## [v0.9.9]
### Changed / Improved
- updated to mescore v1.13.0
- Initialize T-Deck I2S buzzer at boot (keeps it quiet when disabled) to avoid driver install from touch handlers and prevent UI lockups on LilyGo T-Deck.
- Accept login-OK responses from alternate sender identities when the response matches expected formats (fixes repeater login stuck cases).
- Adjusted conservative repeater request/timeout values and improved local CLI reply handling.
- Repeater + RoomServer pending waits: Flood min 30s, Direct min 15s (applies to login and other admin requests).
- Reduce idle CPU usage by yielding in the main loop (adaptive delay when screen is soft-off/no companion app connected) to improve power draw without changing functionality.
- Add separate keyboard backlight timeout setting in Mgmt/UI (T-Deck Plus), independent of screen timeout and autolock.
- Smooth fade when display/keyboard backlight turns off (soft-off / keyboard timeout) instead of snapping to black.
- Persist Map "info bar" (altitude bar) toggle (T key) across reboots.
- Moved "Custom QuickSend" configuration from Mgmt/UI to Mgmt/Messages.
- reduce power use in display off/soft-off state by increasing idle sleep and skipping non-essential touch/gesture processing until wake.
### Fixed
- Prevent UI freeze when toggling "All Sounds" after reboot on LilyGo T-Deck builds by ensuring I2S/buzzer hardware is initialized safely at boot.
- Fix repeater login hanging when the OK response arrives from a different sender identity.
- Harden Mgmt/Global "Reboot" to always restart on ESP32 (adds esp_restart() fallback and avoids sticky UI states).
---
## [v0.9.8]
### Added
- Contacts / Room Server; added room login + Room Console (transcript + send + logout) under Contact Detail.
- UI; added horizontal drag in text input fields to move the cursor (caret).
- Contacts: added small `RSTPath` button in Contact Detail to reset a contact's route/path.
- Power: added `PowerStatus` struct and `MainBoard::getPowerStatus()` helper; UI now reads consolidated power state for battery/charging/usb.
- Power (T-Deck Plus): added configurable ADC multiplier / VBAT divider ratio support (`adc.multiplier`) to allow per-device calibration.
- Mgmt / Contacts; added "Purge w/o favs" (purge all contacts except favourites).
- Mgmt / GPS; show UBX accuracy estimate (hAcc) when available.
- MAP (T-Deck Plus); added keyboard controls: W/A/S/D for panning, O/I for zoom in/out, R to recenter on self, T to toggle GPS/Zoom info window.
- MAP; added zoom level indicator overlay that displays briefly when zoom changes (keyboard or touch).
- MAP; added GPS info window (top-left) showing altitude, speed (km/h), and current zoom level in a compact 3-line display (toggleable with T key on T-Deck Plus).
- UI; added autolock feature - can be configured in Mgmt / UI -> LOCK to automatically lock the UI after a period of inactivity. Unlock by holding the unlock button or touching and holding the screen for 2 seconds.
- Mgmt / UI; added LOCK section with configurable Autolock toggle and Autolock Timer (seconds).
### Changed / Improved
- Contacts; service contacts are no longer treated like normal DM targets:
- Repeaters now route to Repeater Admin.
- Room Servers now route to the Room Console.
- UI; horizontal swipes that switch higher-level frames now require an edge swipe (keeps left/right scrolling available for the focused element).
- UI (T-Deck Plus); trackball left/right no longer switches the bottom menu tabs.
- UI (T-Deck Plus); when editing a text field, trackball left/right moves the text cursor (caret).
- MAP; scroll/pan inputs now operate on the map view itself (instead of page-level scrolling).
- Mgmt / UI Zoom can now be changed with "^" or "v" buttons.
- Mgmt / Contacts; Auto Add Types can now be set with freely combinable toggles (USR/RPT/SRV/SNS/OW) when Auto Add is disabled.
- Mgmt / Contacts; Auto Add Types now shows clearer labels (e.g., "USR (Users)").
- Contacts / Repeater Admin; reorganized Login screen layout to prevent status text overlap and improve readability.
- Contacts / Repeater Admin; added live login status lines (Direct/Flood send mode, wait countdown, result, role).
- GNSS; u-blox M10 nav tuning (portable dynModel + auto fixMode) and 1Hz rate for weak-signal stability.
- Mgmt / UI -> UI Zoom; improved zoom step granularity for finer control with extra buttons for more/less zoom.
- MAP; zoom level now automatically persists when changed (via keyboard or touch), eliminating the need for manual default zoom configuration.
- MAP; removed "Def. Zoom Lvl" setting from Mgmt / UI as zoom now auto-saves and restores on startup.
- MAP; moved zoom level indicator to top-left position (stacks under GPS info window when active).
- MAP; GPS accuracy circle now renders as an unfilled light-blue ring instead of a solid fill for better map visibility.
- UI; autolock is now disabled by default and only engages when enabled in Mgmt / UI -> LOCK.
### Fixed
- Contacts / Room Console; fixed transcript drawing over the "Room Console" title (partial refresh artifacts) and added a bordered transcript viewport.
- MAP (T-Deck Plus); fixed reversed zoom hotkeys: I now zooms in and O zooms out.
- DM editor; fixed being able to send DMs to Repeaters/Room Servers via existing DM threads (now blocked and redirected to the proper flow).
- Mgmt / Log: touch scroll release no longer triggers a tap on the last touched point (prevents click-through when stopping a scroll).
- Mgmt / Log: require a tap gesture before activating list actions to avoid scroll-release click-through.
- Boards (T-Deck Plus): repaired corrupted header and fixed VBAT conversion to use the new configurable multiplier; prevents miscalibrated battery percentage readings.
- Contacts / Repeater Admin: clear session and cached repeater data when leaving admin or switching repeaters (prevents stale values).
- Contacts / Repeater Admin: direct routes now send direct logins/requests; flood is used only when no path is known.
- UI: hide battery percentage while charging; avoid duplicated charging indicator.
- Mgmt / Channels; fixed an issue where adding a new #hashtag channel could show "Channel exists" and could lead to duplicate message display.
- Mgmt / UI; fixed Tiles Folder picker showing empty after reboot until Map was opened once.
- MAP; fixed an issue while moving the map out of touch and after returning, where the map would jump back to the original position.
- Contacts/Repeater Admin; fixed Login button hit-test offset in Contact Detail overlay.
- Contacts/Repeater Admin; fixed repeater password NVS persistence detection (saved state) and empty-password save/load handling.
- MSGS / Message details view; fixed the overscrolling of the top button bar.
---
## [v0.9.7]
### Added
- Sync settings to SDCard and load from SDCard on boot (if present) for easy backup/restore of settings.
- MAP; GPS Accuracy Circle Implementation - when GPS accuracy is available, a light blue circle is drawn around the GPS position indicating the accuracy radius (HDOP-based accuracy estimation (HDOP × 2.0 meters)).
### Changed / Improved
- Contacts / Repeater Admin Menu; Modified the contact selection logic to only reset the repeater admin state when actually switching to a different repeater.
- MAP; improved GPS accuracy circle rendering (smoother edges).
- Contacts / Repeater Admin Menu; improved to be allowed to login with empty password.
- Discovered (Contacts) - Discovered Contacts list is now only sorted by "last heard" (newest on top) to make it easier to find recently discovered nodes for adding them as Contacts.
### Fixed
- Mgmt / UI - MAP; "Tiles Folder", fixed cosmetic issues fixed.
- Mgmt / Telemetry; when opening the Graphs overlay, now you can close it with a "back" button!
- Mgmt / GPS; fixed an issue where GPS could not be enabled/disabled properly.
- Mgmt / GPS; cosmetic issues fixed.
- MAP; Fix map scrolling bug: restrict map dragging to content area only
- I2C initialisation was broken - fixed!
- Indicator/RP2040; optimized the communication between RP2040 coprocessor and ESP32
- Indicator; fixed an issue where the bootsound was not working.
- Add SD persistence for UI preferences; Implement optional SD mirroring of UI prefs to /MCTerm/prefs.txt; NVS remains source of truth, SD provides backup across device erases; Add sync versioning to prevent stale data issues; Support both direct SD (T-Deck) and remote SD (SenseCap via RP2040); Live SD presence detection with automatic sync every 10 seconds; Include prefs: UI timeout, navigation, battery, contacts, NTP, sounds, map settings; Keyboard blink prefs only for T-Deck (conditional compilation)
- Cyrillic letters updated/fixed.
---
## [v0.9.6] prerelease for testers
* Updated MeshCore Base to latest v1.12.0!
### Added
- Mgmt / UI -> Map; Added Map Show Zoom Buttons toggle (On/Off).
- Mgmt / UI -> Map; Added Map Show Navigation Buttons toggle (On/Off).
- Mgmt / UI -> Map; Added Map Default Follow Me toggle (On/Off).
- Mgmt / UI -> Map; Added Map Default Zoom Level setting (1-20).
- long Tap on Contacts Tab button; toggles between normal Contacts view and Discovered Nodes view to be able to add nodes when you do not activate in Mgmt / Channels the Auto Add Contacts option.
- Repeater Admin Menu; Implemented role-based gating (Guest/Admin) across Repeater Admin, Overview now visually disables admin-only buttons (ACL, CLI, Reboot, Passwords) when role isnt Admin, and taps show a short popup instead of entering the screen. Device/Status/Telemetry overlays allow read-only viewing for Guest/RO, but write actions (edits/toggles/off/sync/reboot) are disabled visually and blocked on tap with a “RW/Admin required” popup.
- Indicator; (NEW IMAGE for RP2040 needed) Sound is now Supported & can be configured in Mgmt / UI -> Sound settings and will be processesd on the RP2040 coprocessor.
- Indicator; (NEW IMAGE for RP2040 needed) Added SenseCAP RP2040 SDCARD Support for remote SD access (read/write/list) does not yet offer direct services but will be used in future updates.
- Indicator; (NEW IMAGE for RP2040 needed) Added SenseCAP RP2040 Sensor Support for Temperature, Humidity, CO2, TVOC telemetry values (when RP2040 firmware is flashed with the new coprocessor image).
- MAP; tiles now can be donwloaded while you are connected to WiFi (when enabled in Mgmt / UI -> Map). If there is a SDCard present, it will automatically cache the tiles on the SDCard in the correct folder structure for offline use! (Indicator not yet supported!)
- Mgmt / UI -> Map; added info text about tile caching when WiFi is connected.
- Mgmt / UI -> Map; changed Map Tile folder structure from SD-Card.
- Mgmt / Messages; Addeed Auto Retry / Auto Reset Path / Direct Message Acks / Mark Delivered faster (like you know from the companion APP) but need to be setup separately because not connected to companion!
- MSGs / new button in Message "Reply" to quickly reply to the last DM or Channel message sender.
### Changed / Improved
- MAP; improved hop-count display in Contact detail view (shows "Direct" for 0 hops now and "1 hop", "2 hops", ... for others).
- Mgmt / Advert; neighbor adverts refactored to show more relevant information, and added the possibility to add discovered nodes as Contacts directly from the neighbor adverts list.
- Mgmt / Advert; changed button text "Advert Zero Hop" to "Advert - Direct"
- Mgmt / UI - moved Sound settings to Mgmt / UI for better grouping.
- Mgmt / Global - moved Mgmt / Admin into this menu for better grouping.
- Mgmt; changed some Texts&Buttons for better clarity (toggle, enabled/disabled)
- GUI; finally you can switch between BLE / WiFi or turn both completely off (without reboot!).
- Repeater Admin Menu / Advert; when disable both advert types, a warning popup (yes/no) is shown to inform the user that no adverts will be sent out anymore when accepted.
- MSGS; changed the top statusbar text from "msgs" to "Channels" and from "users" to "DMs" for better clarity.
- Contacts / soting; when you tap the contacts tab to cycle through sort orders, the view will automatically scroll to the top of the newly sorted list, making it much more user-friendly!
- Mgmt / CLI; fixed an issue while switching away from CLI breaks the touch.
- Mgmt / Stats; added the [>] buttons for the Radio section's Noise Floor, Last RSSI, and Last SNR lines in the Management > Stats view to see that this is clickable to open the Radio Stats overlay.
### Fixed
- Mgmt / CLI; fixed an issue after switching away from Mgmt / CLI to not be able to go back to the Mgmt / Overview due to a bug!
- Mgmt / GPS; GPS could not be disabled properly — fixed.
- MAP; fixed an issue where the MAP would not center on own GPS position when opening the MAP page.
### Removed
- Mgmt / UI -> Map; Removed overlay when there are no GPS Contacts with GPS coordinates available.
---
## [v8] — 2026-01-14

View File

@@ -1,9 +1,12 @@
Would be nice if you support me: https://buymeacoffee.com/bmks — thank you very much!!
> Important: Use at your own risk. You, the device owner, are responsible for any damage, data loss, or bricked devices.
# Firmware "MC Term"
Finally there is a name, "MC Term", M(esh)C(ore) Term(inal). We like Retro, you like Retro, we stay retro :-).
# MeshCore / additional GUIs for embedded mesh radios
MeshCore is a lightweight hybrid routing mesh protocol for packet radios... this Repo is mainly about the companion firmware for user-friendly UIs and (actually) support for devices such as the LilyGO T-Deck Plus and Seeed Studio SenseCap Indicator-TFT.
MeshCore is a lightweight hybrid routing mesh protocol for packet radios... this Repo is mainly about the companion firmware for user-friendly UIs and (actually) support for devices such as the LilyGO T-Deck Plus and Seeed Studio SenseCap Indicator-TFT AND you can connect via BLE or WiFi with the typical APPs (WebUI, iOS,...).
## Table of contents
- [Features](#features)
@@ -27,7 +30,7 @@ for small embedded mesh radios. Highlights include:
- Messaging: messenger-style channels and DM threads, send confirmations, unread counts, IRC-style transcript view, full message detail view, timestamps, and quick-send actions.
- Message metadata: display of path/hops, best-effort RSSI and SNR, overheard repeaters list, and route hints.
- Contacts: sortable/filterable contact list (Azimuth, LastHeard, LastMessage), badges for GPS/reachability/online, favorite/tel flags, and detailed contact view with public key.
- Map: slippy-tile map with zoom, pan/drag, auto-centering, jump-to-me, map selection of contacts, and tile fetching/caching behavior configurable per target.
- Map: slippy-tile map with zoom, pan/drag, auto-centering, jump-to-me, map selection of contacts, and tile fetching/caching behavior configurable per target. (look here for maps: https://github.com/mattdrum/map-tile-downloader)
- Management features: edit device name, WiFi SSID/password, BLE PIN, screen timeout, radio parameters (frequency, bandwidth, spreading factor, coding rate, TX power), GPS pins/baud, and other device settings.
- Diagnostics & logs: neighbor scan helper, Rx-raw packet log viewer with parsed metadata, parsed packet detail view, telemetry request/pending state and telemetry history, and ping records for reachability tests.
- Telemetry & sensors: manual telemetry requests, telemetry records (voltage, temperature, humidity, CO2, TVOC), and support helpers for CayenneLPP / LPP payloads.
@@ -47,7 +50,7 @@ This firmware includes companion UIs and support for several devices; notable ex
Flash using the MeshCore web flasher:
1. Open https://flasher.meshcore.co.uk/ and choose "Custom Firmware".
2. For first-time installation, perform a full flash erase (this removes all settings).
2. For first-time installation (use the *-merged version), perform a full flash erase (this removes all settings). *take care*, if you upgrade the version to a newer one, use the non-merged version!
3. Upload the built firmware image and flash to your device.
Notes:
@@ -80,3 +83,10 @@ MeshCore focuses on a compact, reliable mesh stack while adding polished on-devi
## Contributing
Contributions welcome. Please open issues for bug reports, improvements, enhancements, or device support (thats more tricky when i do not own one).
## Device pictures (samples)
* see "images" folder for more!
![pic_tdeckplus](/images/IMG_2694.jpeg)
![pic_sensecapindicator](/images/IMG_2717.jpeg)

BIN
images/IMG_2694.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 612 KiB

BIN
images/IMG_2695.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

BIN
images/IMG_2696.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

BIN
images/IMG_2697.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 528 KiB

BIN
images/IMG_2698.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 516 KiB

BIN
images/IMG_2699.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 592 KiB

BIN
images/IMG_2700.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 514 KiB

BIN
images/IMG_2701.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

BIN
images/IMG_2702.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

BIN
images/IMG_2703.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 514 KiB

BIN
images/IMG_2704.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 530 KiB

BIN
images/IMG_2705.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 522 KiB

BIN
images/IMG_2706.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 501 KiB

BIN
images/IMG_2707.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 533 KiB

BIN
images/IMG_2708.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 528 KiB

BIN
images/IMG_2709.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 534 KiB

BIN
images/IMG_2710.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 510 KiB

BIN
images/IMG_2711.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

BIN
images/IMG_2712.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 567 KiB

BIN
images/IMG_2713.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 567 KiB

BIN
images/IMG_2714.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 603 KiB

BIN
images/IMG_2715.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 450 KiB

BIN
images/IMG_2716.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 415 KiB

BIN
images/IMG_2717.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 580 KiB

BIN
images/IMG_2718.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 494 KiB

69
license.txt Normal file
View File

@@ -0,0 +1,69 @@
MeshCore Firmware Binary Distribution
Copyright (c) 2025 Scott Powell / rippleradios.com
================================================================================
MIT License
================================================================================
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
This part includes improvements/changes done by Bernhard Marker:
================================================================================
Third-Party Software Attributions
================================================================================
This software includes or makes use of the following third-party libraries:
- RadioLib (MIT) - Copyright (c) 2018 Jan Gromeš
- Arduino Crypto Library (MIT) - Copyright (c) 2015 Rhys Weatherley
- RTClib (MIT) - Copyright (c) Adafruit Industries
- CayenneLPP (MIT) - Copyright (c) Electronic Cats
- ArduinoJson (MIT) - Copyright (c) 2014-2024 Benoît Blanchon
- ed25519 (Zlib) - Copyright (c) 2015 Orson Peters
- LovyanGFX (BSD-2-Clause) - Copyright (c) lovyan03
- Adafruit_LittleFS_stm32 (BSD-3-Clause) - Copyright (c) 2017 ARM Limited
- SdFat (MIT) - Copyright (c) Bill Greiman
- Sensirion I2C Libraries (BSD-3-Clause) - Copyright (c) Sensirion
- CRC32 (MIT) - Copyright (c) bakercp
- zlib_turbo (Zlib) - Copyright (c) BitBank Software
- AsyncElegantOTA (MIT) - Copyright (c) 2019 Ayush Sharma
- ESP32-targz (MIT) - Copyright (c) tobozo
ESP32 builds include:
- ESPAsyncWebServer (LGPL-3.0) - Copyright (c) me-no-dev
Source available at: https://github.com/me-no-dev/ESPAsyncWebServer
================================================================================
OpenStreetMap Attribution
================================================================================
This software downloads map tiles from OpenStreetMap at runtime when WiFi is
available. Map data is licensed under the Open Database License (ODbL).
© OpenStreetMap contributors
https://www.openstreetmap.org/copyright
Map tiles are not distributed with this software.
================================================================================
Source Code Availability
================================================================================
This is a binary-only distribution. The MIT License permits binary-only
distribution without requiring source code disclosure.