Skip to content

[Bug]: MQTT Client Proxy TLS handshake fails on custom broker with valid Let's Encrypt cert (T1000e) #5394

@WB3IHY

Description

@WB3IHY

Contact Details

wb3ihy@gmail.com

Checklist

  • I am able to reproduce the bug with the latest version.

  • I have updated to the latest Alpha firmware, and am able to reproduce the bug. Many issues are fixed quickly in alpha before the general beta release.

  • I made sure that there are no existing OPEN or CLOSED issues which I could contribute my information to.

  • I have taken the time to fill in all the required details. I understand that the bug report will be dismissed otherwise.

  • This issue contains only one bug.

  • I have read and understood the Contribution Guidelines.

  • I agree to follow this project's Code of Conduct

  • I actually read this list, and should be taken seriously.

Affected app version

Version: 2.7.14 (29320672)

Affected Android version

Android 12

Affected phone model

Samsung Galaxy S10e

Affected node model

SenseCAP T1000e

Affected node firmware version

2.7.23.b246bcd

Steps to reproduce the bug

  1. Configure a custom MQTT broker (Mosquitto) with a valid Let's Encrypt RSA
    certificate (R13 intermediate) on port 8883
  2. On a SenseCAP T1000e (no WiFi capability), configure MQTT with:
    • Client Proxy: enabled
    • TLS: enabled
    • Custom broker address (port 8883)
    • Valid credentials
  3. Connect Android app to T1000e via Bluetooth
  4. Attempt MQTT connection via the app

Actual behavior

TLS handshake fails immediately. The Android app reports "TLS handshake failed."
The broker sees the connection attempt and immediately drops it cleanly with no
TLS error logged on the server side.

Expected behavior

TLS handshake should complete successfully and the MQTT connection should be
established, consistent with the behavior seen when proxy is disabled and the
device handles TLS directly over its own WiFi connection.

Screenshots/Screen recordings

No response

Relevant log output

# Mosquitto broker log (port 8883):
New connection from [ip]:port on port 8883.
Client [ip] disconnected: Success.

# Android app:
TLS handshake failed

# Successful control test (mosquitto_sub from Linux):
mosquitto_sub -h mqtt.example.com -p 8883 --capath /etc/ssl/certs \
  -u user -P pass -t "test/#" -v
# -> connects cleanly, no errors

Additional information

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions