ripplebiz
c17bd5d6fc
Merge pull request #1122 from fschrempf/xiao-nrf-ui-and-power-optimizations
...
Companion Power Optimizations and UI Support for XIAO NRF52
2025-11-26 22:11:02 +11:00
ripplebiz
f2740150df
Merge pull request #1075 from agessaman/companion-stats
...
Add statistics commands to return device metrics on companions
2025-11-24 12:34:35 +11:00
Frieder Schrempf
048bd268a1
companion: ui: Respect LED_STATE_ON for status LED
...
The current logic only works for active high LEDs. Some boards need
an active low level control and therefore they set LED_STATE_ON to 0.
Take this into account and use the correct LED pattern for both cases.
Signed-off-by: Frieder Schrempf <frieder@fris.de>
2025-11-22 15:05:08 +01:00
Jaroslav Škarvada
07e7e2d44b
companion: Suspend radio when hibernating
...
This should significantly reduce power consumption in hibernation.
Fixes : #1014
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
Signed-off-by: Frieder Schrempf <frieder@fris.de> # generalize for all radios and UIs
2025-11-22 15:05:01 +01:00
agessaman
a3c9a07377
Modify CMD_GET_STATS with sub-types for core, radio, and packet statistics. Consolidated to a single RESP_CODE_STATS with a second byte to identify response structure. Updated documentation and examples to reflect the new command structure and response parsing.
2025-11-17 09:57:36 -08:00
Stephan Rodemeier
16c294ce60
Allow SF smaller than 7 to be saved
2025-11-13 22:25:55 +01:00
Scott Powell
91e9fcea4b
* ver 1.10.0
2025-11-13 20:45:38 +11:00
agessaman
39f83efbfe
Remove unused statistics formatting methods and associated header includes from MyMesh class. Whoops.
2025-11-09 11:39:47 -08:00
agessaman
80d6dd4367
Update statistics handling to use binary frames instead of JSON formatting for consistency with other companion commands. Added documentation of frame structure with code examples.
2025-11-09 11:28:49 -08:00
agessaman
c9aa536ca6
Reverted MyMesh constructor for simplicity.
...
Updated formatStatsReply method to use new member variables for statistics handling.
Removed excess variable creation
2025-11-09 11:28:49 -08:00
agessaman
df4dab8509
Add statistics commands and response handling in MyMesh
...
- Introduced new commands for retrieving statistics: CMD_GET_STATS_CORE, CMD_GET_STATS_RADIO, and CMD_GET_STATS_PACKETS.
- Implemented corresponding response handling methods to format and send statistics data.
- Updated MyMesh constructor to initialize new member variables for managing statistics.
- Included StatsFormatHelper for formatting statistics replies.
2025-11-09 11:28:49 -08:00
Scott Powell
28b90c18cf
Merge branch 'transportcodes' into dev
2025-11-07 14:52:11 +11:00
Scott Powell
2e63499ae5
* companion: protocol ver bumped to 8.
2025-11-06 22:51:17 +11:00
Scott Powell
4a5404d997
* companion: added CMD_SEND_CONTROL_DATA, and PUSH_CODE_CONTROL_DATA
2025-11-06 22:10:20 +11:00
Scott Powell
937865c8fd
* companion: new CMD_SET_FLOOD_SCOPE (54)
2025-11-05 14:56:18 +11:00
Scott Powell
9ebeb477aa
* RegionMap: inverted 'flags' to _deny_ bits
...
* Mesh: new filterRecvFloodPacket() for overriding
* repeater CLI: 'allow' -> 'allowf' or 'denyf'
2025-11-05 14:34:44 +11:00
Scott Powell
d9ff3a4d02
* Mesh: new sendFlood() overload with transport codes.
...
* BaseChatMesh: sendFloodScoped(), for overriding with some outbound 'scope' / TransportKey
* companion: new 'send_scope' variable.
2025-11-04 01:21:56 +11:00
Adam Mealings
c13b4ae481
Analogue button delay based on millis
2025-10-31 13:04:59 +00:00
ripplebiz
ef752926c9
Merge pull request #1036 from oltaco/datastore-refactor
...
Refactor DataStore to use openRead() and openWrite()
2025-10-31 17:10:03 +11:00
ripplebiz
7ad45d113c
Merge pull request #993 from recrof/allow_lower_bw_sf
...
allow saving spreading factor from 5 and bandwidth from 7.8kHz
2025-10-31 16:58:35 +11:00
taco
52a3df4977
revert pubBlobByKey() change
2025-10-31 15:06:29 +11:00
taco
0b8159c6e5
refactor DataStore to use openRead() and openWrite()
...
refactored loadPrefsInt(), loadContacts(), loadChannels(), getBlobByKey() and putBlobByKey() to use openRead() and openWrite()
2025-10-31 13:17:22 +11:00
Scott Powell
3d9378d91e
* Fix for VolatileRTCClock wrapping around to initial synced time every 49 days
2025-10-30 16:45:50 +11:00
recrof
87677fda76
allow spreading factor from 5 and bandwidth from 7.8kHz
2025-10-22 15:15:29 +02:00
Florent
7d62a27836
uitask: bring back buzzer toggle on tracker l1
2025-10-18 13:40:01 +02:00
Scott Powell
cd920693ec
* UITask: new UI_HAS_JOYSTICK
...
* MomentaryButton: new constructor 'multiclick' param
* WIoTrackerL1: now just use joystick, joystick press for KEY_ENTER, no multi-click for snappier UI
2025-10-16 17:33:22 +11:00
ripplebiz
3912bbdf7d
Merge pull request #821 from fdlamotte/ui_gps_page
...
ui_task: initial gps page
2025-10-02 18:54:23 +10:00
Scott Powell
8d8b9a6141
* ver 1.9.1
2025-10-02 12:52:19 +10:00
Florent de Lamotte
18bfc2d81a
DisplayDriver: introduce drawTextRightAlign and drawTextLeftAlign
2025-10-01 18:07:59 +02:00
Scott Powell
b92d9bd972
* ver 1.9.0
2025-09-28 19:24:00 +10:00
Florent
db7635102d
gps_page: enable if gps enabled
2025-09-28 09:43:28 +02:00
liamcottle
418ae08b4d
add FIRMWARE_VER_LEVEL to companion PUSH_CODE_LOGIN_SUCCESS
2025-09-25 15:21:58 +12:00
Scott Powell
a5af1b5bcd
* companion: disabled processing/sending of keep_alive packets (deprecated)
...
* FIRMWARE_VER_LEVEL now moved to end of response payloads
2025-09-25 09:39:11 +10:00
Florent
76aa7cf488
ui_task: initial gps page
2025-09-23 12:08:34 +02:00
Scott Powell
52d5cc6068
* tidy and minor fix for offline queue deletion
2025-09-22 15:01:28 +10:00
ripplebiz
28d673ee15
Merge pull request #796 from 446564/mutable-queue
...
make offline queue channel messages mutable
2025-09-22 14:54:09 +10:00
taco
2922b62888
add bounds check to _countLfsBlock / _getLfsUsedBlockCount
2025-09-20 17:36:52 +10:00
Scott Powell
384b02bec4
* GenericVibration: code style refactor
2025-09-18 13:19:54 +10:00
ripplebiz
b3e9fd76ce
Merge pull request #708 from csrutil/feature/vibration-feedback
...
✨ feat: add vibration feedback system
2025-09-18 13:12:36 +10:00
csrutil
6f8ce425d8
remove the unnecessary blank line
2025-09-17 09:19:18 +08:00
csrutil
043f37a08e
♻️ refactor: unify UI notification methods into single notify() function
...
Consolidates soundBuzzer() and triggerVibration() into a unified notify() method
that handles both audio and haptic feedback based on UIEventType.
2025-09-17 08:56:18 +08:00
csrutil
2da50882c0
✨ feat: add vibration feedback support for UI events
...
- Add genericVibration class with 5-second cooldown and 1-second pulse
- Integrate vibration triggers for new messages and contact discoveries
- Add conditional compilation support with PIN_VIBRATION guard
- Implement abstract interface for vibration in UITask system
2025-09-17 08:56:18 +08:00
Michael Hart
bd6aa983a3
feat: add DisplayDriver methods for UTF-8 filtering and text ellipsis
...
- Add translateUTF8ToBlocks() method to convert UTF-8 characters to displayable blocks
- Add drawTextEllipsized() method for text truncation with ellipsis
- Apply UTF-8 filtering to node names, recent contacts, and message content
- Use ellipsized text rendering for recent contacts to prevent overflow
- Addresses PR feedback by moving text processing to DisplayDriver level
2025-09-16 17:17:15 -07:00
446564
fca16f1b71
make offline queue channel messages mutable
...
older channel messages can be overwritten, keeping other mssagage types
this allows a user to be away for a long time and still get the most recent
channel messages without losing any direct messages for exampe
2025-09-16 15:40:21 -07:00
Scott Powell
c69d78b62e
Merge branch 'dev' into reciprocal-path-retry
2025-09-13 18:48:24 +10:00
Florent de Lamotte
d83cdc501f
ui: use LPPDataHelper and conditionals for sensors page
2025-09-09 16:32:41 +02:00
Florent de Lamotte
2d4b77c998
Merge remote-tracking branch 'upstream/dev' into ui_sensors_page
2025-09-09 15:36:14 +02:00
Scott Powell
74dea260e5
* proposed change for re-trying reciprocal path transmit
2025-09-08 19:22:59 +10:00
taco
bcfc8d3771
improved RescueCLI for dual FS
2025-09-06 14:15:40 +10:00
taco
3d83556829
refactor: use _getContactsChannelsFS() instead of ifdefs
2025-09-06 14:15:40 +10:00