jason_fw
@jasonwhite18 · Se unió el abril 2025
Embedded developer · logistics
- Temas
- 10
- Respuestas
- 48
- Puntos
- 0
Respuestas de foro creadas
Kalman is everywhere in navigation. For a pump it feels like overkill to me, but I’m no process guy.
Is RO actually reaching the PIC pin? Scope the PIC pin itself, not the MAX485 side.
Traducido del English por IA ·
¿Se pueden desactivar los nombres en un dashboard? En una tarjeta pequeña taparían todo.
Can the names be turned off on a dashboard? On a small card they would cover everything.
Traducido del English por IA ·
Diseñamos nuestras propias placas basadas en un ESP32-S3 y ya usamos TLS mutuo con nuestra propia CA en otro proyecto. ¿Podemos cargar esa CA para que nuestros dispositivos también usen la ruta de certificados?
We build our own boards around an ESP32-S3 and already do mutual TLS with our own CA on another project. Can we upload that CA so our devices use the certificate path too?
Traducido del English por IA ·
¿La dirección IP es la que el dispositivo informa de sí mismo, o la que ves tú? La mayoría de los nuestros están detrás de un router 4G.
Is the IP address what the device reports about itself, or what you see? Most of ours sit behind a 4G router.
Traducido del English por IA ·
Renombré lon a lng y cambié a snprintf, los marcadores aparecieron de inmediato y en los puestos correctos, no apilados en un solo punto. También seguí el consejo de Tyler: 5 s era mi pereza, ahora 30 s en movimiento / 10 min aparcado con una comprobación de velocidad. Kevin, por ahora solo muestro las últimas posiciones.
Renamed lon to lng and switched to snprintf, markers showed up straight away and in the right bays, not stacked in one spot. Also took Tyler’s advice, 5 s was me being lazy, now 30 s moving / 10 min parked with a speed check. Kevin, I’m only showing latest positions for now.
Traducido del English por IA ·
El fix está bien, el monitor serie muestra 9 satélites y coordenadas razonables. Esto es lo que se envía:
{"lat":"-43.53","lon":"172.63","spd_kmh":0.0,"sats":9}
Fix is fine, serial monitor shows 9 sats and sensible coordinates. Here’s what goes out:
{"lat":"-43.53","lon":"172.63","spd_kmh":0.0,"sats":9}
Traducido del English por IA ·
Muchos STM32 manejan 9 bits de forma nativa. Un Blue Pill como puente que convierta a serie de 8 bits para la Pi sería la respuesta sencilla y fiable.
Lots of STM32s do 9-bit natively. A Blue Pill as a bridge that translates to 8-bit serial for the Pi would be the boring, reliable answer.
two objects is the right idea, begin() just remembers the id and the serial port
The HM-10 is BLE (CC2541 chip). It won’t pair like a classic device, you connect to it and read a GATT characteristic. That’s why bluetoothctl’s pairing list ignores it.
Traducido del English por IA ·
Bien hasta que falle alguno. En una placa perforada (perfboard) no tendrás una distancia de fuga (creepage) adecuada entre el lado de 230V y el ESP32, y supongo que tampoco hay fusible en la entrada, ¿no?
Fine until one fails. On perfboard you won’t have proper creepage between the 230V side and the ESP32, and no fuse on the input I’m guessing?
Traducido del English por IA ·
Ni lo uno ni lo otro, más o menos. El NEO-6M ya te proporciona ambos. La sentencia $GPRMC incluye la velocidad sobre el suelo (en nudos) y el rumbo sobre el suelo, y el receptor obtiene la velocidad a partir del efecto Doppler, que es mucho mejor que restar dos posiciones tomadas con 30 s de diferencia. Dos posiciones separadas 30 s mostrarán un tractor que fue y volvió por un pasillo como si estuviera detenido.Con TinyGPS++ son dos líneas:
float kmh = gps.speed.kmph(); // already converted from knots
float hdg = gps.course.deg();
snprintf(buf, sizeof buf,
"{"lat":%.6f,"lng":%.6f,"speed_kmh":%.1f,"course_deg":%.0f}",
gps.location.lat(), gps.location.lng(), kmh, hdg);
Envíalos como números en el mismo mensaje que lat/lng. Mismo mensaje, mismo coste, así que para @roberts.r son unos bytes más, no otro mensaje. Luego una regla de alarma sobre speed_kmh > 15 con un debounce de 2 lecturas para que un solo salto del GPS no la dispare.Si alguna vez necesitas algo calculado a posteriori (distancia por turno, por ejemplo), eso va en el flujo raíz antes de Save telemetry como clave derivada.
Neither contractor, sort of. The NEO-6M already gives you both. The $GPRMC sentence has speed over ground (in knots) and course over ground, and the receiver gets speed from Doppler, which is far better than differencing two fixes 30 s apart. Two fixes 30 s apart will show a tractor that went down and back an aisle as standing still.
With TinyGPS++ it’s two lines:
float kmh = gps.speed.kmph(); // already converted from knots
float hdg = gps.course.deg();
snprintf(buf, sizeof buf,
"{"lat":%.6f,"lng":%.6f,"speed_kmh":%.1f,"course_deg":%.0f}",
gps.location.lat(), gps.location.lng(), kmh, hdg);
Send them as numbers in the same message as lat/lng. Same message, same cost, so @roberts.r it’s a few bytes more, not another message. Then an alarm rule on speed_kmh > 15 with a debounce of 2 readings so one GPS jump doesn’t fire it.
If you ever do need something computed after the fact (distance per shift, say), that goes in the root flow before Save telemetry as a derived key.
Ask your operator for a fixed-IP APN. Ours sold us a /28 for the whole fleet. If that’s not possible, skip that control and lean on revoke plus the new-network notices.
Flash encryption and secure boot on the ESP32 cover the dump. They’re one-way though, get the key handling wrong on a production unit and it’s a brick.
Type K goes higher than that though, right? Just the chip is the limit?

