Novedad: el cortafuegos de IA supervisa toda la plataforma y explica cada incidente con palabras sencillas. Vea cómo funciona

Tyler Smith

smithops

@tsmith · Se unió el enero 2026

Recién llegado

Plant manager · automotive · 6 years in the field

Temas
4
Respuestas
35
Puntos
0
Recién llegado10 puntos para Miembro

Respuestas de foro creadas

Viendo 5 entradas – de la 31 a la 35 (de un total de 35)

Traducido del English por IA ·

Kevin tiene razón, y la conexión «preconfigured» es la que creó el imager a partir de tu WiFi de casa. Añade el hotspot como segunda conexión de NetworkManager y asigna una prioridad a ambas. Yo llevo una Pi entre dos fábricas exactamente con esta configuración.

sudo nmcli con add type wifi ifname wlan0 con-name allotment 
     ssid "Aisha-phone" wifi-sec.key-mgmt wpa-psk wifi-sec.psk "********"
sudo nmcli con modify allotment connection.autoconnect yes connection.autoconnect-priority 10
sudo nmcli con modify preconfigured connection.autoconnect-priority 20
nmcli -f NAME,AUTOCONNECT,AUTOCONNECT-PRIORITY con show

Si ambas están al alcance, gana la prioridad más alta, así que primero la de casa. Enciende el hotspot antes de alimentar la Pi; si arranca primero, dale un minuto, NetworkManager vuelve a escanear.Para el almacenamiento temporal: guarda las lecturas en una tabla SQLite pequeña o incluso en un archivo JSONL, y cuando vuelva la conexión envíalas con sus propias marcas de tiempo, en lotes:

[{"ts": 1762668000000, "values": {"soil.bed3": 31.5, "air.temp": 12.1}},
 {"ts": 1762668300000, "values": {"soil.bed3": 31.2, "air.temp": 12.6}}]

ts está en milisegundos UTC. Borra una fila solo después de confirmar la publicación (QoS 1, espera el PUBACK en paho con wait_for_publish()).Una trampa con la Pi: no tiene reloj con batería de respaldo. Si arranca en el huerto y no obtiene red durante un rato, el reloj es incorrecto hasta que NTP se sincroniza, y las lecturas marcadas con ese reloj acaban con la hora equivocada o se descartan (más de 10 minutos en el futuro se rechaza). Marca las lecturas con hora solo cuando timedatectl show -p NTPSynchronized diga yes; si no, envíalas sin ts y deja que Hermetry use la hora de llegada.

Ground loops are my cardio.
Solución aceptada♥ 3

Traducido del English por IA ·

Hacemos exactamente esto para las luces de línea de nuestra planta, desde un pequeño script en el PC del supervisor. Es la API de Commands con una clave de API.Su tarjeta de conmutación ya envía un comando, y las placas solo pueden enviar comandos que estén en el catálogo Commands del perfil del dispositivo en el nivel Basic. Así que el método existe. Para ver su nombre exacto y sus parámetros, consulte la API con la misma clave que va a crear: GET /tenant/<tenantId>/api/iot/devices/<deviceId>/rpc-commands lista lo que un control puede enviar a ese dispositivo.Cree la clave en API Keys: concédale el permiso para enviar comandos básicos y leer comandos, añada la dirección de su escritorio a la lista de IP permitidas y elija una caducidad. Después:

#!/bin/sh
# ~/bin/office-lights  (chmod 700)
KEY=$(cat ~/.config/hermetry/key)
curl -s -X POST "https://<your host>/tenant/<tenantId>/api/iot/devices/<deviceId>/rpc" 
  -H "Authorization: Bearer $KEY" 
  -H "Content-Type: application/json" 
  -d "{"method":"light.set","params":{"on":$1},"timeoutMs":10000}"

Un comando bidireccional con un tiempo de espera de 30 segundos o menos espera y responde 200 con el estado, así que verá SUCCESSFUL o el error en el terminal. Asigne office-lights true y office-lights false a dos atajos y listo. Una clave de API solo puede enviar métodos que estén en el catálogo, que es justo lo que se quiere aquí.Documentación: Commands API.

Ground loops are my cardio.
Solución aceptada♥ 9

Traducido del English por IA ·

Factible. Eso sí, conecta la Pi y el router a un pequeño SAI (UPS); si no, la Pi no te sirve de nada durante los cortes de carga.

Ground loops are my cardio.
♥ 0

Traducido del English por IA ·

Divisor en el echo, bien. ¿A qué distancia está el sensor del agua cuando el depósito está lleno?

Ground loops are my cardio.
♥ 0
Viendo 5 entradas – de la 31 a la 35 (de un total de 35)