diff --git a/VERSION b/VERSION
index 266146b..9edc58b 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.6.3
+1.6.4
diff --git a/changelog.json b/changelog.json
index fcbea46..ec916b9 100644
--- a/changelog.json
+++ b/changelog.json
@@ -1,5 +1,21 @@
{
"versions": [
+ {
+ "version": "1.6.4",
+ "date": "2026-04-02",
+ "changes": {
+ "features": [
+ "Page modem: boutons Activer/Desactiver LED status connexion PCB (AT+UGPIOC=16,2 / AT+UGPIOC=16,255)"
+ ],
+ "improvements": [
+ "Page modem: messages de progression en 3 etapes pendant le reset hardware (coupure, redemarrage, test connexion)",
+ "Page modem: bouton reset hardware desactive pendant l'operation pour eviter les doubles clics"
+ ],
+ "fixes": [],
+ "compatibility": []
+ },
+ "notes": "Le reset hardware affiche maintenant les etapes en temps reel (~20s). Deux nouveaux boutons permettent de controler la LED bleue du PCB qui indique l'etat de la connexion reseau du modem."
+ },
{
"version": "1.6.3",
"date": "2026-04-01",
diff --git a/html/saraR4.html b/html/saraR4.html
index 6cbf401..8a9aa44 100755
--- a/html/saraR4.html
+++ b/html/saraR4.html
@@ -173,13 +173,29 @@
-
Reset hardware (GPIO 16) : coupe et rétablit l'alimentation du modem.
-
+
Reset hardware (GPIO 16) : coupe et rétablit l'alimentation du modem, puis teste la connexion avec le modem (~20 secondes).
+
+
+
+
+
+
LED status connexion (PCB)
+
Active la LED bleue du PCB qui indique l'état de la connexion réseau (GPIO 16 du modem).
+
+
+
+
+
+
+
+
+
+
@@ -1046,38 +1062,57 @@ function getSignalInfo(port, timeout) {
}
function hardwareRebootSara() {
- if (!confirm("Couper l'alimentation du modem SARA via GPIO 16 ?\nLe modem sera éteint pendant ~3 secondes puis redémarré.")) return;
+ if (!confirm("Couper l'alimentation du modem SARA via GPIO 16 ?\nLe modem sera éteint pendant ~3 secondes puis redémarré.\nLa connexion avec le modem sera ensuite testée (~20 secondes au total).")) return;
console.log("Hardware reboot SARA via GPIO 16");
+ $("#btn_hw_reboot").prop("disabled", true);
$("#loading_hw_reboot").show();
- $("#response_hw_reboot").empty();
+ $("#response_hw_reboot").html(`
+
+ Étape 1/3 — Coupure alimentation du modem...
+
`);
+
+ // Progress messages
+ var step2Timeout = setTimeout(function() {
+ $("#hw_reboot_progress small").html('Étape 2/3 — Attente du redémarrage du modem...');
+ }, 4000);
+
+ var step3Timeout = setTimeout(function() {
+ $("#hw_reboot_progress small").html('Étape 3/3 — Test de la connexion avec le modem (ATI)...');
+ }, 9000);
$.ajax({
url: 'launcher.php?type=sara_hardware_reboot',
dataType: 'json',
method: 'GET',
- timeout: 30000,
+ timeout: 45000,
success: function(response) {
console.log(response);
+ clearTimeout(step2Timeout);
+ clearTimeout(step3Timeout);
$("#loading_hw_reboot").hide();
+ $("#btn_hw_reboot").prop("disabled", false);
if (response.reboot) {
$("#response_hw_reboot").html(`
- Modem redémarré
+ Modem redémarré et connexion vérifiée ${response.modem_response}
`);
} else {
$("#response_hw_reboot").html(`
Echec
- ${response.error || 'Modem ne répond pas'}
+ ${response.error || 'Modem ne répond pas après le redémarrage'}