Actualizaciones del Producto

Nuevo firmware del altímetro Nano (v1.53)

NNeil Bowen4 min de lectura
Hola a todos,

Necesidad de actualización: ¡Fuertemente recomendado! 

Hemos lanzado un nuevo firmware para el altímetro Nano. Esta actualización corrige un bug descubierto que afecta la estabilidad del almacenamiento de archivos y añade algunas características nuevas.
Puedes instalar el nuevo firmware en nuestra herramienta de actualización en línea aquí: https://www.altimetercloud.com/support/update_tool/

image.png
Resumen de características y correcciones
  • Se corrigió la corrupción de datos del sistema de archivos cuando se retira el cable USB durante cambios de archivos.
  • Remontaje constante al expulsar o configurar notificaciones del dispositivo
  • Se aumentó la velocidad de registro máxima a 300Hz 
  • Opción de usar el nuevo formato de registro comprimido de Altimeter Cloud en lugar de archivos CSV, permitiéndote almacenar 10-15 veces más vuelos en tu dispositivo sin pérdida de datos. 
  • Se eliminaron operaciones `memmove` en los búferes de RAM previos al vuelo, asegurando que las opciones de mayor velocidad funcionen sin problemas. Y aumentando ligeramente la duración de la batería. 
  • Se añadió compatibilidad para el bloque de datos persistentes durante actualizaciones para retener cierta información al actualizar o restablecer de fábrica.
  • Se añadieron los últimos 4 caracteres del número de serie del dispositivo al nombre del registro de vuelo para facilitar la identificación del dispositivo utilizado.
 
Problemas de corrupción del sistema de archivos USB (FAT16)
Cuando se interrumpe la alimentación en el momento equivocado, por ejemplo, un cable retirado mientras la unidad se está escribiendo, el chip flash puede quedarse a mitad del borrado, y el daño resultante en la tabla de archivos no es visible: la unidad se monta normalmente y simplemente reporta cada archivo como mucho más pequeño de lo que es. 
El nuevo firmware soluciona esto. FAT16 mantiene dos copias de la tabla de archivos, y el altímetro ahora comprueba ambas cada vez que se inicia, identifica la dañada comparándolas, y la reconstruye desde la copia buena antes de que ocurra cualquier otra cosa.
También ahora mide el espacio libre desde la tabla de archivos en lugar de sumar el tamaño de los archivos, por lo que el espacio perdido de esta manera ya no puede ocultarse, y verifica cada registro de vuelo leyéndolo nuevamente después de guardarlo; si esa verificación falla, el vuelo se mantiene en la memoria de respaldo y se reescribe en el próximo encendido en lugar de perderse.
Hemos probado esto en una unidad aquí retirando deliberadamente el cable durante escrituras: el daño ocurre como se esperaba y el altímetro se repara en el siguiente inicio, con los datos de vuelo intactos.  
 
Velocidad de registro de 300Hz
El Nano ahora soporta velocidades de registro de 50Hz, 100Hz, 200Hz, 250Hz y 300Hz, poniéndolo en línea con el Mercury.
La nueva configuración predeterminada es 250Hz con una relación híbrida de 1:6. Esto significa que registrará a 250Hz desde el lanzamiento hasta 5 segundos después de la apogea. Luego disminuye a 1/6 de velocidad ~41Hz hasta dentro de 20 metros del aterrizaje y salta nuevamente a 250Hz.
Como resultado, verás muchos más datos de tu acelerómetro y giroscopio donde importa.
Como siempre, toda esta configuración es totalmente ajustable según tus necesidades. 
 
Remontaje constante al expulsar el dispositivo USB o siempre dice configurando dispositivo en conexión
Esto fue causado por nuestra corrección de Android. Algunos dispositivos Android no se conectan nuevamente a un dispositivo USB si el cable se retiró, así que usamos una ID de serie USB aleatoria en la conexión.
Esto resultó en que dispositivos Windows y Apple lo vieran como un dispositivo nuevo cada vez que lo expulsas o desconectas.
La configuración segura para Android se ha movido a una opción que está desactivada de forma predeterminada. La mayoría de dispositivos Android seguirán funcionando bien sin activarla, pero si estás atrapado, aún está allí. 
 
Registros de archivo ACLZ (Formato de registro Altimeter Cloud)
Hemos estado desarrollando un nuevo formato de registro para nuestro ordenador de vuelo Jupiter para que los registros de vuelo se puedan transportar eficientemente a través de enlaces de comunicación celular y LoRa. Este nuevo formato mantiene cada bit de datos como lo hace un CSV pero utiliza entre 10 y 20 veces menos almacenamiento para lograrlo.
Estos registros no son legibles para humanos como un archivo CSV, sin embargo, te permiten almacenar al menos 10 veces más registros de vuelo en tu Nano.
Aún puedes subir registros usando el cargador de Altimeter Cloud; la verificación segura sigue funcionando, e incluso puedes descargar un CSV desde la página de vuelo en el sitio web de Altimeter Cloud. 
La elección es tuya - CSV sigue siendo el predeterminado y solo estableces la configuración log_format en el archivo de configuración de 0 a 1 para cambiar a ACLZ.
Su descripción oficial para quien esté interesado es: un registro de vuelo multivelocidad en columnas, codificado por delta y varint, firmado con Ed25519, en un único stream LZMA. 

image.png
Ejemplo del ACLZ de un lanzamiento de prueba en mi escritorio: estos registros de vuelo normalmente serían 300KB en CSV.

Eliminación del búfer de vuelo Memmove
El búfer previo al vuelo se desplaza constantemente a sí mismo con cada nueva entrada usando operaciones `memmove`. Esto utiliza un ancho de banda de RAM significativo y limita cuánto tiempo puede dormir el altímetro entre muestras.
Ahora usamos un puntero en su lugar y no movemos las muestras en absoluto.
Esto restringía el Nano previo al vuelo a alrededor de 260Hz de velocidad máxima, pero después de los cambios ahora puede técnicamente exceder 400-500Hz, aunque almacenar esa cantidad de datos es impractical.
Esto nos da más tiempo de sueño, operación confiable de 300Hz, y una vida de batería ligeramente mejor en todos los modos y velocidades. 

Bloque de datos persistente
Estamos modificando todo nuestro firmware y herramienta de actualización para soportar un bloque de 4KB de memoria flash que se puede leer y restaurar durante el proceso de instalación del firmware (borrado y actualización).
El Nano ahora soporta esto y actualmente restaurará su ID de vuelo interno y valores de calibración después de las actualizaciones.