You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.6 KiB

Comandos y calibracion Atlas Scientific EZO

Esta implementacion sigue los datasheets oficiales vigentes consultados para:

  • EZO-pH, datasheet V6.1, revision 02/2024.
  • EZO-DO, datasheet V5.8, revision 03/2025.
  • EZO-EC, datasheet V5.5.
  • EZO-RTD, datasheet V3.7, revision 10/2024.

Transporte I2C

Los comandos son cadenas ASCII sin retorno de carro. Despues de escribir el comando se espera el tiempo de procesamiento y se solicita la respuesta.

El primer byte de una respuesta I2C es:

Codigo Significado
1 Solicitud procesada correctamente
2 Error de sintaxis
254 Procesando; aun no esta lista
255 No hay datos

El ejecutable sensors/EZOCommand/EZO_COMMAND implementa este intercambio y reintenta las respuestas pendientes.

Calibracion EZO-RTD

Calibracion de un punto:

Cal,<temperatura>
Cal,?
Cal,clear

Ejemplo: Cal,25.00.

Calibracion EZO-pH

Orden recomendado:

Cal,mid,7.00
Cal,low,4.00
Cal,high,10.00

El punto medio siempre debe realizarse primero. Ejecutar Cal,mid sobre una calibracion existente elimina los otros puntos. El estado se consulta con Cal,? y la salud de la sonda con Slope,?.

Calibracion EZO-DO

Un punto:

Cal

Dos puntos, en este orden:

Cal,0
Cal

Cal,0 usa solucion de cero oxigeno. Cal usa la sonda estabilizada en aire atmosferico. Compensaciones disponibles:

T,<grados Celsius>
S,<conductividad en uS/cm>
S,<salinidad>,ppt
P,<presion en kPa>

Calibracion EZO-EC

Primero se configura la constante de la sonda con K,<valor> y se realiza la calibracion en seco:

K,1.0
Cal,dry

Calibracion de dos puntos:

Cal,dry
Cal,<valor>

Calibracion de tres puntos:

Cal,dry
Cal,low,<valor>
Cal,high,<valor>

No se debe usar Cal,0 en EC. El valor cero corresponde unicamente al paso Cal,dry.

Modos del backend

  • EZO_MODE=auto: usa hardware si encuentra /dev/i2c-1 y EZO_COMMAND; de lo contrario usa demo.
  • EZO_MODE=hardware: exige bus y ejecutable reales; si faltan, la API devuelve error en vez de simular.
  • EZO_MODE=demo: genera respuestas de desarrollo sin acceder al bus.

Para preparar Raspberry Pi:

make -C sensors/EZOCommand
sudo usermod -aG i2c $USER
EZO_MODE=hardware npm start

Es necesario cerrar sesion y volver a entrar despues de agregar el usuario al grupo i2c.

Fuentes oficiales