esp32-isotp-ble-bridge

所属分类:自动驾驶
开发工具:C
文件大小:50KB
下载次数:2
上传日期:2022-11-03 17:59:28
上 传 者sh-1993
说明:  基于ESP32-IDF的BLE<->ISO-TP桥接器,面向Macchina A0硬件

文件列表:
CMakeLists.txt (240, 2021-12-12)
LICENSE (2255, 2021-12-12)
Makefile (187, 2021-12-12)
client (0, 2021-12-12)
client\client.py (2098, 2021-12-12)
client\requirements.txt (6, 2021-12-12)
main (0, 2021-12-12)
main\CMakeLists.txt (310, 2021-12-12)
main\Kconfig.projbuild (754, 2021-12-12)
main\ble_callbacks.c (5979, 2021-12-12)
main\ble_callbacks.h (172, 2021-12-12)
main\ble_server.c (26322, 2021-12-12)
main\ble_server.h (1383, 2021-12-12)
main\component.mk (178, 2021-12-12)
main\endian_helpers.c (460, 2021-12-12)
main\endian_helpers.h (205, 2021-12-12)
main\isotp.c (20645, 2021-12-12)
main\isotp.h (3256, 2021-12-12)
main\isotp_callbacks.c (902, 2021-12-12)
main\isotp_callbacks.h (167, 2021-12-12)
main\isotp_config.h (481, 2021-12-12)
main\isotp_defines.h (6226, 2021-12-12)
main\isotp_link_containers.c (858, 2021-12-12)
main\isotp_link_containers.h (836, 2021-12-12)
main\isotp_links.c (2039, 2021-12-12)
main\isotp_links.h (2558, 2021-12-12)
main\isotp_tasks.c (3427, 2021-12-12)
main\isotp_tasks.h (78, 2021-12-12)
main\isotp_user.h (408, 2021-12-12)
main\main.c (5063, 2021-12-12)
main\messages.h (266, 2021-12-12)
main\mutexes.h (129, 2021-12-12)
main\periodic_messages.c (581, 2021-12-12)
main\periodic_messages.h (284, 2021-12-12)
main\queues.h (134, 2021-12-12)
main\task_priorities.h (630, 2021-12-12)
main\twai.c (2442, 2021-12-12)
... ...

# ISOTP BLE Bridge The goal of this project is to build a native Macchina A0 firmware which can bridge BLE to ISOTP. This project is built using the ESP32 native toolchain ESP-IDF (based on FreeRTOS) and can be compiled using `idf.py build` (typically after `. $IDF_PATH/export.sh`). It can be flashed after building using `idf.py flash` and serial debugging logs can be viewed with `idf.py monitor`. Currently, the project works, with a simple example client in the `client` directory. # Logs Comment out `CONFIG_LOG_DEFAULT_LEVEL_INFO=y` and set `CONFIG_LOG_DEFAULT_LEVEL_DEBUG=y` in `sdkconfig` then recompile to turn on debug level logs. # A few notes about Macchina A0 Clever, dead simple board - a CAN transceiver, voltage regulators, and an ESP32-WROVER module with ESP32 revision 3 core. Tons of resources to use, including 8MB of SPI SRAM, 16MB of Flash. * GPIO 5 is CAN_TX * GPIO 4 is CAN_RX * GPIO 21 is attached to the "S" (Silent) pin on the CAN transceiver. It must be pulled LOW to allow the CAN transceiver to communicate. * GPIO 13 switches power to the WS2812 LED * GPIO 2 is the WS2812 LED control line. * GPIO 35 is attached to voltage sense for the VIn. The multipliers and formula can be found here. https://github.com/rnd-ash/Macchina-J2534/blob/master/firmware/pt_device_a0.cpp#L30 * GPIO 32 (CS), 19 (DI), 18 (CLK), and 23 (DO) are supposedly attached to a W25N01GV 1Gbit (128MB!) flash chip in the schematic, but I think this is an option purchased separately - `A0 can also be custom ordered with additional solder down memory` And that's about it! ESP32 implements a clone of the NXP CAN transceiver, which has been renamed to TWAI, presumably due to copyright reasons or because the transceiver IP isn't actually licensed. The TWAI drivers built into "ESP-IDF" seem to work well.

近期下载者

相关文件


收藏者