emily23
@smith-e · Membre depuis janvier 2026
Facility manager · hospitality
- Sujets
- 4
- Réponses
- 24
- Points
- 0
Toutes mes réponses sur les forums
Traduit de English par IA ·
Le ballon tampon s’allume-t-il lorsque son alarme de température est ouverte ?
Does the buffer tank light up when its temperature alarm is open?
Traduit de English par IA ·
Hier, j’ai utilisé l’onglet Log pour un contrôleur de pompe qui passait sans cesse de en ligne à hors ligne. Toutes les quelques minutes, il affichait « Pris en charge par une nouvelle session ». Il s’est avéré que deux unités avaient été flashées avec le même identifiant. Sans cela, j’y aurais passé une journée.
Used the Log tab yesterday for a pump controller that kept flipping online and offline. Every few minutes it said « Taken over by a new session ». Turned out two units had been flashed with the same credential. Would have taken me a day without it.
Traduit de English par IA ·
Nous avons les mêmes fenêtres dans le hall de notre hôtel. Avant de savoir mieux faire, notre électricien a placé des relais en parallèle sur les boutons d’un clavier de rechange et les a pilotés ainsi. Ça fonctionne, mais on n’a aucun retour : on ne sait jamais si la fenêtre s’est réellement fermée.
We have the same windows in our hotel lobby. Before we knew better our electrician put relays across the buttons of a spare keypad and drove those. It works but you get zero feedback, you never know if the window really closed.
Traduit de English par IA ·
La ligne dans gai.conf a résolu le problème, chaque appel prend maintenant moins d’une seconde. J’ai aussi ajouté notre IPv4 publique à la liste d’autorisation de la clé, comme tu l’as suggéré. Merci David !
The gai.conf line did it, every call is under a second now. I also added our public IPv4 to the key’s allowlist like you said. Thanks David!
Traduit de English par IA ·
Ha, nous avons eu la même chose avec deux hôtels, deux organisations dans deux régions, même firmware.
Ha, we had the same with two hotels, two orgs in two regions, same firmware.
Traduit de English par IA ·
Nous avons essayé exactement la même chose dans le bureau arrière d’un hôtel. Après le retour de l’alimentation, l’unité est restée en veille avec un bip et a eu besoin de la télécommande. Pour nous, couper l’alimentation ne faisait donc que l’éteindre, jamais le rallumer.
We tried this exact thing in a hotel back office. After the power came back the unit sat in standby with a beep and needed the remote. So for us cutting power only ever turned it off, never on.
Traduit de English par IA ·
Pas l’USB. J’ai eu une liaison Modbus instable sur un Pi 3 une fois, et une partie de la solution a été de retirer console=serial0,115200 de cmdline.txt, car la console de connexion partageait le port. Je ne sais pas si cela explique tout ton problème.
Not USB. I had flaky Modbus on a Pi 3 once and part of the fix was taking console=serial0,115200 out of cmdline.txt, the login console was sharing the port. Not sure that’s your whole problem though.
Same mistake in my sketch, glad I followed this.
Following, same question for our two chillers.
Traduit de English par IA ·
Côté exploitation : l’assureur du client demandera des informations sur tout équipement câblé de façon permanente dans une salle des machines, et son entreprise de maintenance voudra savoir qui l’a installé.
Facility side: the client’s insurer will ask about anything permanently wired in a plant room, and their maintenance contractor will want to know who installed it.
Traduit de English par IA ·
Nous avons des vannes fan coil dans 140 chambres d’hôtel qui fonctionnent ainsi, voici donc notre configuration.Hermetry envoie les commandes à l’appareil sur son propre topic de downlink. La carte du ventilateur s’abonne à v1/rpc/req/+, une commande arrive sous la forme v1/rpc/req/<id> avec une méthode et des paramètres, et la carte répond sur v1/rpc/res/<id>. L’id dans le topic sert à associer la réponse.Dans le profil du ventilateur, ouvrez l’onglet Commands et ajoutez une commande, par exemple la méthode fan.set, un paramètre on de type Yes/no, tier Basic. Basic compte, car un Switch du tableau de bord n’envoie que des commandes de tier Basic. Ensuite, donnez à la carte du superviseur une carte Switch dont l’action est Run a command fan.set avec la valeur du contrôle, et liez le Current state à une clé de télémétrie que la carte publie après avoir commuté ; nous utilisons fan.on.Côté Arduino, en gros avec PubSubClient :
void onMsg(char* topic, byte* payload, unsigned int len) {
String t(topic);
if (!t.startsWith("v1/rpc/req/")) return;
String id = t.substring(11);
StaticJsonDocument<256> doc;
deserializeJson(doc, payload, len);
if (doc["method"] == "fan.set") {
bool on = doc["params"]["on"];
digitalWrite(RELAY, on ? HIGH : LOW);
client.publish(("v1/rpc/res/" + id).c_str(), "{"ok":true}");
client.publish("v1/telemetry", on ? "{"fan.on":1}" : "{"fan.on":0}");
}
}
// after every connect:
client.subscribe("v1/rpc/req/+", 1);
La doc indique qu’une commande peut arriver deux fois, donc nous gardons les derniers ids et ignorons les répétitions. Page : Envoyer des commandes aux appareils. Pour les consignes qui doivent survivre à un redémarrage (température cible du chauffage), nous utilisons plutôt les attributs partagés sur v1/attributes/set ; la carte les demande juste après la connexion.
We have fan coil valves in 140 hotel rooms doing this, so here is our setup.
Hermetry sends commands to the device on its own downlink topic. The fan board subscribes to v1/rpc/req/+, a command arrives as v1/rpc/req/<id> with a method and params, and the board answers on v1/rpc/res/<id>. The id in the topic is how the answer is matched.
On the fan profile, open the Commands tab and add a command, for example method fan.set, one parameter on of type Yes/no, tier Basic. Basic matters because a dashboard Switch only sends Basic tier commands. Then the supervisor’s board gets a Switch card, its action is Run a command fan.set with the control’s value, and the Current state is bound to a telemetry key the board reports after it switched, we use fan.on.
Rough Arduino side with PubSubClient:
void onMsg(char* topic, byte* payload, unsigned int len) {
String t(topic);
if (!t.startsWith("v1/rpc/req/")) return;
String id = t.substring(11);
StaticJsonDocument<256> doc;
deserializeJson(doc, payload, len);
if (doc["method"] == "fan.set") {
bool on = doc["params"]["on"];
digitalWrite(RELAY, on ? HIGH : LOW);
client.publish(("v1/rpc/res/" + id).c_str(), "{"ok":true}");
client.publish("v1/telemetry", on ? "{"fan.on":1}" : "{"fan.on":0}");
}
}
// after every connect:
client.subscribe("v1/rpc/req/+", 1);
The docs say a command can arrive twice, so keep the last few ids and skip repeats. Page: Sending commands to devices. For setpoints that should survive a reboot (heater target temperature) we use shared attributes on v1/attributes/set instead, the board asks for them right after connecting.
Traduit de English par IA ·
Nous l’avons fait la semaine dernière avec mes propres vagues : 3 chambres au 2e étage d’abord, puis 20, puis le reste à 1 h du matin. Une chambre a affiché Not for this device lors de la vague 2, son contrôleur était sur une version antérieure à la version minimale autorisée par le package, elle a donc été ignorée. Le fournisseur la flashe manuellement. Le bug du ventilateur a disparu partout ailleurs. Bien moins effrayant que je ne l’imaginais.
We did it last week with my own waves, 3 rooms on floor 2 first, then 20, then the rest at 1 a.m. One room showed Not for this device in wave 2, its controller was on a version older than the package’s lowest allowed one, so it got skipped. Vendor is flashing that one by hand. Fan bug gone everywhere else. Much less scary than I expected.
Traduit de English par IA ·
Je leur ai demandé. Ils disent « ota_0 and ota_1 with rollback enabled », 4 Mo de flash. Aussi des images signées, ce que ça veut dire pour moi, je ne sais pas.
Asked them. They say « ota_0 and ota_1 with rollback enabled », 4 MB flash. Also signed images, whatever that means for me.
Traduit de English par IA ·
Un petit HAT UPS éviterait totalement que les coupures de courant posent problème.
A small UPS HAT would stop the power cuts being a problem at all.
It’s the power bank switching itself off. Had exactly this at our property with a door counter last year.
Most power banks shut their output down when the load drops below somewhere around 50-100 mA for a few seconds, because they think the phone is full. Your Nano draws far more than that while the radio is sending, and a few mA (or less) when LowPower puts it to sleep. So: join, first uplink, sleep, power bank sees almost no current, output off. Nothing for the code to do about it. Replugging restarts the bank.
Ways out, from what we tried:
- Use a power source without that feature: 3 x AA alkaline straight to the 5 V pin is ok for a Nano (4.5 V) for a while, or better a LiPo with a decent low-quiescent regulator. A bare Pro Mini at 3.3 V with the power LED removed runs for months on AAs.
- Some power banks have an « always on » or low-current mode, usually a double press of the button. Check the manual.
- Dummy loads that pull pulses to keep the bank awake work, but they waste most of the battery.
Also adjust Hermetry so it matches the sensor. On the built-in LoRaWAN profile the device counts as online while the last uplink is younger than three expected intervals, with 3,600 s as the default interval. At one uplink per 10 minutes you’re fine, but if you stretch it to hourly or longer to save battery, raise the expected interval on the profile’s Online status tab, otherwise it flips to offline between reports. That bit is in Troubleshooting uplinks and downlinks.

