mirror of
https://github.com/dabeani/meshcore.git
synced 2026-03-28 17:42:43 +01:00
Compare commits
12 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fe2ebb0de7 | ||
|
|
f7a6be099c | ||
|
|
0bd7b0d620 | ||
|
|
749d1f0fab | ||
|
|
d0a82ce5d5 | ||
|
|
29e614d554 | ||
|
|
d1f73a34da | ||
|
|
215a96066c | ||
|
|
d7eb6d87ea | ||
|
|
d90e198bf2 | ||
|
|
29af3a6f17 | ||
|
|
0a8a18abfd |
146
CHANGELOG.md
146
CHANGELOG.md
@@ -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 isn’t 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
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
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 AND you can connect via BLE or WiFi with the typical APPs (WebUI, iOS,...).
|
||||
|
||||
69
license.txt
Normal file
69
license.txt
Normal 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.
|
||||
Reference in New Issue
Block a user