ophub / amlogic-s9xxx-armbian

Support for Armbian in Amlogic, Rockchip and Allwinner boxes. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l, rk3588, rk3568, rk3399, rk3328, h6, etc.
GNU General Public License v2.0
6.27k stars 2.02k forks source link

CANBUS communication is not supported #1147

Closed diyjack0326 closed 1 year ago

diyjack0326 commented 1 year ago

Standard chat template, no routine, no chat. 标准聊天模板,无套路不聊天。

**Device Information | CM311-1a YST

**Armbian Version | Armbian_23.02.0_amlogic_s905l3a_jammy_5.15.98_server

**Describe the bug | After I brush the firmware of the TV box, I will use it as the upper computer of the 3D printer. After I brush the armbian, I can use the USB communication protocol normally. When I use the CANBUS communication protocol, it shows that I am not allowed to use this communication protocol. Through communicating with 3D printer enthusiasts, I suspect that the firmware kernel does not support CANBUS protocol communication, and need to compile the kernel for modification. However, I have limited ability and don't know much about kernel compilation, so please check whether you can compile the kernel and update the firmware package so that it can support canbus protocol communication.

Describe the problem in detail and attach screenshots if necessary. 详细描述问题,并在必要时附上屏幕截图。

Error report picture报错图片

ophub commented 1 year ago

https://github.com/ophub/amlogic-s9xxx-armbian/tree/main/compile-kernel/tools/config

这个内核的默认设置,你问一下你们小伙伴,要选哪个。

diyjack0326 commented 1 year ago

可以把5.15默认全写进去吗?

ophub commented 1 year ago

全是什么?

diyjack0326 commented 1 year ago

把默认配置都写进去

qinghua907 commented 1 year ago

我也是用N1当3D打印机的上位机,但是现有系统内核不支持canbus,所以如果能编译支持canbus的固件,万分感谢

ophub commented 1 year ago

我不知道需要添加什么,你们问问同行,内核配置模板里要启用哪个选项。

diyjack0326 commented 1 year ago

如果电视盒子需要支持canbus,内核需要启用CAN总线子系统(CAN bus subsystem)和CAN设备驱动(CAN device drivers)。具体步骤如下:

在内核配置中启用CAN总线子系统。可以通过以下命令进入内核配置界面:

bash Copy code make menuconfig

在内核配置界面中,勾选“Networking support” -> “CAN bus subsystem support”选项。然后保存并退出内核配置界面。

  1. 在内核配置中启用CAN设备驱动。可以通过以下命令进入内核配置界面:

bash Copy code make menuconfig

在内核配置界面中,勾选“Networking support” -> “CAN bus subsystem support” -> “CAN device drivers”选项。然后保存并退出内核配置界面。

  1. 如果需要支持特定的CAN控制器芯片,还需要在内核配置中启用相应的CAN控制器驱动。 完成以上步骤后,重新编译内核并安装即可支持CAN总线和CAN设备。 这是我问到的内容,不知道有没有有帮助。
ophub commented 1 year ago

你用的哪个系列的内核?5.15.y系列?

diyjack0326 commented 1 year ago

是的

diyjack0326 commented 1 year ago

QQ截图20230311170323 这是另外一位小伙伴提供的方法,但是我不会操作。。。

ophub commented 1 year ago

我看到目前5.4的内核里有,你更新到这个系列的内核试试

armbian-update -k 5.4.234

diyjack0326 commented 1 year ago

在默认设置中1652行这个,小伙伴说就是没启用canbus QQ图片20230311171823 这个开启后好像还有子选项需要测试

diyjack0326 commented 1 year ago

好的 我先试一下

ophub commented 1 year ago

https://github.com/ophub/amlogic-s9xxx-armbian/blob/afc41bcc0251717c1b99567f80b6ec371827dc16/compile-kernel/tools/config/config-5.4#L1618-L1655

在5.4里已经有了,你先试试这个可以不,能行的话我再给你编译个5.15的

diyjack0326 commented 1 year ago

谢谢 正在更新

ophub commented 1 year ago

armbian-update -k 5.15.99 -v dev

添加了CANBUS的 5.15.99 的内核编好了,使用上面这个命令更新下试试。

diyjack0326 commented 1 year ago

更新5.15.99以后开不了机了....我直接重新刷一遍吧

diyjack0326 commented 1 year ago

不行 大佬在线更新以后开不了机了,无限重启,盒子红灯一闪一闪,到不了绿灯

ophub commented 1 year ago

不用重装。因特殊原因导致的更新不完整等问题,造成系统无法从 eMMC 启动时,可以从 USB 中启动任意内核版本的 Armbian 系统,运行 armbian-update -r 命令可以把 USB 中的系统内核更新至 eMMC 中,实现救援的目的。

今天编译的内核有问题,我刚看到少了文件了。

diyjack0326 commented 1 year ago

刚才就是在usb中更新的 直接usb系统也挂了 正在重新烧录中 稍等重新来一次

diyjack0326 commented 1 year ago

5.15.99还是显示这个,昨天更新了一下5.4,5.4中提示不支持设备,应该是支持can通信了,别的地方可能有问题,但是5.15.99还是显示97,不允许通信。

ophub commented 1 year ago

armbian-update -k 5.15.100 -v dev

更新这个测试下。如果你已经是5.15.100的内核,不让同名更新,需要先更新为其他版本,再执行上面的更新。

diyjack0326 commented 1 year ago

QQ截图20230313065047 错误信息也到变19了,这是不是没有装相应驱动问题?

ophub commented 1 year ago

内核里的选项都勾了。

qinghua907 commented 1 year ago

我用更新5.4.234内核后,用命令测试内核有CAN功能,并且可以识别CAN设备的UUID,因为我的EBB36工具头还没有刷好can固件,所以还没测试klipper功能是否正常

diyjack0326 commented 1 year ago

用的什么命令测试的?~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0,这个吗?

diyjack0326 commented 1 year ago

我的好了,可以连上了,感谢大佬的帮助,谢谢

ophub commented 1 year ago

除了内核,是不是还要装设备的驱动?

diyjack0326 commented 1 year ago

应该是需要,今天下午我又和chatgpt聊了聊,按着他的步子装的驱动,就捣鼓好了。

ophub commented 1 year ago

这个内核是专门给你选择了那些选项的。以后的里面没有。你要更新内核可以在盒子里自己一键编译。用boot-xxx.tar.gz里面的config-5.15文件做模板。具体使用方法看仓库的内核编译说明:armbian-kernel

5.15.100的内核你下载保存一套,滚动更新就没了。以备后用。

https://github.com/ophub/kernel/tree/main/pub/dev/5.15.100

diyjack0326 commented 1 year ago
sudo apt-get update
sudo apt-get install can-utils can-utils

sudo nano /etc/network/interfaces 然后在文件末尾添加以下内容:

auto can0
iface can0 can static
        bitrate 125000

保存重启

diyjack0326 commented 1 year ago

好的 感谢

ophub commented 1 year ago

刚才你发的添加设置的方法我看见有错误更正了一下,你检查一下代码是不是这样的

diyjack0326 commented 1 year ago

刚才你发的添加设置的方法我看见有错误更正了一下,你检查一下代码是不是这样的

对,我手机屏幕复制的不太对

shum-elli commented 1 year ago

大佬您好 我是想自己编译内核,使用gitaction或者ubuntu本地编译,因为看到好像没有make menuconfig的操作,对于启用canbus支持的所需要启用的config不是很清楚,请问是您在上面发的5.4内核中的相关选项拷贝进5.15的config中就可以了吗

ophub commented 1 year ago

5.4和5.15使用的不同的.config

这是5.15.100里的包含CANBUS选项的配置文件: config-5.15.zip

使用boot.xxx.tar.gz里面的config-xxx文件就是模板,使用actions时,如果使用你修改的自定义模板,在输入框里填写你放这个文件的路径,比如你仓库里的什么位置,比如for仓库后你修改的文件还是放在这个路径, 那么填写:compile-kernel/tools/config 这里放的是你自定义的config

Snip20230318_1

laughingman56 commented 1 year ago

大佬。那个5.15.100现在还能通过命令更新吗?是不是已经没了

shum-elli commented 1 year ago

我仓库里有我编译的版本 按照本地更新内核的方式进行更新就好了

ophub commented 1 year ago

armbian-sync 同步最新的脚本,再armbian-update就可以了,放releases里了。

https://github.com/ophub/kernel/releases/tag/kernel_dev

laughingman56 commented 1 year ago

好的大佬,我一会儿试试

laughingman56 commented 1 year ago

谢谢两位大佬,试了一下,用了ophub大佬的5.15.103内核成功识别

pegguo commented 1 year ago

请问新的Linux 6.1.22-ophub支持canbus总线吗?怎么开启呢,谢谢!

ophub commented 1 year ago

dev里面的内核支持

diyjack0326 commented 1 year ago

我重新刷机以后又不行了。。。刷的以前保存的镜像

84864797 commented 8 months ago

我重新刷机以后又不行了。。。刷的以前保存的镜像

大佬编译了一个带CAN的内核 但是还是连不上

AQR0124 commented 3 days ago

我仓库里有我编译的版本 按照本地更新内核的方式进行更新就好了

大佬,请问你仓库中的那个内核是不是没有wifi驱动?

shum-elli commented 3 days ago

我仓库里有我编译的版本 按照本地更新内核的方式进行更新就好了

大佬,请问你仓库中的那个内核是不是没有wifi驱动?

如果我没记错是有的 但是armbian现在新版应该已经集成can了吧 你直接试试最新内核?

AQR0124 commented 3 days ago

我仓库里有我编译的版本 按照本地更新内核的方式进行更新就好了

大佬,请问你仓库中的那个内核是不是没有wifi驱动?

如果我没记错是有的 但是armbian现在新版应该已经集成can了吧 你直接试试最新内核?

正在下载更新至最新的5.15.173;我尝试使用“armbian-config”命令连接wifi,但在Network中并没有看到有wifi的选项,难道是我用错了命令?

shum-elli commented 3 days ago

我仓库里有我编译的版本 按照本地更新内核的方式进行更新就好了

大佬,请问你仓库中的那个内核是不是没有wifi驱动?

如果我没记错是有的 但是armbian现在新版应该已经集成can了吧 你直接试试最新内核?

正在下载更新至最新的5.15.173;我尝试使用“armbian-config”命令连接wifi,但在Network中并没有看到有wifi的选项,难道是我用错了命令?

你考虑下你的网卡是不是不支持或者是根本就没有wifi。

AQR0124 commented 3 days ago

我仓库里有我编译的版本 按照本地更新内核的方式进行更新就好了

大佬,请问你仓库中的那个内核是不是没有wifi驱动?

如果我没记错是有的 但是armbian现在新版应该已经集成can了吧 你直接试试最新内核?

正在下载更新至最新的5.15.173;我尝试使用“armbian-config”命令连接wifi,但在Network中并没有看到有wifi的选项,难道是我用错了命令?

你考虑下你的网卡是不是不支持或者是根本就没有wifi。

在安卓模式下是可以连接到wifi的