mirror of
https://github.com/richonguzman/LoRa_APRS_iGate.git
synced 2026-01-21 16:20:15 +01:00
2291 lines
182 KiB
HTML
2291 lines
182 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en" data-bs-theme="auto">
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<title>LoRa iGate & Digi software − Ricardo Guzman CA2RXU</title>
|
|
<link rel="stylesheet" href="/bootstrap.css" />
|
|
<link rel="stylesheet" href="/style.css" />
|
|
<link rel="icon" href="/favicon.png" type="image/x-icon">
|
|
</head>
|
|
<body class="bg-body-tertiary">
|
|
<input type="file" accept="text/json,.json" style="display: none" />
|
|
<form autocomplete="off" action="/configuration.json" method="POST">
|
|
<nav
|
|
class="navbar bg-body-secondary shadow-sm border-bottom sticky-top navbar-expand-lg"
|
|
>
|
|
<div class="container">
|
|
<a class="navbar-brand" href=""
|
|
>CA2RXU's LoRa iGate</a
|
|
>
|
|
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarColor01" aria-controls="navbarColor01" aria-expanded="false" aria-label="Toggle navigation">
|
|
<span class="navbar-toggler-icon"></span>
|
|
</button>
|
|
<div class="collapse navbar-collapse" id="navbarColor01">
|
|
<ul class="navbar-nav me-auto">
|
|
<li class="nav-item">
|
|
<a class="nav-link" href="/">
|
|
Configuration
|
|
</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link" href="/update">
|
|
Update <small>OTA</small>
|
|
</a>
|
|
</li>
|
|
<li class="nav-item dropdown">
|
|
<a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" href="#" role="button" aria-haspopup="true" aria-expanded="false">Backup</a>
|
|
<div class="dropdown-menu">
|
|
<a class="dropdown-item" href="#" id="backup">Download</a>
|
|
<a class="dropdown-item" href="#" id="restore">Restore</a>
|
|
</div>
|
|
</li>
|
|
<li class="nav-item dropdown">
|
|
<a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" href="#" role="button" aria-haspopup="true" aria-expanded="false">Device</a>
|
|
<div class="dropdown-menu">
|
|
<a class="dropdown-item" href="#" id="reboot">Reboot</a>
|
|
</div>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link" href="/received-packets">
|
|
Received packets
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<div class="d-flex">
|
|
<button class="btn btn-success my-2 my-sm-0" type="submit">Save</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</nav>
|
|
|
|
<div class="container d-none" id="received-packets">
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-12">
|
|
<h3>Last 10 received packets list</h3>
|
|
<table class="table mt-4">
|
|
<thead>
|
|
<tr>
|
|
<th scope="col">Time</th>
|
|
<th scope="col">Frame</th>
|
|
<th scope="col">RSSI</th>
|
|
<th scope="col">SNR</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
|
|
</tbody>
|
|
</table>
|
|
<span>List refresh automatically every 15 seconds.</span><br>
|
|
<small>(Local Time is NTP-Time adjusted with your GMT Offset)</small>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
</div>
|
|
|
|
<div class="container" id="configuration">
|
|
<main>
|
|
<div class="col-10 my-5 mx-auto">
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-person-circle"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M11 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0"
|
|
/>
|
|
<path
|
|
fill-rule="evenodd"
|
|
d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8m8-7a7 7 0 0 0-5.468 11.37C3.242 11.226 4.805 10 8 10s4.757 1.225 5.468 2.37A7 7 0 0 0 8 1"
|
|
/>
|
|
</svg>
|
|
Station
|
|
</h5>
|
|
<small
|
|
>Add your Ham callsign and SSID.
|
|
<br>
|
|
<br>
|
|
You can leave a comment describing your station.
|
|
<br>
|
|
<br>
|
|
In the bottom there is a field for personal note that can only be seen in WEB GUI.
|
|
</small>
|
|
</div>
|
|
<div class="col-lg-9 col-sm-12">
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<label for="callsign" class="form-label"
|
|
>Callsign - SSID</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="callsign"
|
|
id="callsign"
|
|
class="form-control"
|
|
placeholder="N0CALL-10"
|
|
required=""
|
|
oninput="this.value = this.value.toUpperCase();"
|
|
/>
|
|
</div>
|
|
<div class="col-12 mt-3">
|
|
<label
|
|
for="beacon.comment"
|
|
class="form-label"
|
|
>Beacon Comment</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="beacon.comment"
|
|
id="beacon.comment"
|
|
class="form-control"
|
|
placeholder="LoRa APRS"
|
|
required=""
|
|
/>
|
|
</div>
|
|
<div class="col-12 mt-3">
|
|
<label
|
|
for="beacon.path"
|
|
class="form-label"
|
|
>Beacon Path</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="beacon.path"
|
|
id="beacon.path"
|
|
class="form-control"
|
|
placeholder="We prefer WIDE1-1"
|
|
/>
|
|
</div>
|
|
<div class="col-8 mt-3">
|
|
<input
|
|
type="hidden"
|
|
name="beacon.overlay"
|
|
id="beacon.overlay"
|
|
class="form-control"
|
|
size="1"
|
|
required=""
|
|
/>
|
|
<input
|
|
type="hidden"
|
|
name="beacon.symbol"
|
|
id="beacon.symbol"
|
|
class="form-control"
|
|
size="1"
|
|
required=""
|
|
/>
|
|
<label
|
|
for="action.symbol"
|
|
class="form-label"
|
|
>Symbol</label
|
|
>
|
|
<select
|
|
class="form-select form-select"
|
|
name="action.symbol"
|
|
id="action.symbol"
|
|
>
|
|
<option value="L#">
|
|
Green star with L
|
|
</option>
|
|
<option value="L_">
|
|
Blue circle with L
|
|
</option>
|
|
<option value="L&">
|
|
Black diamond with L
|
|
</option>
|
|
<option value="La">
|
|
Red diamond with L
|
|
</option>
|
|
</select>
|
|
</div>
|
|
<div
|
|
class="col-4 mt-3"
|
|
style="text-align: center"
|
|
>
|
|
<img
|
|
src=""
|
|
width="60"
|
|
height="60"
|
|
class="me-2"
|
|
/>
|
|
</div>
|
|
<div class="col-6 mt-3">
|
|
<label
|
|
for="beacon.latitude"
|
|
class="form-label"
|
|
>Latitude</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="beacon.latitude"
|
|
id="beacon.latitude"
|
|
placeholder="-33.440"
|
|
class="form-control"
|
|
/>
|
|
</div>
|
|
<div class="col-6 mt-3">
|
|
<label
|
|
for="beacon.longitude"
|
|
class="form-label"
|
|
>Longitude</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="beacon.longitude"
|
|
id="beacon.longitude"
|
|
placeholder="-70.613"
|
|
class="form-control"
|
|
/>
|
|
</div>
|
|
<div class="col-12 mt-3">
|
|
<label
|
|
for="personalNote"
|
|
class="form-label"
|
|
>Personal Note</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="personalNote"
|
|
id="personalNote"
|
|
class="form-control"
|
|
placeholder="A couple of words"
|
|
/>
|
|
</div>
|
|
<div class="col-12 mt-3">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="beacon.statusActive"
|
|
id="beacon.statusActive"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="beacon.statusActive"
|
|
class="form-label"
|
|
>Send Status at each Boot</label
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="col-12">
|
|
<label
|
|
for="beacon.statusPacket"
|
|
class="form-label"
|
|
>Status</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="beacon.statusPacket"
|
|
id="beacon.statusPacket"
|
|
class="form-control"
|
|
placeholder="Custom Status"
|
|
value=""
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-router-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M5.525 3.025a3.5 3.5 0 0 1 4.95 0 .5.5 0 1 0 .707-.707 4.5 4.5 0 0 0-6.364 0 .5.5 0 0 0 .707.707"
|
|
/>
|
|
<path
|
|
d="M6.94 4.44a1.5 1.5 0 0 1 2.12 0 .5.5 0 0 0 .708-.708 2.5 2.5 0 0 0-3.536 0 .5.5 0 0 0 .707.707Z"
|
|
/>
|
|
<path
|
|
d="M2.974 2.342a.5.5 0 1 0-.948.316L3.806 8H1.5A1.5 1.5 0 0 0 0 9.5v2A1.5 1.5 0 0 0 1.5 13H2a.5.5 0 0 0 .5.5h2A.5.5 0 0 0 5 13h6a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5h.5a1.5 1.5 0 0 0 1.5-1.5v-2A1.5 1.5 0 0 0 14.5 8h-2.306l1.78-5.342a.5.5 0 1 0-.948-.316L11.14 8H4.86zM2.5 11a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m4.5-.5a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0m2.5.5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m1.5-.5a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0m2 0a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0"
|
|
/>
|
|
<path
|
|
d="M8.5 5.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0"
|
|
/>
|
|
</svg>
|
|
WiFi Access
|
|
</h5>
|
|
<small
|
|
>Add all Wi-Fi Networks intended to be used.</small
|
|
>
|
|
</div>
|
|
<div class="col-lg-9 col-sm-12">
|
|
<input
|
|
type="hidden"
|
|
name="wifi.APs"
|
|
id="wifi.APs"
|
|
/>
|
|
|
|
<div class="list-networks"></div>
|
|
|
|
<div class="row new">
|
|
<div class="d-grid gap-2">
|
|
<button
|
|
type="button"
|
|
class="btn btn-outline-primary"
|
|
data-toggle="collapse"
|
|
data-target="#add-ap"
|
|
aria-expanded="false"
|
|
aria-controls="add-ap"
|
|
>
|
|
Add network
|
|
</button>
|
|
</div>
|
|
</div>
|
|
<div class="col-6 mt-3">
|
|
<label
|
|
for="startupDelay"
|
|
class="form-label"
|
|
>Startup Delay<small>(To Allow Router/Modem to start WiFiAP before connection)</small></label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="number"
|
|
name="startupDelay"
|
|
id="startupDelay"
|
|
placeholder="0"
|
|
class="form-control"
|
|
step="1"
|
|
min="0"
|
|
max="5"
|
|
/>
|
|
<span class="input-group-text"
|
|
>minutes</span
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-database-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M3.904 1.777C4.978 1.289 6.427 1 8 1s3.022.289 4.096.777C13.125 2.245 14 2.993 14 4s-.875 1.755-1.904 2.223C11.022 6.711 9.573 7 8 7s-3.022-.289-4.096-.777C2.875 5.755 2 5.007 2 4s.875-1.755 1.904-2.223"
|
|
/>
|
|
<path
|
|
d="M2 6.161V7c0 1.007.875 1.755 1.904 2.223C4.978 9.71 6.427 10 8 10s3.022-.289 4.096-.777C13.125 8.755 14 8.007 14 7v-.839c-.457.432-1.004.751-1.49.972C11.278 7.693 9.682 8 8 8s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972"
|
|
/>
|
|
<path
|
|
d="M2 9.161V10c0 1.007.875 1.755 1.904 2.223C4.978 12.711 6.427 13 8 13s3.022-.289 4.096-.777C13.125 11.755 14 11.007 14 10v-.839c-.457.432-1.004.751-1.49.972-1.232.56-2.828.867-4.51.867s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972"
|
|
/>
|
|
<path
|
|
d="M2 12.161V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16s3.022-.289 4.096-.777C13.125 14.755 14 14.007 14 13v-.839c-.457.432-1.004.751-1.49.972-1.232.56-2.828.867-4.51.867s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972"
|
|
/>
|
|
</svg>
|
|
APRS-IS
|
|
</h5>
|
|
<small
|
|
>Enter you APRS-IS server and
|
|
credentials.</small
|
|
>
|
|
</div>
|
|
<div class="col-lg-9 col-sm-12">
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="aprs_is.active"
|
|
id="aprs_is.active"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="aprs_is.active"
|
|
class="form-label"
|
|
>Enable APRS-IS
|
|
connection</label
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="aprs_is.messagesToRF"
|
|
id="aprs_is.messagesToRF"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="aprs_is.messagesToRF"
|
|
class="form-label"
|
|
>Gate APRS-IS Messages to
|
|
RF</label
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="aprs_is.objectsToRF"
|
|
id="aprs_is.objectsToRF"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="aprs_is.objectsToRF"
|
|
class="form-label"
|
|
>Gate APRS-IS Objects to
|
|
RF</label
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="col-8">
|
|
<label
|
|
for="aprs_is.server"
|
|
class="form-label"
|
|
>Server</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="aprs_is.server"
|
|
id="aprs_is.server"
|
|
placeholder="rotate.aprs2.net"
|
|
class="form-control"
|
|
value="rotate.aprs2.net"
|
|
/>
|
|
</div>
|
|
<div class="col-4">
|
|
<label
|
|
for="aprs_is.port"
|
|
class="form-label"
|
|
>Port</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="aprs_is.port"
|
|
id="aprs_is.port"
|
|
placeholder="14580"
|
|
class="form-control"
|
|
value="14580"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div class="row mt-3">
|
|
<div class="col-8">
|
|
<label
|
|
for="aprs_is.passcode"
|
|
class="form-label"
|
|
>Passcode</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="aprs_is.passcode"
|
|
id="aprs_is.passcode"
|
|
class="form-control"
|
|
value="XYZWV"
|
|
/>
|
|
</div>
|
|
<div class="col-4">
|
|
<label
|
|
for="aprs_is.filter"
|
|
class="form-label"
|
|
>Filter</label
|
|
>
|
|
<input
|
|
type="text"
|
|
class="form-control"
|
|
name="aprs_is.filter"
|
|
id="aprs_is.filter"
|
|
value="m/10"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-broadcast-pin"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M3.05 3.05a7 7 0 0 0 0 9.9.5.5 0 0 1-.707.707 8 8 0 0 1 0-11.314.5.5 0 0 1 .707.707m2.122 2.122a4 4 0 0 0 0 5.656.5.5 0 1 1-.708.708 5 5 0 0 1 0-7.072.5.5 0 0 1 .708.708m5.656-.708a.5.5 0 0 1 .708 0 5 5 0 0 1 0 7.072.5.5 0 1 1-.708-.708 4 4 0 0 0 0-5.656.5.5 0 0 1 0-.708m2.122-2.12a.5.5 0 0 1 .707 0 8 8 0 0 1 0 11.313.5.5 0 0 1-.707-.707 7 7 0 0 0 0-9.9.5.5 0 0 1 0-.707zM6 8a2 2 0 1 1 2.5 1.937V15.5a.5.5 0 0 1-1 0V9.937A2 2 0 0 1 6 8"
|
|
/>
|
|
</svg>
|
|
Beaconing
|
|
</h5>
|
|
<small>Set APRS beacon attributes.</small>
|
|
</div>
|
|
<div class="col-lg-9 col-sm-12">
|
|
<div class="row">
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="beacon.sendViaAPRSIS"
|
|
id="beacon.sendViaAPRSIS"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="beacon.sendViaAPRSIS"
|
|
class="form-label"
|
|
>Send beacon via APRS-IS
|
|
</label>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="beacon.sendViaRF"
|
|
id="beacon.sendViaRF"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="beacon.sendViaRF"
|
|
class="form-label"
|
|
>Send beacon via RF
|
|
</label>
|
|
</div>
|
|
</div>
|
|
<div class="col-6 d-grid gap-2">
|
|
<button class="btn btn-primary" id="send-beacon">Send beacon now</button>
|
|
</div>
|
|
</div>
|
|
<div class="row mt-4">
|
|
<div class="col-6">
|
|
<label
|
|
for="beacon.interval"
|
|
class="form-label"
|
|
>Beacon Interval
|
|
</label>
|
|
<div class="input-group">
|
|
<input
|
|
type="number"
|
|
name="beacon.interval"
|
|
id="beacon.interval"
|
|
placeholder="15"
|
|
class="form-control"
|
|
required=""
|
|
step="1"
|
|
min="15"
|
|
/>
|
|
<span class="input-group-text"
|
|
>minutes
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-12 mt-3">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="beacon.gpsActive"
|
|
id="beacon.gpsActive"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="beacon.gpsActive"
|
|
class="form-label"
|
|
>Send Real-GPS Beacon <small>(Only for Boards with GPS Modules)</small>
|
|
</label>
|
|
</div>
|
|
</div>
|
|
<div class="col-12">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="beacon.gpsAmbiguity"
|
|
id="beacon.gpsAmbiguity"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="beacon.gpsAmbiguity"
|
|
class="form-label"
|
|
>Send Real-GPS Beacon with Ambiguity <small>(~ 1 Km of Random Error)</small>
|
|
</label>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-broadcast-pin"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M3.05 3.05a7 7 0 0 0 0 9.9.5.5 0 0 1-.707.707 8 8 0 0 1 0-11.314.5.5 0 0 1 .707.707m2.122 2.122a4 4 0 0 0 0 5.656.5.5 0 1 1-.708.708 5 5 0 0 1 0-7.072.5.5 0 0 1 .708.708m5.656-.708a.5.5 0 0 1 .708 0 5 5 0 0 1 0 7.072.5.5 0 1 1-.708-.708 4 4 0 0 0 0-5.656.5.5 0 0 1 0-.708m2.122-2.12a.5.5 0 0 1 .707 0 8 8 0 0 1 0 11.313.5.5 0 0 1-.707-.707 7 7 0 0 0 0-9.9.5.5 0 0 1 0-.707zM6 8a2 2 0 1 1 2.5 1.937V15.5a.5.5 0 0 1-1 0V9.937A2 2 0 0 1 6 8"
|
|
/>
|
|
</svg>
|
|
Black List
|
|
</h5>
|
|
<small>Add Callsigns with space between them to Blacklist them (* wild card allowed)</small>
|
|
</div>
|
|
<div class="col-9">
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<label
|
|
for="blacklist"
|
|
class="form-label"
|
|
>Blacklist</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="blacklist"
|
|
id="blacklist"
|
|
class="form-control"
|
|
placeholder="Station Callsign"
|
|
oninput="this.value = this.value.toUpperCase();"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-broadcast-pin"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M3.05 3.05a7 7 0 0 0 0 9.9.5.5 0 0 1-.707.707 8 8 0 0 1 0-11.314.5.5 0 0 1 .707.707m2.122 2.122a4 4 0 0 0 0 5.656.5.5 0 1 1-.708.708 5 5 0 0 1 0-7.072.5.5 0 0 1 .708.708m5.656-.708a.5.5 0 0 1 .708 0 5 5 0 0 1 0 7.072.5.5 0 1 1-.708-.708 4 4 0 0 0 0-5.656.5.5 0 0 1 0-.708m2.122-2.12a.5.5 0 0 1 .707 0 8 8 0 0 1 0 11.313.5.5 0 0 1-.707-.707 7 7 0 0 0 0-9.9.5.5 0 0 1 0-.707zM6 8a2 2 0 1 1 2.5 1.937V15.5a.5.5 0 0 1-1 0V9.937A2 2 0 0 1 6 8"
|
|
/>
|
|
</svg>
|
|
Digipeating
|
|
</h5>
|
|
<small>Define the Digipeater mode</small>
|
|
</div>
|
|
<div class="col-9">
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<label
|
|
for="digi.mode"
|
|
class="form-label"
|
|
>Repeater Mode</label
|
|
>
|
|
<select
|
|
class="form-select form-select"
|
|
name="digi.mode"
|
|
id="digi.mode"
|
|
>
|
|
<option value="0">
|
|
OFF
|
|
</option>
|
|
<option value="2">
|
|
WIDE1 (fill-in) Digi
|
|
</option>
|
|
<option value="3">
|
|
WIDE2 (+WIDE1) Digi
|
|
</option>
|
|
</select>
|
|
</div>
|
|
<div class="col-12 mt-3">
|
|
<label
|
|
for="digi.ecoMode"
|
|
class="form-label"
|
|
>Eco Mode
|
|
<small
|
|
>(Requires Digipeating enabled and APRS-IS connection disabled).</small
|
|
></label
|
|
>
|
|
<select
|
|
class="form-select form-select"
|
|
name="digi.ecoMode"
|
|
id="digi.ecoMode"
|
|
>
|
|
<option value="0">
|
|
OFF (Normal Mode - WiFiAP and Serial Output enabled)
|
|
</option>
|
|
<option value="1">
|
|
Ultra Eco Mode (Sleep till Packet Rx (WiFiAP/WebUI & Display disabled))
|
|
</option>
|
|
<option value="2">
|
|
OFF (Normal Mode - WiFiAP disabled but Serial Output still enabled)
|
|
</option>
|
|
</select>
|
|
</div>
|
|
<div class="col-12 mt-3">
|
|
<label
|
|
for="digi.beaconOnRxFreq"
|
|
class="form-label"
|
|
>Digipeater Beacon Frequency
|
|
<small
|
|
>(If Rx Freq different from Tx Freq).</small
|
|
></label
|
|
>
|
|
<select
|
|
class="form-select form-select"
|
|
name="digi.beaconOnRxFreq"
|
|
id="digi.beaconOnRxFreq"
|
|
>
|
|
<option value="false">
|
|
Beacon on Tx Freq
|
|
</option>
|
|
<option value="true">
|
|
Beacon on Rx Freq
|
|
</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-broadcast"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M3.05 3.05a7 7 0 0 0 0 9.9.5.5 0 0 1-.707.707 8 8 0 0 1 0-11.314.5.5 0 0 1 .707.707m2.122 2.122a4 4 0 0 0 0 5.656.5.5 0 1 1-.708.708 5 5 0 0 1 0-7.072.5.5 0 0 1 .708.708m5.656-.708a.5.5 0 0 1 .708 0 5 5 0 0 1 0 7.072.5.5 0 1 1-.708-.708 4 4 0 0 0 0-5.656.5.5 0 0 1 0-.708m2.122-2.12a.5.5 0 0 1 .707 0 8 8 0 0 1 0 11.313.5.5 0 0 1-.707-.707 7 7 0 0 0 0-9.9.5.5 0 0 1 0-.707zM10 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0"
|
|
/>
|
|
</svg>
|
|
LoRa
|
|
</h5>
|
|
<small
|
|
>Config LoRa APRS Xmitting settings.</small
|
|
>
|
|
</div>
|
|
<div class="col-lg-9 col-sm-12">
|
|
<div class="row">
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="lora.rxActive"
|
|
id="lora.rxActive"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="lora.rxActive"
|
|
class="form-label"
|
|
>Enable LoRa RX</label
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="lora.txActive"
|
|
id="lora.txActive"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="lora.txActive"
|
|
class="form-label"
|
|
>Enable LoRa TX</label
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="col-6 mt-1">
|
|
<label
|
|
for="lora.rxFreq"
|
|
class="form-label">
|
|
Rx Frequency
|
|
</label>
|
|
<div class="input-group">
|
|
<input
|
|
type="text"
|
|
name="lora.rxFreq"
|
|
id="lora.rxFreq"
|
|
placeholder="433775000"
|
|
class="form-control"
|
|
/>
|
|
<span class="input-group-text"
|
|
>Hz
|
|
</span>
|
|
</div>
|
|
</div>
|
|
<div class="col-6 mt-1">
|
|
<label
|
|
for="lora.txFreq"
|
|
class="form-label"
|
|
>Tx Frequency
|
|
</label>
|
|
<div class="input-group">
|
|
<input
|
|
type="text"
|
|
name="lora.txFreq"
|
|
id="lora.txFreq"
|
|
placeholder="433775000"
|
|
class="form-control"
|
|
required=""
|
|
/>
|
|
<input
|
|
type="hidden"
|
|
name="lora.iGateFreq"
|
|
id="lora.iGateFreq"
|
|
placeholder="433775000"
|
|
class="form-control"
|
|
required=""
|
|
/>
|
|
<span class="input-group-text">
|
|
Hz
|
|
</span>
|
|
</div>
|
|
</div>
|
|
<div class="col-6 mt-3">
|
|
<label
|
|
for="lora.rxSpreadingFactor"
|
|
class="form-label"
|
|
>Rx Spreading Factor
|
|
</label>
|
|
<select
|
|
class="form-select form-select"
|
|
name="lora.rxSpreadingFactor"
|
|
id="lora.rxSpreadingFactor"
|
|
required=""
|
|
>
|
|
<option value="7">SF7 - Lowest battery usage</option>
|
|
<option value="8">SF8</option>
|
|
<option value="9">SF9</option>
|
|
<option value="10">SF10</option>
|
|
<option value="11">SF11</option>
|
|
<option value="12" selected>SF12 - Highest sensitivity</option>
|
|
</select>
|
|
</div>
|
|
<div class="col-6 mt-3">
|
|
<label
|
|
for="lora.txSpreadingFactor"
|
|
class="form-label"
|
|
>Tx Spreading Factor
|
|
</label>
|
|
<select
|
|
class="form-select form-select"
|
|
name="lora.txSpreadingFactor"
|
|
id="lora.txSpreadingFactor"
|
|
required=""
|
|
>
|
|
<option value="7">SF7 - Lowest battery usage</option>
|
|
<option value="8">SF8</option>
|
|
<option value="9">SF9</option>
|
|
<option value="10">SF10</option>
|
|
<option value="11">SF11</option>
|
|
<option value="12" selected>SF12 - Highest sensitivity</option>
|
|
</select>
|
|
</div>
|
|
<div class="col-6 mt-3">
|
|
<label
|
|
for="lora.rxCodingRate4"
|
|
class="form-label">
|
|
Rx Coding Rate
|
|
</label>
|
|
<select
|
|
class="form-select form-select"
|
|
name="lora.rxCodingRate4"
|
|
id="lora.rxCodingRate4"
|
|
required=""
|
|
>
|
|
<option value="5" selected>5</option>
|
|
<option value="6">6</option>
|
|
<option value="7">7</option>
|
|
<option value="8">8</option>
|
|
</select>
|
|
</div>
|
|
<div class="col-6 mt-3">
|
|
<label
|
|
for="lora.txCodingRate4"
|
|
class="form-label">
|
|
Tx Coding Rate
|
|
</label>
|
|
<select
|
|
class="form-select form-select"
|
|
name="lora.txCodingRate4"
|
|
id="lora.txCodingRate4"
|
|
required=""
|
|
>
|
|
<option value="5" selected>5</option>
|
|
<option value="6">6</option>
|
|
<option value="7">7</option>
|
|
<option value="8">8</option>
|
|
</select>
|
|
</div>
|
|
<div class="col-6 mt-3">
|
|
<label
|
|
for="lora.rxSignalBandwidth"
|
|
class="form-label"
|
|
>Rx Signal Bandwidth
|
|
</label>
|
|
<div class="input-group">
|
|
<select
|
|
class="form-select form-select"
|
|
name="lora.rxSignalBandwidth"
|
|
id="lora.rxSignalBandwidth"
|
|
required=""
|
|
>
|
|
<option value="62500">62.5 kHz</option>
|
|
<option value="125000" selected>125 kHz</option>
|
|
<option value="250000">250 kHz</option>
|
|
<option value="500000">500 kHz</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="col-6 mt-3">
|
|
<label
|
|
for="lora.txSignalBandwidth"
|
|
class="form-label"
|
|
>Tx Signal Bandwidth
|
|
</label>
|
|
<div class="input-group">
|
|
<select
|
|
class="form-select form-select"
|
|
name="lora.txSignalBandwidth"
|
|
id="lora.txSignalBandwidth"
|
|
required=""
|
|
>
|
|
<option value="62500">62.5 kHz</option>
|
|
<option value="125000" selected>125 kHz</option>
|
|
<option value="250000">250 kHz</option>
|
|
<option value="500000">500 kHz</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="col-6 mt-3">
|
|
<label
|
|
for="lora.power"
|
|
class="form-label">
|
|
Power
|
|
</label>
|
|
<div class="input-group">
|
|
<input
|
|
type="number"
|
|
name="lora.power"
|
|
id="lora.power"
|
|
placeholder="20"
|
|
min="0"
|
|
max="20"
|
|
step="1"
|
|
class="form-control"
|
|
required=""
|
|
/>
|
|
<span class="input-group-text"
|
|
>dBm</span
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-tv-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M2.5 13.5A.5.5 0 0 1 3 13h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5M2 2h12s2 0 2 2v6s0 2-2 2H2s-2 0-2-2V4s0-2 2-2"
|
|
/>
|
|
</svg>
|
|
Display
|
|
</h5>
|
|
<small>OLED screen configuration.</small>
|
|
</div>
|
|
<div class="col-lg-9 col-sm-12">
|
|
<div class="row">
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="display.alwaysOn"
|
|
id="display.alwaysOn"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="display.alwaysOn"
|
|
class="form-label"
|
|
>Always On</label
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<div
|
|
class="form-check form-switch mt-1"
|
|
>
|
|
<input
|
|
type="checkbox"
|
|
name="display.turn180"
|
|
id="display.turn180"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="display.turn180"
|
|
class="form-label"
|
|
>Turn 180º</label
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mt-1">
|
|
<div class="col-6">
|
|
<label
|
|
for="display.timeout"
|
|
class="form-label"
|
|
>Display Timeout</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="text"
|
|
name="display.timeout"
|
|
id="display.timeout"
|
|
value="4"
|
|
step="1"
|
|
min="2"
|
|
class="form-control"
|
|
/>
|
|
<span class="input-group-text"
|
|
>seconds</span
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<label
|
|
for="other.rememberStationTime"
|
|
class="form-label"
|
|
>Remember Station Time</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="number"
|
|
name="other.rememberStationTime"
|
|
id="other.rememberStationTime"
|
|
placeholder="30"
|
|
class="form-control"
|
|
required=""
|
|
step="1"
|
|
min="1"
|
|
/>
|
|
<span class="input-group-text"
|
|
>minutes</span
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-heart-pulse-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M1.475 9C2.702 10.84 4.779 12.871 8 15c3.221-2.129 5.298-4.16 6.525-6H12a.5.5 0 0 1-.464-.314l-1.457-3.642-1.598 5.593a.5.5 0 0 1-.945.049L5.889 6.568l-1.473 2.21A.5.5 0 0 1 4 9z"
|
|
/>
|
|
<path
|
|
d="M.88 8C-2.427 1.68 4.41-2 7.823 1.143q.09.083.176.171a3 3 0 0 1 .176-.17C11.59-2 18.426 1.68 15.12 8h-2.783l-1.874-4.686a.5.5 0 0 0-.945.049L7.921 8.956 6.464 5.314a.5.5 0 0 0-.88-.091L3.732 8z"
|
|
/>
|
|
</svg>
|
|
Battery
|
|
</h5>
|
|
<small>
|
|
Battery Monitor & Health
|
|
<br>
|
|
<br>
|
|
Max Voltage on input pin is 3.3V.
|
|
<br>
|
|
<br>
|
|
Calculate voltage divider accordingly.
|
|
</small>
|
|
</div>
|
|
<div class="col-9">
|
|
<div class="row">
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="battery.sendInternalVoltage"
|
|
id="battery.sendInternalVoltage"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="battery.sendInternalVoltage"
|
|
class="form-label"
|
|
>Send Internal Voltage</label
|
|
>
|
|
</div>
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="battery.sendVoltageAsTelemetry"
|
|
id="battery.sendVoltageAsTelemetry"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="battery.sendVoltageAsTelemetry"
|
|
class="form-label"
|
|
style="font-style: italic;"
|
|
>(Send Voltage As Telemetry)</label
|
|
>
|
|
</div>
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="battery.monitorInternalVoltage"
|
|
id="battery.monitorInternalVoltage"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="battery.monitorInternalVoltage"
|
|
class="form-label"
|
|
>Monitor Internal Voltage Health</label
|
|
>
|
|
</div>
|
|
<div class="col">
|
|
<label for="battery.internalSleepVoltage" class="form-label"
|
|
>Internal Sleep Voltage</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="number"
|
|
name="battery.internalSleepVoltage"
|
|
id="battery.internalSleepVoltage"
|
|
placeholder="3.0"
|
|
class="form-control"
|
|
step="0.1"
|
|
min="2.9"
|
|
max="3.7"
|
|
/>
|
|
<span class="input-group-text"
|
|
>volts</span
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="battery.sendExternalVoltage"
|
|
id="battery.sendExternalVoltage"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="battery.sendExternalVoltage"
|
|
class="form-label"
|
|
>Send External Voltage</label
|
|
>
|
|
</div>
|
|
<div class="form-check form-switch mt-5">
|
|
<input
|
|
type="checkbox"
|
|
name="battery.monitorExternalVoltage"
|
|
id="battery.monitorExternalVoltage"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="battery.monitorExternalVoltage"
|
|
class="form-label"
|
|
>Monitor External Voltage Health</label
|
|
>
|
|
</div>
|
|
<div class="col">
|
|
<label for="battery.externalSleepVoltage" class="form-label"
|
|
>External Sleep Voltage</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="number"
|
|
name="battery.externalSleepVoltage"
|
|
id="battery.externalSleepVoltage"
|
|
placeholder="3.0"
|
|
class="form-control"
|
|
step="0.1"
|
|
min="3.0"
|
|
max="24.0"
|
|
/>
|
|
<span class="input-group-text"
|
|
>volts</span
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="form-floating col-7 mt-3">
|
|
<input
|
|
type="text"
|
|
name="battery.externalVoltagePin"
|
|
id="battery.externalVoltagePin"
|
|
value="34"
|
|
class="form-control"
|
|
/>
|
|
<label
|
|
for="battery.externalVoltagePin"
|
|
class="form-label"
|
|
>External Voltage Pin</label
|
|
>
|
|
</div>
|
|
<div class="col">
|
|
<label for="battery.voltageDividerR1" class="form-label">External Voltage divider R1</label>
|
|
<div class="input-group">
|
|
<input
|
|
type="number"
|
|
name="battery.voltageDividerR1"
|
|
id="battery.voltageDividerR1"
|
|
placeholder="100.0"
|
|
class="form-control"
|
|
step="0.1"
|
|
min="1"
|
|
max="1000"
|
|
/>
|
|
<span class="input-group-text">kOhm</span>
|
|
</div>
|
|
</div>
|
|
<div class="col">
|
|
<label for="battery.voltageDividerR2" class="form-label">External Voltage divider R2</label>
|
|
<div class="input-group">
|
|
<input
|
|
type="number"
|
|
name="battery.voltageDividerR2"
|
|
id="battery.voltageDividerR2"
|
|
placeholder="27.0"
|
|
class="form-control"
|
|
step="0.1"
|
|
min="1"
|
|
max="1000"
|
|
/>
|
|
<span class="input-group-text">kOhm</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-broadcast-pin"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M3.05 3.05a7 7 0 0 0 0 9.9.5.5 0 0 1-.707.707 8 8 0 0 1 0-11.314.5.5 0 0 1 .707.707m2.122 2.122a4 4 0 0 0 0 5.656.5.5 0 1 1-.708.708 5 5 0 0 1 0-7.072.5.5 0 0 1 .708.708m5.656-.708a.5.5 0 0 1 .708 0 5 5 0 0 1 0 7.072.5.5 0 1 1-.708-.708 4 4 0 0 0 0-5.656.5.5 0 0 1 0-.708m2.122-2.12a.5.5 0 0 1 .707 0 8 8 0 0 1 0 11.313.5.5 0 0 1-.707-.707 7 7 0 0 0 0-9.9.5.5 0 0 1 0-.707zM6 8a2 2 0 1 1 2.5 1.937V15.5a.5.5 0 0 1-1 0V9.937A2 2 0 0 1 6 8"
|
|
/>
|
|
</svg>
|
|
WX Telemetry
|
|
</h5>
|
|
<small>Define Wx telemetry</small>
|
|
</div>
|
|
<div class="col-9">
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="wxsensor.active"
|
|
id="wxsensor.active"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="wxsensor.active"
|
|
class="form-label"
|
|
>Activate Wx Telemetry
|
|
<small
|
|
>(Requires a BME/BMP280, BME680 or Si7021 sensor).</small
|
|
></label
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mt-2">
|
|
<div class="col-6">
|
|
<label for="wxsensor.heightCorrection" class="form-label"
|
|
>Height Correction (Above Sea-Level)</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="number"
|
|
name="wxsensor.heightCorrection"
|
|
id="wxsensor.heightCorrection"
|
|
placeholder="0"
|
|
class="form-control"
|
|
step="1"
|
|
min="0"
|
|
/>
|
|
<span class="input-group-text"
|
|
>meters</span
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<label for="wxsensor.temperatureCorrection" class="form-label"
|
|
>Temperature Correction</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="number"
|
|
name="wxsensor.temperatureCorrection"
|
|
id="wxsensor.temperatureCorrection"
|
|
placeholder="0.0"
|
|
class="form-control"
|
|
step="0.1"
|
|
min="-5"
|
|
max="5"
|
|
/>
|
|
<span class="input-group-text"
|
|
>C°</span
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-file-earmark-text-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M4.5 9a.5.5 0 0 1 0-1h7a.5.5 0 0 1 0 1zM4 10.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m.5 2.5a.5.5 0 0 1 0-1h4a.5.5 0 0 1 0 1z"
|
|
/>
|
|
</svg>
|
|
Syslog
|
|
</h5>
|
|
<small
|
|
>Broadcast the system log over the
|
|
network.</small
|
|
>
|
|
</div>
|
|
<div class="col-lg-9 col-sm-12">
|
|
<div class="row">
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="syslog.active"
|
|
id="syslog.active"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="syslog.active"
|
|
class="form-label"
|
|
>Enable syslog</label
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="syslog.logBeaconOverTCPIP"
|
|
id="syslog.logBeaconOverTCPIP"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="syslog.logBeaconOverTCPIP"
|
|
class="form-label"
|
|
>Log Beacon over TCP/IP</label
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mt-3">
|
|
<div class="col-6">
|
|
<label
|
|
for="syslog.server"
|
|
class="form-label"
|
|
>Server</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="syslog.server"
|
|
id="syslog.server"
|
|
placeholder="lora.link9.net"
|
|
class="form-control"
|
|
/>
|
|
</div>
|
|
<div class="col-6">
|
|
<label
|
|
for="syslog.port"
|
|
class="form-label"
|
|
>Port</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="syslog.port"
|
|
id="syslog.port"
|
|
placeholder="1514"
|
|
class="form-control"
|
|
/>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-database-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M3.904 1.777C4.978 1.289 6.427 1 8 1s3.022.289 4.096.777C13.125 2.245 14 2.993 14 4s-.875 1.755-1.904 2.223C11.022 6.711 9.573 7 8 7s-3.022-.289-4.096-.777C2.875 5.755 2 5.007 2 4s.875-1.755 1.904-2.223"
|
|
/>
|
|
<path
|
|
d="M2 6.161V7c0 1.007.875 1.755 1.904 2.223C4.978 9.71 6.427 10 8 10s3.022-.289 4.096-.777C13.125 8.755 14 8.007 14 7v-.839c-.457.432-1.004.751-1.49.972C11.278 7.693 9.682 8 8 8s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972"
|
|
/>
|
|
<path
|
|
d="M2 9.161V10c0 1.007.875 1.755 1.904 2.223C4.978 12.711 6.427 13 8 13s3.022-.289 4.096-.777C13.125 11.755 14 11.007 14 10v-.839c-.457.432-1.004.751-1.49.972-1.232.56-2.828.867-4.51.867s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972"
|
|
/>
|
|
<path
|
|
d="M2 12.161V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16s3.022-.289 4.096-.777C13.125 14.755 14 14.007 14 13v-.839c-.457.432-1.004.751-1.49.972-1.232.56-2.828.867-4.51.867s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972"
|
|
/>
|
|
</svg>
|
|
TNC
|
|
</h5>
|
|
<small
|
|
>TNC and KISS configuration</small
|
|
>
|
|
</div>
|
|
<div class="col-lg-9 col-sm-12">
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<div class="form-check form-switch">
|
|
<div class="form-text">
|
|
Server will be available at port <strong>8001</strong>
|
|
</div>
|
|
<input
|
|
type="checkbox"
|
|
name="tnc.enableServer"
|
|
id="tnc.enableServer"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="tnc.enableServer"
|
|
class="form-label"
|
|
>Enable TNC server</label
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="col-12">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="tnc.enableSerial"
|
|
id="tnc.enableSerial"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="tnc.enableSerial"
|
|
class="form-label"
|
|
>Enable Serial KISS</label
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="col-12">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="tnc.acceptOwn"
|
|
id="tnc.acceptOwn"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="tnc.acceptOwn"
|
|
class="form-label"
|
|
>Accept own frames via KISS</label
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-database-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M3.904 1.777C4.978 1.289 6.427 1 8 1s3.022.289 4.096.777C13.125 2.245 14 2.993 14 4s-.875 1.755-1.904 2.223C11.022 6.711 9.573 7 8 7s-3.022-.289-4.096-.777C2.875 5.755 2 5.007 2 4s.875-1.755 1.904-2.223"
|
|
/>
|
|
<path
|
|
d="M2 6.161V7c0 1.007.875 1.755 1.904 2.223C4.978 9.71 6.427 10 8 10s3.022-.289 4.096-.777C13.125 8.755 14 8.007 14 7v-.839c-.457.432-1.004.751-1.49.972C11.278 7.693 9.682 8 8 8s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972"
|
|
/>
|
|
<path
|
|
d="M2 9.161V10c0 1.007.875 1.755 1.904 2.223C4.978 12.711 6.427 13 8 13s3.022-.289 4.096-.777C13.125 11.755 14 11.007 14 10v-.839c-.457.432-1.004.751-1.49.972-1.232.56-2.828.867-4.51.867s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972"
|
|
/>
|
|
<path
|
|
d="M2 12.161V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16s3.022-.289 4.096-.777C13.125 14.755 14 14.007 14 13v-.839c-.457.432-1.004.751-1.49.972-1.232.56-2.828.867-4.51.867s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972"
|
|
/>
|
|
</svg>
|
|
MQTT
|
|
</h5>
|
|
<small>Set your MQTT server</small>
|
|
</div>
|
|
<div class="col-lg-9 col-sm-12">
|
|
<div class="row">
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="mqtt.active"
|
|
id="mqtt.active"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="mqtt.active"
|
|
class="form-label"
|
|
>Enable</label
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="mqtt.beaconOverMqtt"
|
|
id="mqtt.beaconOverMqtt"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="mqtt.beaconOverMqtt"
|
|
class="form-label"
|
|
>Send (also) iGate Beacon</label
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mt-3">
|
|
<div class="col-6">
|
|
<label
|
|
for="mqtt.server"
|
|
class="form-label"
|
|
>Server</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="text"
|
|
name="mqtt.server"
|
|
id="mqtt.server"
|
|
class="form-control"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<label
|
|
for="mqtt.topic"
|
|
class="form-label"
|
|
>Topic <small>(Default is <strong>aprs-igate</strong>)</small></label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="text"
|
|
name="mqtt.topic"
|
|
id="mqtt.topic"
|
|
class="form-control"
|
|
placeholder="aprs-igate"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mt-3">
|
|
<div class="col-6">
|
|
<label
|
|
for="mqtt.username"
|
|
class="form-label"
|
|
>Username</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="text"
|
|
name="mqtt.username"
|
|
id="mqtt.username"
|
|
class="form-control"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<label
|
|
for="mqtt.password"
|
|
class="form-label"
|
|
>Password</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="password"
|
|
name="mqtt.password"
|
|
id="mqtt.password"
|
|
class="form-control"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mt-3">
|
|
<div class="col-6">
|
|
<label
|
|
for="mqtt.port"
|
|
class="form-label"
|
|
>Port <small>(Default is <strong>1883</strong>)</small></label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="number"
|
|
name="mqtt.port"
|
|
id="mqtt.port"
|
|
class="form-control"
|
|
placeholder="1883"
|
|
required=""
|
|
step="1"
|
|
min="0"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-heart-pulse-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M1.475 9C2.702 10.84 4.779 12.871 8 15c3.221-2.129 5.298-4.16 6.525-6H12a.5.5 0 0 1-.464-.314l-1.457-3.642-1.598 5.593a.5.5 0 0 1-.945.049L5.889 6.568l-1.473 2.21A.5.5 0 0 1 4 9z"
|
|
/>
|
|
<path
|
|
d="M.88 8C-2.427 1.68 4.41-2 7.823 1.143q.09.083.176.171a3 3 0 0 1 .176-.17C11.59-2 18.426 1.68 15.12 8h-2.783l-1.874-4.686a.5.5 0 0 0-.945.049L7.921 8.956 6.464 5.314a.5.5 0 0 0-.88-.091L3.732 8z"
|
|
/>
|
|
</svg>
|
|
Reboot Time
|
|
</h5>
|
|
</div>
|
|
<div class="col-9">
|
|
<div class="row">
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="other.rebootMode"
|
|
id="other.rebootMode"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="other.rebootMode"
|
|
class="form-label"
|
|
>Reboot Mode Active</label
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<label
|
|
for="other.rebootModeTime"
|
|
class="form-label"
|
|
>Time before forced Reboot</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="number"
|
|
name="other.rebootModeTime"
|
|
id="other.rebootModeTime"
|
|
placeholder="6"
|
|
class="form-control"
|
|
step="6"
|
|
min="6"
|
|
max="168"
|
|
/>
|
|
<span class="input-group-text"
|
|
>hours</span
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-router-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M5.525 3.025a3.5 3.5 0 0 1 4.95 0 .5.5 0 1 0 .707-.707 4.5 4.5 0 0 0-6.364 0 .5.5 0 0 0 .707.707"
|
|
/>
|
|
<path
|
|
d="M6.94 4.44a1.5 1.5 0 0 1 2.12 0 .5.5 0 0 0 .708-.708 2.5 2.5 0 0 0-3.536 0 .5.5 0 0 0 .707.707Z"
|
|
/>
|
|
<path
|
|
d="M2.974 2.342a.5.5 0 1 0-.948.316L3.806 8H1.5A1.5 1.5 0 0 0 0 9.5v2A1.5 1.5 0 0 0 1.5 13H2a.5.5 0 0 0 .5.5h2A.5.5 0 0 0 5 13h6a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5h.5a1.5 1.5 0 0 0 1.5-1.5v-2A1.5 1.5 0 0 0 14.5 8h-2.306l1.78-5.342a.5.5 0 1 0-.948-.316L11.14 8H4.86zM2.5 11a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m4.5-.5a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0m2.5.5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m1.5-.5a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0m2 0a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0"
|
|
/>
|
|
<path
|
|
d="M8.5 5.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0"
|
|
/>
|
|
</svg>
|
|
WiFi Auto AP
|
|
</h5>
|
|
<small
|
|
>WiFi AP will start if there is no WiFi
|
|
connection available. Timeout will count from
|
|
startup or last client disconnected.</small
|
|
>
|
|
</div>
|
|
<div class="col-9">
|
|
<div class="row">
|
|
<div class="col-6">
|
|
<label
|
|
for="wifi.autoAP.password"
|
|
class="form-label"
|
|
>Password</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="password"
|
|
name="wifi.autoAP.password"
|
|
id="wifi.autoAP.password"
|
|
class="form-control"
|
|
placeholder="1234567890"
|
|
required=""
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<label
|
|
for="wifi.autoAP.timeout"
|
|
class="form-label"
|
|
>WiFiAP timeout (to search again)</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="number"
|
|
name="wifi.autoAP.timeout"
|
|
id="wifi.autoAP.timeout"
|
|
class="form-control"
|
|
placeholder="10"
|
|
required=""
|
|
step="1"
|
|
min="0"
|
|
/>
|
|
<span class="input-group-text"
|
|
>minutes</span
|
|
>
|
|
<div class="form-text">
|
|
Set to <strong>0</strong> if you don't
|
|
want WiFi AP to stop.
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-cloud-upload-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
fill-rule="evenodd"
|
|
d="M8 0a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 4.095 0 5.555 0 7.318 0 9.366 1.708 11 3.781 11H7.5V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707V11h4.188C14.502 11 16 9.57 16 7.773c0-1.636-1.242-2.969-2.834-3.194C12.923 1.999 10.69 0 8 0m-.5 14.5V11h1v3.5a.5.5 0 0 1-1 0"
|
|
/>
|
|
</svg>
|
|
OTA
|
|
</h5>
|
|
<small
|
|
>Set your username and password to allow
|
|
firmware updating over-the-air.</small
|
|
>
|
|
</div>
|
|
<div class="col-lg-9 col-sm-12">
|
|
<div class="row">
|
|
<div class="col-6">
|
|
<label for="ota.username" class="form-label"
|
|
>Username</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="ota.username"
|
|
id="ota.username"
|
|
class="form-control"
|
|
/>
|
|
</div>
|
|
<div class="col-6">
|
|
<label for="ota.password" class="form-label"
|
|
>Password</label
|
|
>
|
|
<input
|
|
type="password"
|
|
name="ota.password"
|
|
id="ota.password"
|
|
class="form-control"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-cloud-upload-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
fill-rule="evenodd"
|
|
d="M8 0a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 4.095 0 5.555 0 7.318 0 9.366 1.708 11 3.781 11H7.5V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707V11h4.188C14.502 11 16 9.57 16 7.773c0-1.636-1.242-2.969-2.834-3.194C12.923 1.999 10.69 0 8 0m-.5 14.5V11h1v3.5a.5.5 0 0 1-1 0"
|
|
/>
|
|
</svg>
|
|
Admin
|
|
</h5>
|
|
<small
|
|
>Set your username and password to allow
|
|
access to the web interface.</small
|
|
>
|
|
</div>
|
|
<div class="col-lg-9 col-sm-12">
|
|
<div class="col-6">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="webadmin.active"
|
|
id="webadmin.active"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="webadmin.active"
|
|
class="form-label"
|
|
>Web interface authentication</label
|
|
>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-6">
|
|
<label for="webadmin.username" class="form-label"
|
|
>Username</label
|
|
>
|
|
<input
|
|
type="text"
|
|
name="webadmin.username"
|
|
id="webadmin.username"
|
|
class="form-control"
|
|
value="admin"
|
|
required=""
|
|
/>
|
|
</div>
|
|
<div class="col-6">
|
|
<label for="webadmin.password" class="form-label"
|
|
>Password</label
|
|
>
|
|
<input
|
|
type="password"
|
|
name="webadmin.password"
|
|
id="webadmin.password"
|
|
class="form-control"
|
|
/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-cloud-upload-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
fill-rule="evenodd"
|
|
d="M8 0a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 4.095 0 5.555 0 7.318 0 9.366 1.708 11 3.781 11H7.5V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707V11h4.188C14.502 11 16 9.57 16 7.773c0-1.636-1.242-2.969-2.834-3.194C12.923 1.999 10.69 0 8 0m-.5 14.5V11h1v3.5a.5.5 0 0 1-1 0"
|
|
/>
|
|
</svg>
|
|
Remote Management
|
|
</h5>
|
|
<small
|
|
>Manage Station via APRS Messages. Leave empty to disable!
|
|
</small>
|
|
</div>
|
|
<div class="col-lg-9 col-sm-12">
|
|
<div class="col-12">
|
|
<label
|
|
for="remoteManagement.managers"
|
|
class="form-label"
|
|
>Callsign-SSID of Managers, space separated, trailing * wildcard allowed (ex: AB1CDE-9, AB1CDE*)</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="text"
|
|
name="remoteManagement.managers"
|
|
id="remoteManagement.managers"
|
|
class="form-control"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div class="col-12 mt-3">
|
|
<div class="form-check form-switch">
|
|
<input
|
|
type="checkbox"
|
|
name="remoteManagement.rfOnly"
|
|
id="remoteManagement.rfOnly"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="remoteManagement.rfOnly"
|
|
class="form-label"
|
|
>Managers commands only via RF (not APRS-IS)</label
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-cloud-upload-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
fill-rule="evenodd"
|
|
d="M8 0a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 4.095 0 5.555 0 7.318 0 9.366 1.708 11 3.781 11H7.5V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707V11h4.188C14.502 11 16 9.57 16 7.773c0-1.636-1.242-2.969-2.834-3.194C12.923 1.999 10.69 0 8 0m-.5 14.5V11h1v3.5a.5.5 0 0 1-1 0"
|
|
/>
|
|
</svg>
|
|
NTP
|
|
</h5>
|
|
<small
|
|
>Set your GMT Time Zone.
|
|
</small>
|
|
</div>
|
|
<div class="col-lg-9 col-sm-12">
|
|
<div class="row">
|
|
<div class="col-6">
|
|
<label
|
|
for="ntp.server"
|
|
class="form-label"
|
|
>NTP Server hostname</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="text"
|
|
name="ntp.server"
|
|
id="ntp.server"
|
|
class="form-control"
|
|
/>
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<label
|
|
for="ntp.gmtCorrection"
|
|
class="form-label"
|
|
>GMT Time Correction Offset</label
|
|
>
|
|
<div class="input-group">
|
|
<input
|
|
type="number"
|
|
name="ntp.gmtCorrection"
|
|
id="ntp.gmtCorrection"
|
|
placeholder="0"
|
|
class="form-control"
|
|
step="0.25"
|
|
min="-23.75"
|
|
max="23.75"
|
|
/>
|
|
<span class="input-group-text"
|
|
>hours</span
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="row my-5 d-flex align-items-top">
|
|
<div class="col-lg-3 col-sm-12">
|
|
<h5>
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="20"
|
|
height="20"
|
|
fill="currentColor"
|
|
class="bi bi-heart-pulse-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M1.475 9C2.702 10.84 4.779 12.871 8 15c3.221-2.129 5.298-4.16 6.525-6H12a.5.5 0 0 1-.464-.314l-1.457-3.642-1.598 5.593a.5.5 0 0 1-.945.049L5.889 6.568l-1.473 2.21A.5.5 0 0 1 4 9z"
|
|
/>
|
|
<path
|
|
d="M.88 8C-2.427 1.68 4.41-2 7.823 1.143q.09.083.176.171a3 3 0 0 1 .176-.17C11.59-2 18.426 1.68 15.12 8h-2.783l-1.874-4.686a.5.5 0 0 0-.945.049L7.921 8.956 6.464 5.314a.5.5 0 0 0-.88-.091L3.732 8z"
|
|
/>
|
|
</svg>
|
|
Experimental
|
|
</h5>
|
|
<small>You can test new features. <u>Use at your own risk!</u></small>
|
|
</div>
|
|
<div class="col-lg-9 col-sm-12">
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<div class="form-check form-switch">
|
|
<div class="form-text">
|
|
When "only" iGate Mode loses WiFi, it will change into a Digipeater Mode and after 15 min check if WiFi available and return to "only" iGate Mode.
|
|
</div>
|
|
<input
|
|
type="checkbox"
|
|
name="other.backupDigiMode"
|
|
id="other.backupDigiMode"
|
|
class="form-check-input"
|
|
/>
|
|
<label
|
|
for="other.backupDigiMode"
|
|
class="form-label"
|
|
>Backup Digipeater Mode</label
|
|
>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</main>
|
|
<footer
|
|
class="my-5 py-5 text-body-secondary text-center text-small"
|
|
>
|
|
<p class="mb-4 small">%BUILD_INFO%</p>
|
|
<p class="mb-1 small">
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="16"
|
|
height="16"
|
|
fill="currentColor"
|
|
class="bi bi-cc-circle-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.408 5.89c.681 0 1.138.47 1.187 1.107h1.147v-.11c-.053-1.187-1.024-2-2.343-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.906 2.73 2.518 2.73 1.314 0 2.285-.792 2.343-1.939v-.114H6.595c-.049.615-.497 1.05-1.187 1.05-.84 0-1.318-.62-1.318-1.727v-.742c0-1.112.488-1.754 1.318-1.754Zm5.404 0c.68 0 1.138.47 1.186 1.107h1.147v-.11c-.053-1.187-1.024-2-2.342-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.496 1.05-1.186 1.05-.84 0-1.319-.62-1.319-1.727v-.742c0-1.112.488-1.754 1.319-1.754Z"
|
|
/>
|
|
</svg>
|
|
2023-25
|
|
<b
|
|
><a href="https://github.com/richonguzman"
|
|
>CA2RXU</a
|
|
></b
|
|
>:
|
|
<a
|
|
href="https://github.com/richonguzman/LoRa_APRS_iGate"
|
|
>LoRa APRS iGate Firmware</a
|
|
>.
|
|
</p>
|
|
<p class="mb-1 small">
|
|
<svg
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="16"
|
|
height="16"
|
|
fill="currentColor"
|
|
class="bi bi-cc-circle-fill"
|
|
viewBox="0 0 16 16"
|
|
>
|
|
<path
|
|
d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.408 5.89c.681 0 1.138.47 1.187 1.107h1.147v-.11c-.053-1.187-1.024-2-2.343-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.906 2.73 2.518 2.73 1.314 0 2.285-.792 2.343-1.939v-.114H6.595c-.049.615-.497 1.05-1.187 1.05-.84 0-1.318-.62-1.318-1.727v-.742c0-1.112.488-1.754 1.318-1.754Zm5.404 0c.68 0 1.138.47 1.186 1.107h1.147v-.11c-.053-1.187-1.024-2-2.342-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.496 1.05-1.186 1.05-.84 0-1.319-.62-1.319-1.727v-.742c0-1.112.488-1.754 1.319-1.754Z"
|
|
/>
|
|
</svg>
|
|
2024
|
|
<b
|
|
><a
|
|
href="https://sq2cpa.pl/r/lora-footer"
|
|
target="_blank"
|
|
>SQ2CPA</a
|
|
>
|
|
&
|
|
<a
|
|
href="https://cd3eap.aguayoki.cl/"
|
|
target="_blank"
|
|
>CD3EAP</a
|
|
></b
|
|
>: Settings Page.
|
|
</p>
|
|
<p class="mt-4 small">
|
|
Support this project<br />
|
|
<a
|
|
href="https://github.com/sponsors/richonguzman"
|
|
target="_blank"
|
|
><img
|
|
src="data:image/png;base64,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OnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIgogICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIgogICB4bXBNTTpEb2N1bWVudElEPSJnaW1wOmRvY2lkOmdpbXA6ZjZmZjRjNWMtY2E4Ny00NzBkLWFiZjItYWMyNjJmODYyMTMzIgogICB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjgzYTVhNWQwLTAwODctNGEzZS04ZjhiLWEzNjU5MzhlNWIzOCIKICAgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOmRhNGM1ZGUyLTc3NDctNDFlMi05NTBkLTlmYTViZTdjYjBhYSIKICAgZGM6Rm9ybWF0PSJpbWFnZS9wbmciCiAgIGV4aWY6Q29sb3JTcGFjZT0iMSIKICAgZXhpZjpQaXhlbFhEaW1lbnNpb249IjIyMCIKICAgZXhpZjpQaXhlbFlEaW1lbnNpb249IjgwIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJXaW5kb3dzIgogICBHSU1QOlRpbWVTdGFtcD0iMTcwOTgzMjk3OTI4OTk1NSIKICAgR0lNUDpWZXJzaW9uPSIyLjEwLjMwIgogICB0aWZmOk9yaWVudGF0aW9uPSIxIgogICB0aWZmOlJlc29sdXRpb25Vbml0PSIyIgogICB0aWZmOlhSZXNvbHV0aW9uPSIxMjAiCiAgIHRpZmY6WVJlc29sdXRpb249IjEyMCIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoyMzUwMjJhZS0zNDY5LTRlYmEtOGRkOC04MDdiOGVhYzVlZDQiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoV2luZG93cykiCiAgICAgIHN0RXZ0OndoZW49IjIwMjQtMDMtMDdUMTg6MzY6MTkiLz4KICAgIDwvcmRmOlNlcT4KICAgPC94bXBNTTpIaXN0b3J5PgogIDwvcmRmOkRlc2NyaXB0aW9uPgogPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgIAo8P3hwYWNrZXQgZW5kPSJ3Ij8+cqMvBQAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAASdAAAEnQB3mYfeAAAAAd0SU1FB+gDBxEkE4QGGBkAACAASURBVHja7Z15mFTVtfZ/+5yaq6vnmaGBpmkamxYaGRVQEPHqhcSJT2M0JvE6JA5RwWg0NzfXeGOCY0icI1HRGBQ1GAdUBpF5lHls5h6runqs+Zyzvz+quuyGbmgUFO+t93n6ebqqztm1z95rrb3Wu9beBQkkkEACCSSQQAIJJJBAAgkkkEACCSSQQAIJJJBAAgkkkEACCSSQQAL/JyFO9xcsXLhIVlTsY+iQIQwfcY5IDHkC/6ewc+dO2SOrnwTkWSWD5R13/EKuXbteJkYmgTMJptPZ+JIlS6l072PyRReza+ce/vSnJ/nnO/OZ/89/ybKzB1NbW0soHMZqsZCcnExWVtbUzMyM977tQTl06JAMh8PRpVIIzGYzTqfz7IyMjM0JkUm4Q91GVVWNvP2OX7Bh7RqSk9OoOlJDjx551B5yU918EEV1YOj+DveMO28Co0aPoHxYOWVlgxk0qOQbcZ82btwo169fz+bNm9m1axebN2+muroaIQRSSnKzsykpKaFn797069ePkpISBg0aRFlZWcK9SyhB11i/foMcNqyc0aPGcHh/NYGAHyEU0tLSkbpk/+Ej5KVlYbFa0DUNX2MIj3aoQxv33DODq666klGjRsb7WV1dXRMOR3IURaFX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" /></a
|
|
><a href="http://paypal.me/richonguzman" target="_blank"
|
|
><img
|
|
src="data:image/png;base64,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aHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIgogICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iCiAgICB4bWxuczpHSU1QPSJodHRwOi8vd3d3LmdpbXAub3JnL3htcC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgeG1wTU06RG9jdW1lbnRJRD0iZ2ltcDpkb2NpZDpnaW1wOmUzMGFmOWQ2LWUyZjktNDc4My04YzU1LWIyODgwOGQyYTc4ZCIKICAgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo3NzhjNjQwOC0wYmY2LTQ4NGUtOGU3Ny0zYjFjNDZlMDNmMzgiCiAgIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDoxMWI2YzEzMy0yMzZmLTQzOGUtYTI2YS1jYWU5MjlkM2I2NmMiCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICBleGlmOkNvbG9yU3BhY2U9IjEiCiAgIGV4aWY6UGl4ZWxYRGltZW5zaW9uPSIyMDQiCiAgIGV4aWY6UGl4ZWxZRGltZW5zaW9uPSI4MCIKICAgR0lNUDpBUEk9IjIuMCIKICAgR0lNUDpQbGF0Zm9ybT0iV2luZG93cyIKICAgR0lNUDpUaW1lU3RhbXA9IjE3MDk4MzI5NDE1NTcyMzIiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4zMCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgdGlmZjpSZXNvbHV0aW9uVW5pdD0iMiIKICAgdGlmZjpYUmVzb2x1dGlvbj0iNzIiCiAgIHRpZmY6WVJlc29sdXRpb249IjcyIgogICB4bXA6Q3JlYXRvclRvb2w9IkdJTVAgMi4xMCI+CiAgIDx4bXBNTTpIaXN0b3J5PgogICAgPHJkZjpTZXE+CiAgICAgPHJkZjpsaQogICAgICBzdEV2dDphY3Rpb249InNhdmVkIgogICAgICBzdEV2dDpjaGFuZ2VkPSIvIgogICAgICBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjQ5ZGUzMmQ4LTU1ZTMtNGRmNi1hZDJkLTNlZmMzMzQ3MDJlYSIKICAgICAgc3RFdnQ6c29mdHdhcmVBZ2VudD0iR2ltcCAyLjEwIChXaW5kb3dzKSIKICAgICAgc3RFdnQ6d2hlbj0iMjAyNC0wMy0wN1QxODozNTo0MSIvPgogICAgPC9yZGY6U2VxPgogICA8L3htcE1NOkhpc3Rvcnk+CiAgPC9yZGY6RGVzY3JpcHRpb24+CiA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz48wR78AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH6AMHESMpDUtXbAAAHyVJREFUeNrtnHmUXVWd7z/7DHeue2ueK6lKJakklaQyQCUhkIQAETDiALEVkW7t9vl4QosKjQMiivq6H61NG2kHRFEBJQlEERVppiBTAogkZE5lqulW3bpVdae6wxl2/3FuEopUIEF8ZrHOZ61atWrVOefus893//Zvf/fvXHBxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFx+YsQb3bA4ODorYPx1HW6rmHb8sRnSFAVgT/goam+Qrhd63JaiXl4JB257gv3jb7ycj+RsgCFggGKAFk8s/hbSIGUEl1XqKsN0NJcTsfcRjo7Z9DcVOkK2+VvL+Y/bz0g5829nVmLK9kTswhrIOX40+wj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"
|
|
/></a>
|
|
</p>
|
|
</footer>
|
|
</div>
|
|
</form>
|
|
<div
|
|
class="modal fade"
|
|
id="saveModal"
|
|
tabindex="-1"
|
|
aria-labelledby="saveModal"
|
|
aria-hidden="true"
|
|
>
|
|
<div class="modal-dialog">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<h5 class="modal-title">Saving settings</h5>
|
|
</div>
|
|
<div class="modal-body">
|
|
Please wait... Settings will be saved and LoRa will
|
|
reboot
|
|
</div>
|
|
<div class="modal-footer">Waiting for connection...</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div
|
|
class="modal fade"
|
|
id="savedModal"
|
|
tabindex="-1"
|
|
aria-labelledby="saveModal"
|
|
aria-hidden="true"
|
|
>
|
|
<div class="modal-dialog">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<h5 class="modal-title">Settings</h5>
|
|
<button
|
|
type="button"
|
|
class="btn-close"
|
|
data-bs-dismiss="modal"
|
|
aria-label="Close"
|
|
></button>
|
|
</div>
|
|
<div class="modal-body">Settings saved!</div>
|
|
<div class="modal-footer">
|
|
<button
|
|
type="button"
|
|
class="btn btn-secondary"
|
|
data-bs-dismiss="modal"
|
|
>
|
|
Close
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="position-fixed bottom-0 end-0 p-3" style="z-index: 11">
|
|
<div id="toast" class="toast hide" role="alert" aria-live="assertive" aria-atomic="true">
|
|
<div class="toast-header">
|
|
<strong class="me-auto">System Message</strong>
|
|
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
</div>
|
|
<div class="toast-body text-center"></div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
<script src="/bootstrap.js"></script>
|
|
<script src="/script.js"></script>
|
|
</html> |