-
-
Notifications
You must be signed in to change notification settings - Fork 64
Description
Category
Other
Hardware
T-Deck
Is this bug report about any UI component firmware like InkHUD or Meshtatic UI (MUI)?
- Meshtastic UI aka MUI colorTFT
- InkHUD ePaper
- OLED slide UI on any display
Firmware Version
2.7.2 / 2.7.3
Description
QR codes for channels generated on the T-Deck device runing the Meshtastic User Interface (MUI) produce invalid links that incorrectly encode the channel's Pre-Shared Key (PSK). Instead of properly serializing the full channel settings (including name, PSK, and other configurations) into a base64url-encoded protobuf as required by Meshtastic's format, the T-Deck appears to only include a modified version of the PSK string directly in the link.
Specifically:
- The special character
/in the PSK is replaced with_. - The special character
+in the PSK is replaced with-. - The trailing
=(padding) in the PSK is omitted.
This results in an invalid QR code that cannot be scanned by the Meshtastic app on another node, as the link does not conform to the expected protobuf-encoded structure.
This issue affects:
- QR codes for channels created directly on the T-Deck via the MUI.
- QR codes for existing channels created or imported via the app in BLE Programming mode.
Example:
- Channel Name: TEST
- Channel PSK (as base64 string): ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890+/12344=
Generated link on T-Deck (invalid):
https://meshtastic.org/e/#ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890-_12344
Correct link (generated by the app, which properly encodes the full channel protobuf):
https://meshtastic.org/e/#CigSIAAQgxBRhyCSizDTj0EUk1FVl2Gddt-Oeu_PdPv9dt-OGgRURVNUEg0IATgDQAdIAVAbyAYB
Steps to Reproduce:
- On a T-Deck device running MUI firmware (tested on versions 2.7.2 and 2.7.3):
- Create a new channel directly on the device via the MUI or import/create a channel using the app in BLE Programming mode. Use a PSK that includes special characters like
/,+, and=(e.g., the example above). - Navigate to the channel settings in the MUI and generate/display the QR code for that channel.
- Create a new channel directly on the device via the MUI or import/create a channel using the app in BLE Programming mode. Use a PSK that includes special characters like
- On a different Meshtastic node/device, open the Meshtastic app (e.g., Android/iOS app).
- Attempt to scan the QR code displayed on the T-Deck using the app's QR code scanner.
Expected Behavior:
The QR code should contain a properly encoded link (base64url of the serialized ChannelSet protobuf, including the channel name, binary PSK, and other settings) and be successfully scanned by the app, allowing the channel to be added or configured on the other node.
Actual Behavior:
The QR code contains an invalid link that only includes a modified PSK string (with / → _, + → -, and = omitted), omitting the full protobuf structure. This causes the app to fail to recognize or scan the QR code, preventing the channel from being imported/added to the other node.