MQTT WebSocket real-time updates not working on Android 7.0 tablet with Belchertown skin

37 views
Skip to first unread message

Jean-Marie Schneider

unread,
Jan 8, 2026, 5:46:01 AM (2 days ago) Jan 8
to weewx-user

Hello,

I'm running WeeWX with the Belchertown skin and MQTT WebSocket for real-time updates. Everything works perfectly on Windows PC and recent tablets, but fails on an older Android 7.0 tablet (Samsung Galaxy Tab S2 with Chrome 119).

Setup:

  • WeeWX publishing to Mosquitto 2.0.11
  • Mosquitto listener: 127.0.0.1:9001 (WebSocket protocol)
  • Nginx reverse proxy on port 8883 for WSS
  • Let's Encrypt SSL certificate

WeeWX configuration (weewx.conf):

ini
[StdReport] [[Belchertown]] mqtt_websockets_enabled = 1 mqtt_websockets_host = meteo-poelley50.fr mqtt_websockets_port = 8883 mqtt_websockets_ssl = 1 mqtt_websockets_topic = "weather/loop"

What works:

  • Windows PC: green indicator, real-time updates work perfectly
  •  Modern tablets: same, works fine
  •  WebSocket test with HiveMQ online client: successful connection
  •  Page loads correctly on all devices (no certificate errors after installing ISRG Root X1 certificate)

What doesn't work:

  •  Android 7.0 tablet: red indicator, no real-time updates
  •  No connection attempts visible in Mosquitto logs from this tablet
  •  Generated JS files correctly contain port 8883 and SSL enabled

Investigation done:

  • Verified generated belchertown.js uses correct settings: new Paho.Client("meteo-poelley50.fr", 8883, mqttclient)
  • Cleared browser cache multiple times
  • Tried incognito mode
  • Installed Let's Encrypt root certificate manually
  • Mosquitto logs show connections from PC but zero attempts from Android 7.0 tablet

Question: Is there a known compatibility issue between the Paho MQTT JavaScript client (used by Belchertown) and older Android versions? Are there any workarounds or alternative configurations to support Android 7.0?

The tablet is dedicated to displaying weather station data permanently, so upgrading Android is not an option.

Any suggestions would be greatly appreciated! And avoid this tablet replacement

    Greg Troxel

    unread,
    Jan 8, 2026, 8:11:07 AM (2 days ago) Jan 8
    to Jean-Marie Schneider, weewx-user
    Jean-Marie Schneider <mody...@gmail.com> writes:

    > *What works:*
    >
    > - Windows PC: green indicator, real-time updates work perfectly
    > - Modern tablets: same, works fine
    > - WebSocket test with HiveMQ online client: successful connection
    > - Page loads correctly on all devices (no certificate errors after
    > installing ISRG Root X1 certificate)
    >
    > *What doesn't work:*
    >
    > - Android 7.0 tablet: red indicator, no real-time updates
    > - No connection attempts visible in Mosquitto logs from this tablet
    > - Generated JS files correctly contain port 8883 and SSL enabled

    First some context:

    Android 7.0 was released August 22, 2016 and EOL in August, 2019.

    I wonder if you can load more modern LineageOS on the tablet.

    Notably missing in your report is which browser you are using. I'll
    assume you have only tried the builtin browser.

    Also missing is if the 7.0 tablet displays the rest of the page, and if
    you are using the same certificate for your main wx page and the mqtt
    websocket.

    As for debugging:

    It seems likely that the browser on the tablet is not doing some
    combination of

    processing javascript
    websocket connections

    to debug I would recommend:

    find some websocket test page that isn't about weewx/belchertown and
    try that. If it doesn't work, you can continue investigating not
    about weewx or give up.

    turning on developer/debug mode and reading the browser logs

    but really I would recommend:

    upgrade via lineage, and if not possible, recycle this tablet and find
    a different one.

    install the most recent version of firefox that can run on this
    tablet, and try that.
    Reply all
    Reply to author
    Forward
    0 new messages