signalk-pypilot-newui 3.1.4 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +130 -0
- package/README.md +230 -165
- package/dist/firefox-fix.js +137 -0
- package/dist/index.js +139 -54
- package/dist/session-recorder.js +38 -0
- package/dist/visor-prefs.js +225 -0
- package/package.json +28 -22
- package/public/app.js +1002 -188
- package/public/index.html +147 -8
- package/public/screenshots/01-control-rose.jpg +0 -0
- package/public/screenshots/02-chartplotter-embedded.jpg +0 -0
- package/public/screenshots/03-anchorwatch-in-rose.jpg +0 -0
- package/public/screenshots/04-tide-popup.jpg +0 -0
- package/public/screenshots/05-modes-head-to-wind-downwind.jpg +0 -0
- package/public/screenshots/06-tune-sliders.jpg +0 -0
- package/public/screenshots/07-logbook-trip-detail.jpg +0 -0
- package/public/screenshots/08-tack-history.jpg +0 -0
- package/public/style.css +114 -6
- package/dist/test/alarms-attitude.test.js +0 -110
- package/dist/test/alarms-trim.test.js +0 -177
- package/dist/test/config-backup.test.js +0 -137
- package/dist/test/episodes.test.js +0 -241
- package/dist/test/failsafe-bsp.test.js +0 -56
- package/dist/test/leeway.test.js +0 -91
- package/dist/test/mode-reanchor.test.js +0 -149
- package/dist/test/nav-bearing.test.js +0 -108
- package/dist/test/plugin.test.js +0 -70
- package/dist/test/profile-advisor.test.js +0 -190
- package/dist/test/profile-change-log.test.js +0 -147
- package/dist/test/profile-metadata.test.js +0 -130
- package/dist/test/roll-ff.test.js +0 -105
- package/dist/test/servo-error-log.test.js +0 -162
- package/dist/test/tack-catchup.test.js +0 -90
- package/dist/test/tuning-knobs.test.js +0 -205
- package/dist/test/virtual-tack.test.js +0 -436
- package/public/screenshots/01-control-rose.png +0 -0
- package/public/screenshots/02-chartplotter-embedded.png +0 -0
- package/public/screenshots/03-logbook-trip-detail.png +0 -0
- package/public/screenshots/04-tune-sliders.png +0 -0
- package/public/screenshots/05-race-timer.jpg +0 -0
- package/public/screenshots/06-info.jpg +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,135 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 3.3.0 — 2026-10-19 — Light on the Pi, AIS on the ring, settings shared by every device
|
|
4
|
+
|
|
5
|
+
Rolls up Rev483 → Rev505 on top of 3.2.0. Minor bump: new shared
|
|
6
|
+
visor settings in the backend, Raspberry Pi performance work, AIS rose
|
|
7
|
+
fixes from port and sea QA in Moaña, tide popup polish. No breaking
|
|
8
|
+
changes; the first visor that connects uploads its old per-device
|
|
9
|
+
settings, so nothing is lost.
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
|
|
13
|
+
- **Settings shared by every device.** AIS mode (harbour / at anchor /
|
|
14
|
+
sailing), AIS voice, harbour auto-silencer, gust ghost and the list
|
|
15
|
+
of silenced AIS targets now live in the plugin (`/visor-prefs`), not
|
|
16
|
+
in each browser. Silencing a target on the tablet silences it on the
|
|
17
|
+
phone and the laptop too; the harbour auto-silencer is decided once,
|
|
18
|
+
from the boat's SOG, instead of separately by each screen. (Rev498,
|
|
19
|
+
Rev499)
|
|
20
|
+
- **Light mode on the Raspberry Pi's own screen.** The visor detects
|
|
21
|
+
the Pi's browser and drops animations, blur and glow, and only
|
|
22
|
+
touches the page when a value really changes (291 → ~9 DOM writes
|
|
23
|
+
per second). Pi GPU with the visor open: Chromium 15 % → 3 %.
|
|
24
|
+
(Rev490 → Rev492)
|
|
25
|
+
- **Firefox on the Pi: one-tap fix.** Firefox's GPU renderer overloads
|
|
26
|
+
the Pi's graphics chip (GPU ~90 %, 64 % of video frames dropped). The
|
|
27
|
+
Info tab explains it and an **Apply now** button writes
|
|
28
|
+
`gfx.webrender.software` into that Firefox's profiles; a one-time
|
|
29
|
+
notice points there. Also in the README (Troubleshooting).
|
|
30
|
+
(Rev500 → Rev502)
|
|
31
|
+
- **Interactive tide curve** in the tide popup: hover / drag cursor
|
|
32
|
+
with time, height and trend, big trend arrow, collision-free labels;
|
|
33
|
+
tide button always shown, with an install prompt and App Store link
|
|
34
|
+
when AnchorWatch Pro is missing. (Rev483 → Rev489)
|
|
35
|
+
- **Info tab: companion plugins** with live installed / missing status
|
|
36
|
+
and App Store links. (Rev485)
|
|
37
|
+
|
|
38
|
+
### Fixed — AIS
|
|
39
|
+
|
|
40
|
+
- **Targets sit on the compass ring** at their real bearing, with a
|
|
41
|
+
distance label, instead of being parked on top of our own hull in a
|
|
42
|
+
marina (the log distance scale put every target under 50 m there).
|
|
43
|
+
(Rev494)
|
|
44
|
+
- **Moored boats no longer "move".** Class B boats report 0.3-1.6 kn of
|
|
45
|
+
GPS noise when tied up; a target counts as stopped when its AIS nav
|
|
46
|
+
status says moored / anchored / aground, or when two minutes of its
|
|
47
|
+
positions stay inside 30 m. No course line, no "moving" alarms.
|
|
48
|
+
(Rev503)
|
|
49
|
+
- **"Closing" speed in the infobox** was distance / TCPA (a moored boat
|
|
50
|
+
at 48 m showed 37 kn); now the real range rate. (Rev495)
|
|
51
|
+
- **Autopilot alarm banner always visible.** It was drawn below the
|
|
52
|
+
maximised chart, popups, the regatta HUD and the network banners:
|
|
53
|
+
the alarm beeped and spoke but could not be seen. (Rev497)
|
|
54
|
+
|
|
55
|
+
### Fixed — other
|
|
56
|
+
|
|
57
|
+
- **Recorded sessions / session tags / received advice dialogs could
|
|
58
|
+
trap you.** The only way out was the Close button at the end of the
|
|
59
|
+
content; with many sessions (224 on the test boat) it was pushed
|
|
60
|
+
off-screen. Now an X is always visible, the list scrolls inside the
|
|
61
|
+
dialog with title and Close fixed, and tapping outside or Escape
|
|
62
|
+
closes it. (Rev504)
|
|
63
|
+
- **Recorded sessions capped at the newest 50** (one is recorded per
|
|
64
|
+
engage; 224 had piled up). On top of the existing 200 MB budget.
|
|
65
|
+
(Rev505)
|
|
66
|
+
|
|
67
|
+
### Docs / package
|
|
68
|
+
|
|
69
|
+
- README rewritten against the code: license (AGPL-3.0-or-later), the
|
|
70
|
+
free-form SSH console described honestly, 14 alarm rules, polar
|
|
71
|
+
plugins named, Head-to-wind **and** Downwind pseudo-modes, every
|
|
72
|
+
integration (AnchorWatch Pro, chartplotter, AIS, polars) in the intro,
|
|
73
|
+
no invented plugins or path counts.
|
|
74
|
+
- New App Store / README screenshots (8): rose with AIS, embedded chart,
|
|
75
|
+
AnchorWatch Pro inside the rose, tide popup, head to wind / downwind
|
|
76
|
+
modes, tune, logbook trip, tack history. JPEG under 500 KB each; test
|
|
77
|
+
files no longer shipped (package 3.4 MB → 1.4 MB).
|
|
78
|
+
|
|
79
|
+
## 3.2.0 — 2026-10-15 — AIS rose rebuilt on real positions, tide popup, chart kept warm
|
|
80
|
+
|
|
81
|
+
Rolls up Rev470 → Rev482 on top of 3.1.4. Minor bump: new UI (tide
|
|
82
|
+
button + popup, "Chart in the background" card, anchor-watch visor
|
|
83
|
+
embedded in the rose) plus a set of AIS rose fixes found in port QA in
|
|
84
|
+
Moaña. No breaking changes.
|
|
85
|
+
|
|
86
|
+
### Fixed — AIS targets on the rose (root cause)
|
|
87
|
+
|
|
88
|
+
- **The target position/SOG/COG cache never filled.** The REST calls
|
|
89
|
+
used `encodeURIComponent` on the vessel URN
|
|
90
|
+
(`urn%3Amrn%3Aimo%3Ammsi%3A…`) and Signal K answers 404 to that; the
|
|
91
|
+
raw URN answers 200. With an empty cache the hull fell back to
|
|
92
|
+
`cpaPositions.target` — the target's FUTURE position at CPA — so a
|
|
93
|
+
boat coming from 7 o'clock was drawn at 11 o'clock and "0 m" away.
|
|
94
|
+
The fallback is removed: no current position → no hull on the rose
|
|
95
|
+
(the infobox still shows the alarm). Cache refresh 30 s → 5 s.
|
|
96
|
+
(Rev474)
|
|
97
|
+
- **Hull and projected track were drawn 180° off.** The sprite has its
|
|
98
|
+
bow at +x, so a direction needs `rotate(angle − 90)`; Rev457 used
|
|
99
|
+
`+ 90`. (Rev470)
|
|
100
|
+
- **Moored boats.** A stopped target's COG is GPS noise: the hull is
|
|
101
|
+
oriented by `headingTrue` when available, by COG only when moving
|
|
102
|
+
(≥ 0.5 kn), otherwise it points at us; the dashed track is drawn only
|
|
103
|
+
for moving targets and always along COG. The "stationary" filter
|
|
104
|
+
(now 0.5 kn) is re-evaluated when the REST cache lands, not only on
|
|
105
|
+
the alarm delta. (Rev470, Rev471)
|
|
106
|
+
- **Targets drawn on top of our own hull.** Radial position is now a
|
|
107
|
+
log scale (50 m → 2 NM) over the free ring between our hull outline
|
|
108
|
+
and the compass ring, with a distance label ("40 m", "0.4 NM") under
|
|
109
|
+
each target. (Rev472)
|
|
110
|
+
- **Target name in the infobox** comes from the Signal K vessel `name`
|
|
111
|
+
first, then from the alarm text; "MMSI 123456789" is no longer shown
|
|
112
|
+
as a name. (Rev481)
|
|
113
|
+
- **AIS card:** the Harbour / At anchor / Sailing selector showed raw
|
|
114
|
+
i18n keys; all texts rewritten in plain language (EN/ES). (Rev473)
|
|
115
|
+
- **Unstyled flash on reload:** critical inline CSS in `<head>` and
|
|
116
|
+
`style.css?v=RevNNN` cache-busting from `deploy.ps1`. (Rev476)
|
|
117
|
+
|
|
118
|
+
### Added
|
|
119
|
+
|
|
120
|
+
- **Tide button** above the bottom-right corner tile of the rose (shown
|
|
121
|
+
only when `signalk-mareas-ihm` is installed). Opens a popup with the
|
|
122
|
+
station, current height, rising/falling, coefficient, next HW/LW and
|
|
123
|
+
a −6 h → +12 h tide curve. "Open full Tides" opens the
|
|
124
|
+
signalk-mareas-ihm anchor-watch visor inside the rose, same chrome as
|
|
125
|
+
Freeboard (maximize / close). Data from `/signalk-mareas-ihm/api/extremes`
|
|
126
|
+
and `environment.tide.*`, fetched only when the popup opens.
|
|
127
|
+
(Rev478 → Rev480, Rev482)
|
|
128
|
+
- **Freeboard-SK kept loaded in the background** so a double-tap on the
|
|
129
|
+
rose opens it instantly with AIS names already in place. Own card
|
|
130
|
+
"Chart in the background" with a per-device switch and a "?" that
|
|
131
|
+
explains when to turn it off (lag / battery). (Rev475 → Rev477)
|
|
132
|
+
|
|
3
133
|
## 3.1.4 — 2026-10-14 — iOS "Add to Home Screen" PWA basics (issue #5)
|
|
4
134
|
|
|
5
135
|
Rev469. Patch bump: no code changes, just the HTML shell. Thanks to
|