autowp / arduino-canhacker

CanHacker (lawicel) CAN adapter on Arduino + MCP2515
MIT License
383 stars 114 forks source link

компиляция для ESP32 #18

Open iDenko opened 2 years ago

iDenko commented 2 years ago

Здравствуйте, Дмитрий. Хотел запустить ваш проект на ESP32, "прикрутить" к нему bluetooth. При компиляции скетча дает ошибку по библиотекам, выбираешь плату Nano3 - ошибок нет. Я так понимаю надо править библиотеку(и)? Возможно сделать версию для ESP32/ESP8266?

dobrik commented 2 years ago

Проверяйте пины куда подключали.

Kabron287 commented 2 years ago

Присоединяюсь. Неплохо бы избавиться от MCP2515 и задействовать аппаратный CAN ESP32.

Kabron287 commented 2 years ago

Я тут попробовал скрестить ужа с ежом. С lineReader похоже все ок, а вот в canHacker надо как то данные пересылать и принимать. Можт Дмитрий глянет, там вроде всего-ничего осталось дописать. По крайней мере пакеты принимает.

include

include

include

include

int packSize = 0;

define t digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));

CanHackerLineReader lineReader = NULL; CanHacker canHacker = NULL;

volatile bool canDataReceived = false;

void setup() { Serial.begin(115200);

// Serial.println("CAN Sniffer"); CAN.setPins(25, 27);

while (!CAN.begin(500E3)) {
    Serial.println("Starting CAN failed!");
    delay(1000);
}
// register the receive callback
CAN.onReceive(onReceive);

canHacker = new CanHacker(&Serial, NULL, NULL);
lineReader = new CanHackerLineReader(canHacker);

pinMode(LED_BUILTIN, OUTPUT);

}

void onReceive(int packetSize) { canDataReceived = true;
packSize = packetSize; t }

void loop() { CanHacker::ERROR error;

if (canDataReceived)
{
    Serial.println(packSize);
    error = canHacker->processInterrupt();

    canDataReceived = 0;
    Serial.println(error);
}

}

void serialEventRun() { lineReader->process(); }

Kabron287 commented 2 years ago

В качестве трансивера TJA1051

Kabron287 commented 2 years ago

Solution here: https://github.com/mintynet/esp32-slcan

sboicu commented 1 year ago

Solution here: https://github.com/mintynet/esp32-slcan

I have tried this with CAN Hacker but is not woring. arduino+mcp works well. esp32+sn65hvd23x does not wor well.

Any idea?

sboicu commented 1 year ago

nevermind, ignore my previous message, I managed to get it working.

junkandshit commented 1 year ago

nevermind, ignore my previous message, I managed to get it working.

can you share code for esp32 to work with canhacker app?

noxy128 commented 1 year ago

nevermind, ignore my previous message, I managed to get it working.

How?