Skip to Content

Comando CXDL - Envio Automático de Datalog

Configura o envio automático dos registros do datalog (LOG) ao destino especificado.


Para que serve?

Caso de usoDescrição
🔄 Sincronização automáticaEnviar histórico ao reconectar
📶 Recuperação de dadosTransmitir posições armazenadas offline
📡 Múltiplos canaisAlternar entre WiFi/GPRS/BLE
🔁 Tentativas configuráveisControle de persistência de envio

Comandos

Configurar envio automático

SCXDL<Ena>,<Dst>,<Reint>,<Time>,<Order>

O 5º campo Order (ordem de esvaziamento do datalog) está disponível a partir do firmware v1.09.23: 0 = FIFO (mais antigo primeiro, padrão), 1 = LIFO (mais recente primeiro). É opcional e retrocompatível: comandos com 2 ou 4 campos não alteram o valor de Order, que persiste em NVS (CXDL.ORD).

Cancelar envio pendente

SCXDLE

Cancela o envio de relatórios pendentes mas mantém os dados no LOG.

Consultar

QCXDL

Resposta

RCXDL<Ena>,<Dst>,<Reint>,<Time>,<Order>

QCXDL devolve o campo Order no final da configuração.


Parâmetros

ParâmetroDescriçãoValoresPadrão
EnaHabilitação0 = Desabilitado, 1 = Habilitado0
DstDestino de envioTRM, GPRS, WIF, BTH, ALL-
ReintTentativas0 = Infinito, 1-999 = Quantidade0
TimeTempo entre tentativasDécimos de segundo (100 = 10s)0
OrderOrdem de esvaziamento (opcional, v1.09.23+)0 = FIFO, 1 = LIFO0

Destinos

DestinoDescrição
TRMTerminal serial (USB/RS232)
GPRSConexão celular
WIFWiFi
BTHBluetooth
ALLAlterna entre WIF e GPRS automaticamente

O destino ALL mantém o canal aberto até que seja impossível continuar, depois muda para o outro destino automaticamente.


Exemplos

Envio automático por WiFi sem limite

>SCXDL1,WIF,0,0<

Envia todos os registros do LOG por WiFi, tentando infinitamente sem pausa.

Envio por GPRS com 3 tentativas a cada 10 segundos

>SCXDL1,GPRS,3,100<

Tenta enviar 3 vezes com 10 segundos de espera entre tentativas.

Envio alternado WiFi/GPRS

>SCXDL1,ALL,0,50<

Alterna entre WiFi e GPRS, tentando infinitamente a cada 5 segundos.

Esvaziamento em ordem LIFO (mais recente primeiro)

>SCXDL1,GPRS,0,50,1<

Envia por GPRS priorizando os registros mais recentes do LOG (Order=1).

Alterar apenas a ordem mantendo o resto

>SCXDL1,GPRS,0,50,0< // volta a FIFO

Um comando com 2 ou 4 campos (por ex. >SCXDL0< ou >SCXDL1,GPRS,3,100<) mantém o Order previamente configurado em NVS.

Cancelar envio em curso

>SCXDLE<

Resposta: >RCXDLEOK<


Estado runtime (QCXDLST)

A partir do firmware v1.09.23, QCXDLST devolve o estado interno do motor de envio para diagnóstico remoto.

>QCXDLST< >RCXDLST 0,1024,2048,1536,12,1,0< // Order=0 (FIFO), RefMin=1024, RefMax=2048, ScanRef=1536, // Pending=12, Enable=1, Reset=0
CampoDescrição
OrderOrdem de esvaziamento ativa (0=FIFO, 1=LIFO)
RefMinReferência mínima pendente no LOG
RefMaxReferência máxima pendente no LOG
ScanRefReferência de varredura atual
PendingRegistros pendentes de envio
EnableMotor de envio ativo (0/1)
ResetFlag de reinício do motor (0/1)

A resposta RCXDLST leva um espaço após o prefixo (RCXDLST ...), diferente de RCXDL (sem espaço). Leve isso em conta ao parsear ambas as respostas.


Fluxo de Operação

  1. Configurar destino:

    >SCXDL1,TRM,1,1<
  2. Gerar registro no LOG:

    >GCQ00H;@LOG<
  3. O equipamento envia automaticamente:

    >RCQ00000000000000-2778128-064258630020907F0000000000000130606FFFF1518;#0002;ID=869084063093789;*30<
  4. Desabilitar envio automático:

    >SCXDL0<

Compatibilidade

💾Firmware:v1.05.00
💾Firmware v1.05.00
SP-IOT
SM-IOT
Campo Order e QCXDLST desde v1.09.23

Ver Também

Última atualização