kevin.sec
@kevin-young · Membre depuis février 2025
IT and security admin · energy · 17 years in the field
- Sujets
- 4
- Réponses
- 16
- Points
- 0
Toutes mes réponses sur les forums
Traduit de English par IA ·
Quel compte avez-vous donné à la caméra ?
Which account did you give the camera?
Traduit de English par IA ·
Les paramètres dangereux sont réservés au propriétaire (Owner). Ai-je raison de penser qu’une clé API ne peut jamais les modifier alors ?
Dangerous settings are Owner only. Am I right that an API key can never write those then?
Welcome. Is the region per organisation or per person? Some of our people sit in Canada and some in Europe, and I’d rather not split us in two.
Traduit de English par IA ·
C’est exactement la réponse que j’attendais pour notre questionnaire fournisseur. Deux questions de suivi issues du même formulaire : où vont les sauvegardes, et vos propres opérateurs peuvent-ils accéder à un nœud ?
That is the answer I wanted for our vendor questionnaire. Two follow-ups from the same form: where do backups go, and can your own operators get into a node?
Traduit de English par IA ·
Clean session false ne servira de toute façon à rien avec Hermetry. Je suis à peu près certain que la documentation indique qu’il est traité comme clean session.
Clean session false won’t help on Hermetry anyway. I’m fairly sure the docs say it’s served as a clean session.
Moved both boards to SPI0 with CE0/CE1, removed the two overlays, three days without a crash and the readings match the old ones within 0.1 °C. Thanks Aoife. @Keisha the offline alarm wouldn’t help there since the Pi is still online. A threshold rule can’t see a missing key either, as far as I know. We’re looking at a flow watchdog for that.
enable_uart=1 (serial console is on, someone uses it for headless recovery), dtparam=i2c_arm=on, and the two SPI lines.
HC-12 modules are an Si4463 with a small MCU on top that gives you a plain serial port. If you don’t need anything fancy, that’s the lazy route.
Bottom layer under the trace was empty, I had routed the battery line through there. Rev B: CPWG at 50 ohm, via fence, ground solid. Now -100 dBm and SNR +6 at the same spot. Thanks Laura.
868, same one I use on the dev board.
That table is what I was missing. Left the profile at the defaults. After a week most meters sit at DR5 and four basement ones at DR2, all visible in lora.dr. Thanks Ciaran.
Traduit de English par IA ·
Bien, c’est la même configuration que nous utilisons pour quelques lampes de signalisation. Trois éléments :
- Profil d’appareil du relais, onglet Commands : ajouter une commande
light.set, niveau Basic, un paramètreonde type Yes / no. Le niveau est important, car une clé API ne peut envoyer que les méthodes présentes dans le catalogue du profil. - Firmware : s’abonner à
v1/rpc/req/+, commuter GPIO12 (le relais de la Basic R2), répondre avec le même identifiant et signaler le nouvel état.
void onMsg(char* topic, byte* p, unsigned int n) {
// topic: v1/rpc/req/42
String id = String(topic).substring(11);
StaticJsonDocument<128> d; deserializeJson(d, p, n);
bool on = d["params"]["on"];
digitalWrite(12, on ? HIGH : LOW);
mqtt.publish(("v1/rpc/res/" + id).c_str(), "{"ok":true}");
mqtt.publish("v1/telemetry", on ? "{"relay":1}" : "{"relay":0}");
}
- Votre script : une clé API depuis API Keys (menu Developer) avec uniquement ce dont elle a besoin. La route d’envoi demande
iot_rpc.readainsi que la permission du niveau ; cochez ces deux-là et rien d’autre, renseignez la liste d’adresses IP autorisées avec l’adresse du PC du laboratoire et conservez l’expiration à 90 jours.
import requests
r = requests.post(
f"https://{HOST}/tenant/{TENANT}/api/iot/devices/{DEVICE}/rpc",
headers={"Authorization": f"Bearer {KEY}"},
json={"method": "light.set", "params": {"on": True}, "timeoutMs": 10000},
)
print(r.status_code, r.json()["rpc"]["status"])
Une commande bidirectionnelle avec un délai d’attente de 30 s ou moins attend et renvoie 200 avec SUCCESSFUL. Référence : Commands APIL’ESP8266 gère le TLS, mais la mémoire est limitée ; utilisez BearSSL avec des tampons plus petits si la connexion échoue.
Good, that’s the same setup we use for a few signal lamps. Three pieces:
- Device profile of the relay, Commands tab: add a command
light.set, tier Basic, one parameteronof type Yes / no. Tier matters, because an API key can only send methods that are in the profile’s catalog. - Firmware: subscribe to
v1/rpc/req/+, switch GPIO12 (the relay on the Basic R2), answer on the same id, and report the new state.
void onMsg(char* topic, byte* p, unsigned int n) {
// topic: v1/rpc/req/42
String id = String(topic).substring(11);
StaticJsonDocument<128> d; deserializeJson(d, p, n);
bool on = d["params"]["on"];
digitalWrite(12, on ? HIGH : LOW);
mqtt.publish(("v1/rpc/res/" + id).c_str(), "{"ok":true}");
mqtt.publish("v1/telemetry", on ? "{"relay":1}" : "{"relay":0}");
}
- Your script: an API key from API Keys (Developer menu) with only what it needs. The send route wants
iot_rpc.readplus the tier’s permission, so tick those two and nothing else, fill the IP allowlist with the lab PC’s address and keep the 90-day expiry.
import requests
r = requests.post(
f"https://{HOST}/tenant/{TENANT}/api/iot/devices/{DEVICE}/rpc",
headers={"Authorization": f"Bearer {KEY}"},
json={"method": "light.set", "params": {"on": True}, "timeoutMs": 10000},
)
print(r.status_code, r.json()["rpc"]["status"])
A two-way command with a timeout of 30 s or less waits and comes back 200 with SUCCESSFUL. Reference: Commands API
The ESP8266 does TLS, but memory is tight; use BearSSL with smaller buffers if the connect fails.
Traduit de English par IA ·
Il vaut la peine de laisser un commentaire au-dessus de chaque ligne ajoutée à config.txt, avec la date et la raison. Cela fera gagner du temps à la prochaine personne.
Worth leaving a comment above every line you add to config.txt with the date and why. Saves the next person.
Exactly what I needed for the meeting. I explained the trapped air and stuck spool cases with Laura’s wording and management stopped asking about removing a part. I also told them no cloud product, Hermetry Safe included, takes over the safety chain, it stays hardwired. We added the aux contact and the dump valve pressure switch as telemetry, plus an alarm when the e-stop is active and the dump has not vented within 5 seconds. Tested it on Friday with the engineer present.
Traduit de English par IA ·
Avant toute chose : passer à Bookworm est-il une option ? NetworkManager fait disparaître toute cette question.
Before anything: is moving it to Bookworm an option? NetworkManager makes this whole question go away.

