usb7
精巧强大的USB外设

i.MX9352 CAN/OBD开发板

这是一款基于i.MX9352核心板的CAN/OBD开发板:

  • 主要特点是:Debian 12运行环境,使用C++、Python、或Rust做软件开发。
  • 可以通过汽车OBD口供电。
  • 典型应用是:C++和Python混合编程,编写C++代码从汽车OBD口读取CAN数据和DBC解码,编写Python代码将CAN数据上传到云端。关于CAN数据DBC解码的部分,C++的运行效率是Python的5倍以上;关于和云端接口的部分,使用Python可以大大地提高编写代码的效率和可靠性。带有DBC编码和解码的开发demo:https://github.com/usb7/CAN-demo-python
  • 可以远程访问,这让远程调试变得容易,尤其是当汽车在路上跑的时候。
  • 我们有经过市场验证的 C++ 代码,用于从 OBD/CAN 接口读取 CAN 数据,并使用 DBC 文件进行解码/编码。

image.png

image.2.png

硬件规格

  • NXP i.MX9352 双核 A55 @ 1.7GHz,1GB LPDDR4X RAM 和 16GB eMMC。
  • CAN/OBD 接口
  • 可以通过车辆的 OBD 接口供电
  • 2.4GHz WiFi,使用 ap6212/brcmfmac43430
  • (仅在中国测试,可能在欧盟有效)4G CAT1 模块,使用 quectel EC800M
  • (仅在中国测试,可能在欧盟有效)GPS,使用 quectel EC800M
  • 6 轴陀螺仪,使用 IM600
  • 扩展接口:
    • 4G 模块 SIM 卡槽 x1
    • USB Type-A x1
    • USB Micro-B OTG x1(用于上电或连接到电脑)
    • USB Micro-B 串口调试 x1(仅用于调试)
    • SD 卡槽 x1
    • JTAG x1
  • 操作系统:tinyDebian OS,原生Debian 12,具有丰富的CAN总线开发环境及工具,支持远程访问及调试。

配置WiFi并注册设备

  • 在浏览器输入www.usb7.cn,并微信登录。
  • 将开发板通过USB数据线连接到 macOS、Windows 或 Linux 计算机。见上图。
  • 大约 25 秒后,开发板完成启动,在电脑可以看到USB Ethernet已连接,在计算机浏览器中输入开发板 IP 地址 172.16.10.1 以访问它。
  • 按照浏览器中的说明将开发板连接到 WiFi。10 秒后,可以在浏览器看到开发板 WiFi IP 地址。
  • 点击右上角 “Go to register” 按钮注册。
  • 注册成功后,可以在浏览器看到如下内容: image.3.png

快速测试

  • 在浏览器点击Access按钮登录开发板,用户名:usb7,密码:usb7
sudo apt update
sudo apt install can-utils
sudo ip link set can0 up type can bitrate 500000
sudo ip link set up can0

# 发送CAN消息到can0接口,CAN ID为123,数据为DE AD BE EF
cansend can0 123#DEADBEEF
# 接收can0接口的所有CAN消息
candump can0
# 将can0接口的所有CAN消息记录到logfile.log
candump can0 -l logfile.log
# 重播logfile.log中的CAN消息到can0接口, 帧时间间隔10ms
canplayer -I logfile.log -g 10

# 从开发板下载文件
sz logfile.log
# 向开发板上传文件
rz

软件开发

  • Debian 12运行环境,使用Python和C++做二次开发
  • 可以C++和Python混合编程,C++用于解码CAN数据,Python用于将解码后的数据上传到云
  • 带有DBC编码和解码的开发demo:https://gitee.com/usb7/can-demo-python

附加信息

淘宝链接