fmtm
fmtm copied to clipboard
Offline portable field mapping deployment
Related to #899
We currently have an install script to simplify deployment.
There are two extra requirements:
- Deployment onto a field device, e.g. a raspberry pi that can be taken into the field.
- Similar to UNVT (offline map server): https://github.com/unvt/portable
- Side note: could we find a synergy and host both on one Pi?!
- One command deployment.
- Without a domain name requirement.
Envisioned workflow (entirely offline)
- Get a raspberry pi and WiFi antennae.
- Broadcast a WiFi network for users to connect to (via IP, or the device could probably have a nicer domain based routing, e.g. simply
field.mapping
in the browser). - Simple FMTM deployment onto device.
- Includes a bundled simple tile server (with low resolution world imagery).
- Includes a bundled ODK Central.
- No need for Minio?
- The ODK Central URL would be set to the the device IP/domain.
- Create a project and QR codes.
- If the device is online in the office, optional download of basemap tiles.
- Take device into field.
- Users connect to WiFi network and then FMTM via IP/domain in browser.
- Users access the project and get the QR code for their task.
- Open QR in ODK Collect and map as normal.
Questions
- How to handle OSM Auth if offline?
- How to best serve map via tile server in parallel?
- Could possible commit basic world tiles to repo, then include in bundled Nginx server.
- Basemaps required Minio / more complex.
Note: in #899 I discussed the idea of using
headscale
for a VPN network that users connect to (to avoid requiring a domain).This proposal is probably a more realistic approach: taking a small offline device into the field to connect to.
One command deployment
- To facilitate the above, we need a streamlined deployment process.
- A domain name is not required, and sane defaults can be provided for most variables.
- The user should be able to run a script and have an FMTM deployment accessible from a URL.