Last year I ordered an ESP32, a chip that got quiet a lot of attention because it is small, affordable and comes with a free SDK. I worked with the predecessor, the ESP8266 and I think that the ESP32 is way easier to use and the SDK (called ESP-IDF) is much more powerful compared with the ESP8266.
Time to get hands on the ESP32 as I want a CAN/CANopen-Wifi bridge. The first few months nothing happend and I already thought that the chip will never arrive but finally I got mail from China. I started with a simple "Hello world" but soon found that there is no CAN driver included in the SDK. After some research I found that there is a CAN port and that the CAN module on the ESP32 is SJA1000 compatible.I stripped the driver to work out of the box with the latest SDK version. The code is not perfect (some magic numbers etc.) but should be a good starting point for an own driver.
As I do not want to go to jail because you build something with the code and someone dies:
This software is a PROTOTYPE version and is not designed or intended for use in production, especially not for safety-critical applications! The user represents and warrants that it will NOT use or redistribute the Software for such purposes. This prototype is for research purposes only. This software is provided "AS IS," without a warranty of any kind.
I recently picked up some QTPY ESP32-C3 boards from Adafruit. After reading up a little I found out it has CAN capability in the processor. I do a lot of work with CAN, particularly J1939 and NMEA 2000 and was hoping to make this board able to speak CAN (adding a transceiver later but for now just processor-processor). Micropython doesn't currently support it, though it does have CAN on other processors. At a minimum I'd like to do CAN with Arduino as a start. Although I haven't verified the pins are available on the board for CAN, which will be another issue. Any tips or links out there?