Introduction
À partir de la version 3.4 du firmware , le firmware eGauge prend en charge les périphériques de stockage de masse USB sur les appareils dotés de ports USB (par exemple, EG4015 (Core) et EG4030 (Pro)). Les systèmes de fichiers Windows VFAT et Linux EXT3 sont tous deux compatibles. Lorsque l'appareil eGauge détecte un périphérique de stockage valide, un menu de stockage USB s'affiche automatiquement sur l'écran LCD. Ce menu permet d'accéder à différentes opérations, telles que :
- Création d'une sauvegarde de toutes les données eGauge
- Exportation des données vers un fichier CSV (valeurs séparées par des virgules).
- Mise à jour du micrologiciel de l'appareil.
- Éjecter (démonter) le périphérique de stockage afin qu'il puisse être retiré en toute sécurité.
Pour plus de flexibilité et afin de simplifier les opérations lorsqu'il est nécessaire d'effectuer la même tâche de stockage USB sur plusieurs périphériques, le firmware prend également en charge un fichier script nommé auto.run. Si ce fichier est présent à la racine du périphérique de stockage USB, il sera exécuté dès que le firmware détectera ce dernier. Le fonctionnement de ce fichier est détaillé ci-dessous.
Commandes de script
Dans les descriptions suivantes, les crochets indiquent les éléments facultatifs d'une commande. L'italique sert de marqueur pour les éléments variables.
backup [FILENAME_TEMPLATE]
Sauvegardez les données du périphérique eGauge dans le fichier spécifié par FILENAME_TEMPLATE. Cette chaîne peut contenir des références à des variables qui sont développées comme suit :
Référence variable |
S'étend à |
Exemple |
${DEVNAME} |
Nom de l'appareil eGauge |
eGauge1234 |
${SN} |
numéro de série eGauge |
1701260002 |
${TIME} |
date et heure actuelles |
20180411-1310 |
Si FILENAME_TEMPLATE est omis, le modèle :
backup-${DEVNAME}-${TIME}.bin
est utilisé par défaut.
Exportez les données du périphérique eGauge vers le fichier spécifié par FILENAME_TEMPLATE. Les données sont enregistrées au format CSV (valeurs séparées par des virgules).
export [PERIOD [GRAN [FILENAME_TEMPLATE]]]
Le modèle de nom de fichier peut utiliser les mêmes variables que la commande de sauvegarde. De plus, les variables suivantes sont prises en charge :
Référence variable |
S'étend à |
Exemple |
${PERIOD} |
période d'exportation |
cumul à ce jour |
${GRAN} |
granularité d'exportation |
heure |
PERIOD spécifie la période des données à exporter :
Période spécifiée |
Période couverte |
jour |
Les données des dernières 24 heures sont exportées. |
mois |
Les données des 31 derniers jours sont exportées. |
année |
Les données des 366 derniers jours sont exportées. |
tous |
Toutes les données sont exportées. |
dtd |
Données cumulées : exporter les données de minuit jusqu'à l'heure actuelle |
mtd |
Données cumulées depuis le début du mois : exporter les données du début du mois jusqu’à aujourd’hui |
cumul à ce jour |
Données cumulées depuis le début de l'année : exporter les données depuis le début de l'année jusqu'à aujourd'hui |
GRAN spécifie la granularité (résolution) avec laquelle les données sont exportées :
Granularité spécifiée |
Résolution |
seconde |
Deuxième résolution (ou meilleure disponible) |
min |
Résolution à la minute (ou meilleure disponible) |
quart |
Résolution de 15 minutes (ou meilleure disponible) |
heure |
Résolution horaire (ou meilleure disponible) |
jour |
Résolution du jour |
Notez que la base de données des appareils eGauge utilise en interne une granularité variable afin d'optimiser le stockage et la conservation des données sur de longues périodes. Concrètement, les données seconde par seconde sont généralement conservées uniquement pour la dernière heure, puis la granularité passe à la minute, jusqu'à ce que les données journalières soient disponibles pour la période la plus longue (par exemple, 60 ans). La granularité spécifiée dans la commande d'exportation correspond à la résolution la plus fine utilisée lors de l'exportation. Si la base de données ne contient pas les données à la résolution souhaitée, elles seront automatiquement exportées à la meilleure résolution disponible.
Il convient également de noter que les données journalières sont enregistrées chaque jour à minuit UTC. La date et l'heure exportées dans le fichier CSV sont converties au fuseau horaire de l'appareil. Par conséquent, l'heure affichée dans les données exportées peut varier selon que l'heure d'été ou l'heure d'hiver est en vigueur. Par exemple, dans le fuseau horaire des Rocheuses (États-Unis), les données journalières sont enregistrées à 18 h (18:00) pendant l'été et à 17 h (17:00) pendant l'hiver.
Mettez à jour le micrologiciel du périphérique à l'aide du fichier spécifié par la variable d'environnement PATH. Si PATH est omis, le fichier fw.bin sera utilisé.
update_fw [[PATH] force]
La mise à jour ne sera effectuée que si le fichier contient un micrologiciel plus récent que celui actuellement installé. Cependant, si l'option « force » est spécifiée après le chemin d'accès au fichier, la mise à jour sera effectuée quelle que soit la version actuellement installée sur l'appareil eGauge.
Après une mise à jour réussie, l'écran LCD indiquera que l'appareil doit être redémarré. L'opérateur devra confirmer cette opération en appuyant sur le bouton multifonctions ; l'appareil eGauge redémarrera alors automatiquement pour activer le nouveau micrologiciel.
eject
Cette commande éjecte (démonte) le périphérique de stockage USB et interrompt l'exécution du script. Une fois la commande terminée, l'écran LCD retrouve son fonctionnement normal et vous pouvez alors retirer le périphérique de stockage USB du port USB en toute sécurité.
Exemple de script
Dans l'exemple suivant, supposons que le nom du périphérique soit « eGauge1234 » et que toutes les commandes soient exécutées le 1er avril 2018 à 13h14.
# This is a comment. It has no effect on execution.
# OK, let's do a backup first:
backup # will be saved in "backup-eGauge1234-20180401-1314.bin"
# Export data to "data-eGauge1234-ytd-hour.csv":
export ytd hour data-${DEVNAME}-${PERIOD}-${GRAN}.csv
# Eject USB storage and return eGauge device to normal operation:
eject