Skip to content

[BUG] [PSK-MQTT] Error: certificate has expired #1139

Description

@nick-adair

Describe the Bug

After starting OHC from a terminal window, I'm seeing several lines like this. Eventually it gives up and quits trying.

[PSK-MQTT] Connecting to mqtt.pskreporter.info as ohc_svr_fe8bc7f8...
[PSK-MQTT] Error: certificate has expired

To Reproduce

Steps to reproduce the behavior:

  1. cd to git clone directory
  2. git status (check if version is current)
  3. npm ci
  4. npm start

Expected Behavior

I would not expect to receive certificate expired errors

Screenshots

The application seems to be working fine.

Environment

Platform: MacOS Sequoia 15.7.8 (Intel)
Browser: Brave Brave 1.93.132 (Official Build) (x86_64)
Chromium: 151.0.7922.76
OpenHamClock Version: v26.5.0-239-gd4a50eaa
Node Version: v24.19.0
Running As: node/browser

Console Errors

➜  openhamclock git:(main) ✗ npm ci
npm warn deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm warn deprecated rimraf@2.6.3: Rimraf versions prior to v4 are no longer supported
npm warn deprecated whatwg-encoding@3.1.1: Use @exodus/bytes instead for a more spec-conformant and faster implementation
npm warn deprecated glob@7.2.3: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
npm warn deprecated glob@7.2.3: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
npm warn deprecated text-encoding@0.6.4: no longer maintained
npm warn deprecated boolean@3.2.0: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
npm warn deprecated glob@10.5.0: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me

> openhamclock@26.5.0 prepare
> husky || true


added 738 packages, and audited 739 packages in 31s

145 packages are looking for funding
  run `npm fund` for details

14 vulnerabilities (1 low, 1 moderate, 12 high)

To address all issues, run:
  npm audit fix

Run `npm audit` for details.


➜  openhamclock git:(main) ✗ npm start

> openhamclock@26.5.0 prestart
> npm run build


> openhamclock@26.5.0 prebuild
> node scripts/fetch-wasm.js

✓ fetch-wasm: existing files installed at 'public/wasm'

> openhamclock@26.5.0 build
> npx vite build

vite v6.4.3 building for production...
✓ 352 modules transformed.
Generated an empty chunk: "mqtt".
[plugin vite:reporter]
(!) /Users/nickadair/Code/openhamclock/src/utils/config.js is dynamically imported by /Users/nickadair/Code/openhamclock/src/store/layoutStore.js but also statically imported by /Users/nickadair/Code/openhamclock/src/components/AzimuthalMap.jsx, /Users/nickadair/Code/openhamclock/src/components/PropagationPanel.jsx, /Users/nickadair/Code/openhamclock/src/components/WorldMap.jsx, /Users/nickadair/Code/openhamclock/src/hooks/useSpaceWeather.js, /Users/nickadair/Code/openhamclock/src/utils/index.js, dynamic import will not move module into another chunk.

dist/assets/worker-DBtxNS7o.js         7.27 kB
dist/index.html                        8.25 kB │ gzip:   2.65 kB
dist/assets/index-EtI6-9Da.css        39.03 kB │ gzip:   7.52 kB
dist/assets/mqtt-l0sNRNKZ.js           0.00 kB │ gzip:   0.02 kB
dist/assets/satellite-CwWWbXyf.js     21.90 kB │ gzip:  10.85 kB
dist/assets/vendor-MEG3rvtw.js       141.73 kB │ gzip:  45.48 kB
dist/assets/index-BiwoYlML.js      2,039.70 kB │ gzip: 558.72 kB

(!) Some chunks are larger than 500 kB after minification. Consider:
- Using dynamic import() to code-split the application
- Use build.rollupOptions.output.manualChunks to improve chunking: https://rollupjs.org/configuration-options/#output-manualchunks
- Adjust chunk size limit for this warning via build.chunkSizeWarningLimit.
✓ built in 6.99s

> openhamclock@26.5.0 start
> node server.js

[Config] Loaded configuration from .env file
[Config] Station: N5LVP @ EL29EN
[Config] Location: 29.5625, -95.6250
[Config] Units: imperial, Time: 12h
[Propagation] Standalone mode - using built-in calculations
[Stats] ✗ /data/stats.json: ENOENT
[Stats] ✓ Using: /Users/nickadair/Code/openhamclock/data/stats.json
[Stats] Loaded from /Users/nickadair/Code/openhamclock/data/stats.json
[Stats]   📊 All-time: 6 unique visitors, 32088 requests
[Stats]   📅 History: 1 days tracked
[Stats]   🚀 Deployment #10 (first: 2026-08-04T22:20:00.077Z)
[Stats] Initial save complete - persistence confirmed
[Server] Serving React app from dist/
[RBN] Creating persistent connection to telnet.reversebeacon.net:7000...
[Winlink] WINLINK_API_KEY not set — /api/winlink/gateways will return 503
[WSJT-X] UDP listener on 0.0.0.0:2237
[WSJT-X] Joined multicast group 224.0.0.1

╔═══════════════════════════════════════════════════════╗
║                                                       ║
║   ██████╗ ██████╗ ███████╗███╗   ██╗                  ║
║  ██╔═══██╗██╔══██╗██╔════╝████╗  ██║                  ║
║  ██║   ██║██████╔╝█████╗  ██╔██╗ ██║                  ║
║  ██║   ██║██╔═══╝ ██╔══╝  ██║╚██╗██║                  ║
║  ╚██████╔╝██║     ███████╗██║ ╚████║                  ║
║   ╚═════╝ ╚═╝     ╚══════╝╚═╝  ╚═══╝                  ║
║                                                       ║
║  ██╗  ██╗ █████╗ ███╗   ███╗ ██████╗██╗     ██╗  ██╗  ║
║  ██║  ██║██╔══██╗████╗ ████║██╔════╝██║     ██║ ██╔╝  ║
║  ███████║███████║██╔████╔██║██║     ██║     █████╔╝   ║
║  ██╔══██║██╔══██║██║╚██╔╝██║██║     ██║     ██╔═██╗   ║
║  ██║  ██║██║  ██║██║ ╚═╝ ██║╚██████╗███████╗██║  ██╗  ║
║  ╚═╝  ╚═╝╚═╝  ╚═╝╚═╝     ╚═╝ ╚═════╝╚══════╝╚═╝  ╚═╝  ║
║                                                       ║
[RBN] Persistent connection established
[RBN] Authenticating as N5LVP
[RBN] Authenticated, now streaming spots...
[CTY] Loaded 346 entities, 7272 prefixes, 22834 exact calls
  📡 CTY database: 346 entities, 7272 prefixes
[PSK-MQTT] Connecting to mqtt.pskreporter.info as ohc_svr_8fa3bfec...
[PSK-MQTT] Error: certificate has expired
[PSK-MQTT] Disconnected from mqtt.pskreporter.info
[PSK-MQTT] Reconnecting in 6.7s (attempt 1)...
[PSK-MQTT] Connecting to mqtt.pskreporter.info as ohc_svr_d821b484...
[PSK-MQTT] Error: certificate has expired
[PSK-MQTT] Connecting to mqtt.pskreporter.info as ohc_svr_775ccd81...
[PSK-MQTT] Error: certificate has expired
[PSK-MQTT] Connecting to mqtt.pskreporter.info as ohc_svr_8d96a254...
[PSK-MQTT] Error: certificate has expired

Additional Context

Call: N5LVP


73!

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    Status
    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions