Índice:
- Etapa 1: Configuração e conexão de hardware
- Etapa 2: Instale o software no Arduino
- Etapa 3: conecte-o e comece a recuperar os dados
- Etapa 4: os dados e o que tudo isso significa
- Etapa 5: assista ao vídeo
Vídeo: Hackers observados no Studio CAN-BUS V2.0 - Primeiros passos: 5 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:38
Este instrutível é destinado a iniciantes que já conhecem o Arduino. O saber inicial inicial é sempre uma dor e consome muito tempo em qualquer projeto. Mas, até que você saiba como se virar, quase sempre gostaria de ter alguém para lhe mostrar o básico.
Neste instrutível iremos retornar alguns dados CAN-BUS do seu veículo.
E não se preocupe! Vou direto ao ponto, sem divagar e usar palavras da moda para me fazer parecer um hacker inteligente:-)
Eu pessoalmente recomendo os shields CAN-BUS Seeed Studio. Realmente não posso falar por nenhuma das outras marcas, mas o escudo CAN-BUS da SeeedStudio me serviu muito bem.
Observação importante: a blindagem can-bus é obrigatória. Eu fiz esta observação porque muitas vezes as pessoas perguntam se você deve usar um escudo CAN-BUS. A blindagem possui um MCP2515 (Controlador CAN) e um MCP2551 (Transceptor) que processará os dados CAN-BUS para a porta serial do seu Arduino.
O Hardware Requerido.1. Arduino UNO - Qualquer arduino compatível será suficiente. Eu usei este
2. Escudo CAN-BUS SeeedStudio. Peguei diretamente do SeeedStudio aqui está o link
3. Alguns fios para conectar o CAN-BUS
4. um veículo de onde você pode recuperar dados
O software necessário1. Arduino IDE, duh! Obviamente:-)
2. Biblioteca CAN-BUS SeeedStudio. Pode ser baixado do GIT Hub
Algumas informações extras vitais se você quiser ler mais sobre o escudo CAN-BUS SeeedStudio.
Vamos começar!
Etapa 1: Configuração e conexão de hardware
Vamos começar com a parte mais difícil. Precisamos encontrar um lugar em seu veículo onde possamos acessar o CAN-BUS. Não há muito que eu possa fazer por você aqui, você tem que descobrir por si mesmo. No meu caso, conectei-me ao CAN-BUS por meio do rádio. Sim! o rádio. Os veículos com áudio integrado do carro geralmente definem a iluminação do display do sistema estéreo do carro com base na configuração do farol do veículo para dirigir à noite. Isso geralmente é feito por meio do CAN-BUS interno.
Usei um cabo extensor USB com uma extremidade USB macho e uma USB fêmea. Então, simplesmente cortei ao meio e soldei o lado feminino no conector do rádio. Você pode querer comprar um conector macho fêmea para o seu tipo de rádio, dessa forma você não precisa conectar a fiação do seu veículo e anular a garantia ou potencialmente causar risco de incêndio.
E então a parte masculina eu conectei ao escudo CAN-BUS SeeedStudio como mostrado na imagem. Desta forma, posso conectar / desconectar quando necessário.
Dica: Use fio vermelho para CAN-H e preto para CAN-L
Etapa 2: Instale o software no Arduino
Baixe a Biblioteca SeeedStudio do wiki SeeedStudio CAN-BUS.
github.com/Seeed-Studio/CAN_BUS_Shield
Instale a biblioteca conforme mostrado nas fotos.
No Arduino IDE, selecione Sketch Include Library - Add.zip Library.
Depois de adicionar a biblioteca, feche o IDE do Arduino e abra-o novamente. Agora você será capaz de carregar alguns dos exemplos do Menu Arquivo Arquivo Exemplos Proteção CAN-BUS Verificação de recebimento
Para este tutorial, carregue o exemplo de verificação de recebimento.
Importante!
O seguinte irá requerer algumas tentativas e erros.
Eu usei meu Jeep JK 2010 Rubicon para recuperar dados e seu ônibus interno funciona a 125Kbs.
Na seção de configuração, onde se lê
enquanto (CAN_OK! = CAN.begin (CAN_500KBPS)) Tive que mudar para
enquanto (CAN_OK! = CAN.begin (CAN_125KBPS))
Se você errar, não será possível recuperar dados legíveis. Na maioria dos casos, incluindo o meu, seu veículo ficará maluco. I. E o cluster com luz acesa como uma árvore de Natal e os limpadores começarão a se mover. porque o escudo do barramento can está corrompendo o barramento.
Etapa 3: conecte-o e comece a recuperar os dados
Antes de conectar, faça uma verificação de integridade antes de conectá-lo ao veículo. A última coisa que você quer fazer é enviar energia para seu CAN-BUS, potencialmente explodindo a ECU do seu veículo.
Não fiz uma verificação de integridade e só depois de perceber que não estava recebendo dados é que conectei o USB do laptop diretamente na alimentação USB do Arduino. Felizmente, nada aconteceu.
Nas fotos desta etapa, usei meu laptop Lenovo carregado com Linux Mint. Em geral, você pode usar qualquer sistema operacional para se conectar à porta serial do seu Arduino, 1. Configure o laptop em seu veículo e ligue a blindagem CAN-BUS do Arduino com um cabo USB.
2. Inicie o Putty ou o monitor serial do Arduino (eu prefiro o Putty). Quando estiver conectado, você deverá ver uma mensagem no console serial informando que ele conseguiu inicializar o escudo Can-Bus.
3. Ligue o veículo. Não é necessário iniciar enquanto a chave estiver na posição ligada.
4. Conecte o Arduino ao CAN-BUS. No momento em que estiver conectado, os dados começarão a ser transmitidos para o console.
Etapa 4: os dados e o que tudo isso significa
Quando os dados forem recuperados, eles serão despejados no seguinte formato HEX.
ID, BIT1, BIT2, BIT3, BIT4, BIT5, BIT6, BIT7, BIT8
O ID geralmente representa um Nó dentro do seu veículo.
Vamos dar um exemplo simples. (O que se segue é inventado e não real, apenas um exemplo)
ID do Nó de Ar Condicionado = 0x402TURN AIRCON OFF = 13TURN AIRCON ON = 14 AJUSTE VENTILADOR DE AIRCON PARA BAIXO = 7C AJUSTE VENTILADOR DE AIRCON PARA MÉDIO 8C AJUSTE VENTILADOR DE AIRCON PARA ALTO 9C
Portanto, se ligarmos o ar condicionado e configurá-lo para médio, a mensagem será semelhante a esta 0x402, 13, 8C
o mesmo vale para outros nós, exemplo Central LockingCentral Locking ID = 0x503LOCK todas as portas = 14
Então, se você pressionar o botão para trancar todas as portas, a mensagem ficará assim
0x502, 14
Algumas notas extras.
Algumas mensagens são orientadas pelo estado e algumas ou momentaneamente.
Exemplo 1. Os faróis dianteiros são conduzidos pelo estado. Quando você define uma chave no veículo para uma posição específica, o nó continuará transmitindo a mensagem continuamente. Se você teve que interferir com o CAN-BUS envie uma mensagem para desligar os faróis dianteiros. Ele desligará brevemente e, em seguida, ligará novamente porque o nó onde a chave está configurada para ligar os faróis enviará novamente uma mensagem para ligá-lo.
Exemplo2. Pulando faixas em sua unidade principal de rádio. quando você pressiona um botão e é um botão momentâneo que fará e imediatamente interromper o circuito quando você o deixar, ele enviará uma mensagem para pular a faixa e nunca mais até que você peça para pressionar o botão novamente.
Normalmente, os botões momentâneos são os mais úteis porque você pode controlar os recursos em seu veículo enviando um único comando sem se preocupar se seu comando será sobrescrito. Onde os recursos conduzidos pelo estado serão sobrescritos indefinidamente.
Algumas dicas e ideias
Vendo que agora você é capaz de despejar os dados, você pode usá-los para construir seus próprios circuitos do Arduino que irão reagir com base nas mensagens vistas no CAN-BUS. Por exemplo. Digamos que você instale luzes spot após o mercado. Sem ter que cavar em sua fiação existente, você pode instalar seus faróis de forma independente e ligá-los apenas quando seu Arduino detectar uma mensagem no CAN-BUS.
Enviando dados para o CAN-BUS
Se você seguiu as instruções no início deste manual, você instalou as bibliotecas SEEEDStudio. No IDE do Arduino, há alguns exemplos que você pode experimentar.
Conhecer o ID e a mensagem CAN0-BUS do nodo com o qual deseja interagir.
Infelizmente, essa não é uma tarefa muito fácil. Mas aqui está uma ideia. Use o recurso de registro do Putty e despeje todos os dados da sessão em um arquivo. Deixe o Arduino monitorar o barramento de lata por cerca de 5 minutos e depois salve o log.
Em seguida, inicie uma nova sessão e comece a despejar os dados. Mas desta vez, enquanto despeja os dados, pressione um botão. Não pressione mais de um botão. Pressione o botão algumas vezes para garantir que capturou o botão pressionado.
Em seguida, use algum tipo de ferramenta de comparação e compare o arquivo para detectar as diferenças. O Excel funciona muito bem para isso.
Alguns códigos que você pode tentar
Se você tiver o mesmo modelo Jeep 2010 Rubicon que eu (tenho certeza que o abaixo também funcionará para os modelos '07, '08', 09)
Você pode tentar as seguintes mensagens. Carregue os exemplos de envio do menu de exemplos do Arduino e as alterações foram relevantes.
Engate o Locker Traseiro: CAN.sendMsgBuf (0x2B0, 0, 4, stmp);
Piscador esquerdo ligado: CAN.sendMsgBuf (0x2A8, 0, 6, stmp);
Piscador direito ligado: CAN.sendMsgBuf (0x2A8, 0, 6, stmp);
ESP ligado / desligado: CAN.sendMsgBuf (0x2B0, 0, 4, stmp);
No meu próximo instrutível estarei enviando alguns dados para o CAN-BUS do meu Jeep para demonstrar como você pode interferir nele.
Boa sorte!
Etapa 5: assista ao vídeo
Veja o vídeo para mais vantagens do CAN-BUS!
Recomendado:
Pringles Can Guitar Amp: 7 etapas
Pringles Can Guitar Amp: às vezes eu quero pegar a guitarra elétrica apenas para tocar alguns riffs sem ter que configurar meu amplificador normal. Então, eu queria criar um amplificador de guitarra barato, fácil de construir e muito simples: o Pringles Can Amp
Tacômetro / Medidor de varredura usando Arduino, OBD2 e barramento CAN: 8 etapas
Tacômetro / Medidor de varredura usando Arduino, OBD2 e ônibus CAN: Qualquer proprietário de Toyota Prius (ou outro veículo híbrido / especial) saberá que seus painéis podem estar faltando alguns mostradores! Meu prius não tem RPM do motor ou medidor de temperatura. Se você é um cara de desempenho, você pode querer saber coisas como o tempo de avanço e
Hackeie seu carro com o terminal Wio e o ônibus CAN: 7 etapas
Hackeie seu carro com terminal Wio e CAN Bus: Se você tem algum conhecimento de programação CAN Bus e Arduino e deseja hackear seu carro, então estes instructables podem fornecer uma solução. Quanto ao motivo de você querer hackear seu carro, eu não sei, mas isso é realmente uma coisa interessante. Este pr
Jacques Pierre - a abóbora de hackers controlados pela Internet: 6 etapas
Jacques Pierre - a abóbora hacker controlada pela Internet: Vamos comemorar o Halloween com uma abóbora hacker controlada pela internet chamada Jacques Pierre! Abaixo uma visão geral do conteúdo: Vídeo do projeto Luzes de escultura de abóbora + bigode Servos com facas Massa de sal LetsRobot Vamos começar a hackear
Módulo de segurança e hackers DIY para seu laptop (TfCD): 7 etapas (com imagens)
Módulo de segurança e hackers DIY para seu laptop (TfCD): notícias regulares sobre hackers em grande escala e vigilância governamental fazem com que um número crescente de pessoas cole fitas adesivas em suas webcams. Mas por que é que em 2017 uma fita boba é a única coisa que pode garantir que ninguém está nos assistindo?