Comando CXCAN - Configuração de Bus CAN
Configura o modo de uso do módulo CAN integrado. A captura de dados e a análise posterior dependem do protocolo, da velocidade do barramento e do formato de identificador usado pelo veículo.
Para que serve?
| Caso de uso | Descrição |
|---|---|
| ⛽ Consumo de combustível | Ler dados de ECU do veículo |
| 🚗 Dados do motor | RPM, temperatura, pressão |
| 📊 Telemetria avançada | Informação OBD-II / J1939 |
| 🚚 Frotas de transporte | Monitoramento de caminhões e ônibus |
Comandos
Configurar
SCXCANa,bbbb,cc..cc,dd,eee,fConsultar
QCXCANResposta
RCXCANa,bbbb,cc..cc,dd,eee,fParâmetros
| Campo | Descrição | Valores permitidos | Padrão |
|---|---|---|---|
| a | Habilitação do módulo CAN | 0 = desabilitado · 1 = habilitado | 0 |
| bbbb | Velocidade do barramento | 250K · 500K · 1M | 500K |
| cc..cc | Protocolo | OBDII · J1939 · IESCAN · LISTEN · PLAIN | OBDII |
| dd | Formato do identificador CAN | 11 (padrão) · 29 (estendido) | 11 |
| eee | FuelTripSoftEnable | 0 = cálculo desabilitado · 1 a 150 = habilitado com fator percentual | 0 |
| f | FuelTripSoftEngineType | 0 = gasolina · 1 = diesel | 0 |
Os campos são posicionais e truncáveis: aplicam-se apenas os que estiverem presentes, da esquerda para a direita. >SCXCAN1< altera somente a habilitação e mantém o resto; >SCXCAN1,500K,OBDII< altera os três primeiros. Não é possível pular um campo intermediário: para chegar a dd é preciso enviar também bbbb e cc..cc.
Velocidade do barramento (bbbb)
O sufixo indica a unidade: K = Kbaud, M = Mbaud.
| Valor | Velocidade | Uso típico |
|---|---|---|
250K | 250 Kbps | Veículos pesados com J1939 (caminhões, ônibus, máquinas) |
500K | 500 Kbps | A maioria dos veículos leves com OBD-II |
1M | 1 Mbps | Barramentos CAN de alta velocidade (desde o firmware v1.09.21) |
Somente 250K, 500K e 1M programam o barramento de verdade. O firmware também aceita e
persiste 25K, 50K, 100K e 125K: o comando responde normalmente e QCXCAN devolve o valor
salvo, mas ao inicializar o controlador não há timing para essas velocidades e o barramento fica
funcionando a 500 Kbit. Ou seja, configurar 125K parece ter funcionado e o equipamento não lê
nenhum quadro.
Um valor fora dessa lista (por exemplo 800K) é descartado e o barramento mantém a velocidade
anterior.
A velocidade deve coincidir exatamente com a do barramento do veículo: se não coincidir, o equipamento não lê nenhum quadro.
Protocolo (cc..cc)
| Valor | O que faz | Quando usar |
|---|---|---|
OBDII | Interroga a ECU com PIDs OBD-II padrão e adquire VIN e códigos de falha | Automóveis, picapes e utilitários leves |
J1939 | Decodifica PGNs do padrão SAE J1939 | Caminhões, ônibus, máquinas agrícolas e rodoviárias |
IESCAN | Decodifica quadros do padrão IESCAN | Veículos com interface IESCAN |
LISTEN | Escuta passiva: o transceptor entra em modo listen-only e não transmite nada ao barramento | Diagnóstico e sniffing sem risco de perturbar o barramento do veículo |
PLAIN | Recepção de quadros brutos sem decodificação por protocolo | Veículos lidos com parsers próprios via CXECU |
O protocolo se escreve OBDII (com dois is), não OBD2 nem OBD-II. Um valor não reconhecido é descartado silenciosamente: o equipamento mantém o protocolo anterior e a leitura não funciona como esperado. O mesmo vale para J1939, IESCAN, LISTEN e PLAIN, sempre em maiúsculas.
Formato do identificador (dd)
| Valor | Formato | Uso típico |
|---|---|---|
11 | Identificador padrão (CAN 2.0A, 11 bits) | Veículos leves com OBD-II |
29 | Identificador estendido (CAN 2.0B, 29 bits) | J1939 e barramentos de veículos pesados |
O único valor que ativa o formato estendido é 29. Qualquer outro valor é interpretado como 11.
FuelTrip por software (eee, f)
Quando o veículo não publica vazão de combustível, o equipamento pode estimá-la por software a partir dos sinais do motor.
- eee (FuelTripSoftEnable):
0desabilita o cálculo. Um valor de1a150habilita e define o fator percentual de correção:100equivale a um fator de x1,00,120a x1,20 e80a x0,80. Serve para calibrar a estimativa contra o consumo real medido. Valores maiores que150são descartados. - f (FuelTripSoftEngineType):
0para motor a gasolina,1para diesel.
O resultado é consultado com CAN05 e alimenta o módulo TRIP.
Como verificar a configuração
SCXCAN sempre responde com a configuração efetiva que ficou gravada, no mesmo formato de QCXCAN. Comparar o que foi enviado com o que voltou é a forma de confirmar que todos os parâmetros foram aceitos.
>SCXCAN1,500K,OBD2<
// Protocolo escrito errado
>RCXCAN1,500K,J1939,29,0,0<
// O equipamento manteve o protocolo anterior| Resposta | Significado |
|---|---|
RCXCANa,bbbb,cc..cc,dd,eee,f | Configuração efetiva após aplicar o comando |
RCXCANERR | O comando chegou sem nenhum parâmetro |
RCXCAN NA | O modelo não tem módulo CAN (ver Compatibilidade) |
Exemplos
Configurar CAN com J1939 a 250K
>SCXCAN1,250K,J1939,29,0,0<
// 1 → Habilitado
// 250K → Velocidade 250 Kbaud
// J1939 → Protocolo para veículos pesados
// 29 → Identificador estendido
// 0,0 → FuelTrip por software desabilitadoUma vez configurado o protocolo/velocidade, não é necessário reconfigurá-lo cada vez que se queira habilitar ou desabilitar a leitura.
Configurar CAN com OBD-II a 500K (a configuração mais comum)
>SCXCAN1,500K,OBDII,11,100,0<
// 500K → Velocidade 500 Kbaud
// OBDII → PIDs OBD-II padrão
// 11 → Identificador padrão
// 100 → FuelTrip por software habilitado, fator x1,00
// 0 → Motor a gasolinaConfigurar CAN a 1 Mbps
>SCXCAN1,1M,J1939,29,0,0<
// 1M → Velocidade 1 Mbps (1000 Kbaud), desde o firmware v1.09.21Escuta passiva para diagnóstico
>SCXCAN1,500K,LISTEN,11,0,0<
// LISTEN → O transceptor não transmite: não interfere no barramento do veículoHabilitar leitura
>SCXCAN1<Desabilitar leitura
>SCXCAN0<Erros frequentes
| Envia-se | O que acontece | Correto |
|---|---|---|
OBD2, obdii, OBD-II | Protocolo não reconhecido: fica o anterior | OBDII |
800K | Velocidade não reconhecida: fica a anterior | 250K, 500K ou 1M |
25K, 50K, 100K, 125K | São aceitos e salvos, mas o barramento fica a 500 Kbit | 250K, 500K ou 1M |
>SCXCAN1,,,29< | Campos vazios não pulam posições | >SCXCAN1,500K,OBDII,29< |
| Velocidade diferente da do barramento | O equipamento não recebe nenhum quadro | Verificar a velocidade real do veículo |
Compatibilidade
O Rinho Zero IoT não inclui transceptor CAN: o comando responde RCXCAN NA. Para ler o barramento do veículo é preciso usar Spider IoT ou Smart IoT.
Conexão física do barramento (CAN-H / CAN-L) por modelo:
Veja Também
- Comandos CANxx - Consulta dos dados lidos do barramento
- Comando ECU - Leitura de valores de ECU
- Comando CXECU - Parsers de sinais CAN sob medida