updated board from olimex c5

This commit is contained in:
2026-06-11 00:44:19 +03:00
parent 5340f88ffe
commit 916e35b22b
6 changed files with 257 additions and 27 deletions
+1 -1
View File
@@ -20,7 +20,7 @@
</div>
{% if current_user.is_admin() %}
<div class="d-flex gap-2">
{% if board.board_type == 'olimex_esp32_c6_evb_pn532' %}
{% if board.board_type == 'olimex_esp32_c6_evb_pn532' or board.board_type == 'olimex_esp32_c5_evb' %}
<a href="{{ url_for('boards.nfc_management', board_id=board.id) }}" class="btn btn-outline-primary">
<i class="bi bi-credit-card-2-front me-1"></i> NFC Access Control
</a>
+10 -10
View File
@@ -98,7 +98,7 @@
<dt class="col-5 text-secondary">Trigger relay</dt>
<dd class="col-7 fw-semibold" id="relay-display">Relay {{ nfc.get('relay_num', 1) }}</dd>
<dt class="col-5 text-secondary">Absence timeout</dt>
<dd class="col-7 fw-semibold" id="pulse-display">{{ nfc.get('pulse_ms', 3000) }} ms</dd>
<dd class="col-7 fw-semibold" id="pulse-display">{{ nfc.get('pulse_ms', 0) }} ms</dd>
</dl>
</div>
@@ -152,16 +152,16 @@
<div class="col-sm-4">
<label class="form-label small text-secondary mb-1">Trigger relay</label>
<select name="relay_num" id="enroll-relay" class="form-select">
{% for r in range(1, 5) %}
{% for r in range(1, board.num_relays + 1) %}
<option value="{{ r }}" {% if nfc.get('relay_num', 1) == r %}selected{% endif %}>Relay {{ r }}</option>
{% endfor %}
</select>
</div>
<div class="col-sm-4">
<label class="form-label small text-secondary mb-1">Absence timeout (ms)</label>
<label class="form-label small text-secondary mb-1">Release delay (ms) &mdash; 0 = off when card removed</label>
<input type="number" name="pulse_ms" id="enroll-pulse"
class="form-control" min="100" max="60000"
value="{{ nfc.get('pulse_ms', 3000) }}">
class="form-control" min="0" max="60000"
value="{{ nfc.get('pulse_ms', 0) }}">
</div>
<div class="col-sm-4">
<button type="submit" class="btn btn-success w-100"
@@ -204,16 +204,16 @@
<div class="col-sm-6">
<label class="form-label small text-secondary mb-1">Trigger relay</label>
<select name="relay_num" class="form-select">
{% for r in range(1, 5) %}
{% for r in range(1, board.num_relays + 1) %}
<option value="{{ r }}" {% if nfc.get('relay_num', 1) == r %}selected{% endif %}>Relay {{ r }}</option>
{% endfor %}
</select>
</div>
<div class="col-sm-6">
<label class="form-label small text-secondary mb-1">Absence timeout (ms)</label>
<label class="form-label small text-secondary mb-1">Release delay (ms)</label>
<input type="number" name="pulse_ms" class="form-control"
min="100" max="60000" value="{{ nfc.get('pulse_ms', 3000) }}">
<div class="form-text">Relay closes this many ms after the card is removed (100 60 000).</div>
min="0" max="60000" value="{{ nfc.get('pulse_ms', 0) }}">
<div class="form-text">Relay turns off this many ms after the card is removed (0 = immediately).</div>
</div>
<div class="col-12 d-flex gap-2">
<button type="submit" class="btn btn-primary">
@@ -287,7 +287,7 @@ function loadStatus() {
const relayDisp = document.getElementById('relay-display');
if (relayDisp) relayDisp.textContent = 'Relay ' + (d.relay_num || 1);
const pulseDisp = document.getElementById('pulse-display');
if (pulseDisp) pulseDisp.textContent = (d.pulse_ms || 3000) + ' ms';
if (pulseDisp) pulseDisp.textContent = (d.pulse_ms != null ? d.pulse_ms : 0) + ' ms';
// module enabled/disabled summary in left card
const modDd = document.getElementById('module-state-dd');
if (modDd) {