-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add geolocation support #121
Conversation
This adds a geolocation entry to the REST API. The geolocation can be set or cleared by a PUT request, and the current geolocation is used to populate the "core:geolocation" SigMF key if it is available at the start of the recording. Signed-off-by: Daniel Estévez <[email protected]>
This adds a HTTPS server to maia-httpd. By default it listens on port 443. It uses a self-signed certificate that is included in the application binary. The main intended use of this feature is the maia-wasm Geolocation API functionality, which browsers refuse to use over HTTP connections. Signed-off-by: Daniel Estévez <[email protected]>
If the app is using HTTPS, then the websocket should use wss:// instead of ws:// Signed-off-by: Daniel Estévez <[email protected]>
The Pluto SDR firmware image for this pull request is ready. Find it under "Artifacts" in the action run. |
7 similar comments
The Pluto SDR firmware image for this pull request is ready. Find it under "Artifacts" in the action run. |
The Pluto SDR firmware image for this pull request is ready. Find it under "Artifacts" in the action run. |
The Pluto SDR firmware image for this pull request is ready. Find it under "Artifacts" in the action run. |
The Pluto SDR firmware image for this pull request is ready. Find it under "Artifacts" in the action run. |
The Pluto SDR firmware image for this pull request is ready. Find it under "Artifacts" in the action run. |
The Pluto SDR firmware image for this pull request is ready. Find it under "Artifacts" in the action run. |
The Pluto SDR firmware image for this pull request is ready. Find it under "Artifacts" in the action run. |
0815a18
to
404dba5
Compare
The Pluto SDR firmware image for this pull request is ready. Find it under "Artifacts" in the action run. |
The Pluto SDR firmware image for this pull request is ready. Find it under "Artifacts" in the action run. |
This adds support for setting the maia-httpd REST API geolocation and recording metadata geolocation by using the HTML5 geolocation API. Signed-off-by: Daniel Estévez <[email protected]>
The recent addition of HTTPS support to maia-httpd has caused the size of the binary to grow from ~4.9 MB to ~7 MB. This causes the resulting plutosdr-fw image to no longer boot (probably an out-of-memory error when copying the rootfs to ram). This enables stripping of all the symbols, which decreases the binary size to ~6 MB. Signed-off-by: Daniel Estévez <[email protected]>
Signed-off-by: Daniel Estévez <[email protected]>
d2093a1
to
b1bbb02
Compare
The Pluto SDR firmware image for this pull request is ready. Find it under "Artifacts" in the action run. |
b1bbb02
to
9cb3a70
Compare
The Pluto SDR firmware image for this pull request is ready. Find it under "Artifacts" in the action run. |
Instead of embedding a self-signed SSL certficate, provide command line parameters to load certificates from files. A certificate signed with a trusted CA is needed to install maia-wasm as a PWA (Progressive Web App), because current web browsers require PWAs to be accessed by SSL with a trusted certificate (not a self-signed certificate). This opens up a way to install maia-wasm as a PWA, but it requires the user to trust and add a CA certificate manually in their device. A startup script will generate a suitable CA and web server certificates on boot and store them in persistent JFFS flash. The user can also replace these with their own (by doing scp or similar). Signed-off-by: Daniel Estévez <[email protected]>
Signed-off-by: Daniel Estévez <[email protected]>
9cb3a70
to
3adf856
Compare
The Pluto SDR firmware image for this pull request is ready. Find it under "Artifacts" in the action run. |
Add a couple of min-width: 0px; to make the settings dialog look better in a very narrow viewport. Signed-off-by: Daniel Estévez <[email protected]>
Add an "Other" tab with a link to the CA certificate and the maia-wasm version. In the future this tab can also contain versions of other components, but they need to be exposed in the maia-httpd API. Signed-off-by: Daniel Estévez <[email protected]>
The Pluto SDR firmware image for this pull request is ready. Find it under "Artifacts" in the action run. |
This adds a geolocation to the maia-httpd REST API, which is used to set the recording metadata when a recording is done. maia-wasm uses the HTML5 geolocation API to update the geolocation of maia-httpd through the REST API. All of this is opt-in, and the geolocation can easily be inspected and cleared (or updated) at any time before downloading a SigMF recording.
See demo video: https://mastodon.social/@destevez/113545585796441387