Can-Utils Beaglebone Green

I am trying to get can-utils functioning on my beaglebone green however I am running into a snag or two. I have tried two ways of adding can-utils. It shows that can-utils does download and install but then when I try to run a command like candump or cansend I get nothing. I believe my problem may be caused from no UDEV=1 setting however I have tried adding that to my dockerfile and it makes no change. Maybe I am not adding it correctly? Here is my docker section with both variants for the container :

# RUN apt update && \
#     apt install -y iproute2 can-utils && \ 
#     rm -rf /var/lib/apt/lists/*

RUN install_packages can-utils iproute2

Here is the docker-compose.yml file:

engine:
        build: "./mgb-engine" # use this directory as the build context for the service
        network_mode: host
        cap_add:
            - NET_ADMIN # allow container to change network settings
        environment:
            - privileged=true
            - UDEV=on #also tried -UDEV=1

Hi Drey, I’m not sure if this is the root cause of the problem but privileged=true should be specified as a compose tag and not as an environment variable.

Try with this:

engine:
        build: "./mgb-engine" # use this directory as the build context for the service
        network_mode: host
        privileged: true
        cap_add:
            - NET_ADMIN # allow container to change network settings
        environment:
            - UDEV=on #also tried -UDEV=1

BTW, UDEV can take either on or 1, both should work.

Well, as you previously assumed I still don’t have any can utilities. Any suggestions to what could cause this?

@tmigone I added support access for a week in case that may help catch what’s going on! Thank you for the help!

What is the UUID of the device we should look at?

c8d1fc8cc85469055f760da488403d2e

Also I did find this in dmesg if it gives you a clue

[170334.189607] c_can_platform 481d0000.can can0: setting BTR=1c02 BRPE=0000
[170334.212355] IPv6: ADDRCONF(NETDEV_CHANGE): can0: link becomes ready
[170363.097494] systemd-udevd[30]: starting version 232
[170364.616290] systemd-udevd[35]: could not open moddep file '/lib/modules/5.4.47+/modules.dep.bin'
[170364.838753] systemd-udevd[35]: could not open moddep file '/lib/modules/5.4.47+/modules.dep.bin'

Hi @dreyplatt,
It seems you are trying to do too much with the Beaglebone’s CPU and the service can-init doesn’t have enough memory to start and it fails. The CPU usage is in 100% at the moment.
Moreover I’ve got the following error at your logs , that seems you also have an authentication issue.

Sep 23 21:16:16 openvpn[1516]: Wed Sep 23 21:16:16 2020 SENT CONTROL [vpn.balena-cloud.com]: ‘PUSH_REQUEST’ (status=1)
Sep 23 21:16:16 openvpn[1516]: Wed Sep 23 21:16:16 2020 AUTH: Received control message: AUTH_FAILED

Regarding the error you get I believe it’s related to the authentication problem, so could you please make sure to check the device’s network and make follow these requirements: Network Setup on balenaOS - Balena Documentation .

Please let me know how it works for you and we’ll be happy to assist you further.
Georgia

Hi @georgiats! Thank you for the response. How do I view the logs that you have posted below? I do not see them in dmesg . Also I have turned off the container which was using up the entire cpu when it couldn’t connect to the CAN bus. Still no way to use can-utils.

I have added a beaglebone black to my fleet as well in case this hardware proved to work. Unfortunately this did not make a difference. I still cannot access any of the can-utils despite have can0 turned on both devices. I have given support access for a week as well with the beaglebone black. uuid 56ab275f908adc904b6dea394d5d7b62. I hope we can get through this soon so I can finally work on programming my projects. I have been down for several weeks while trying to use balena for my fleet.

Hello!

The additional information was obtained from the “Diagnostics” tab in the device dashboard. Namely, the “Device health checks”:

Some networking issues detected: test_balena_registry: Could not communicate with for authentication

and “Device diagnostics” output as reported above.

However, it could’ve been a known false-alarm issue of diagnostics https://github.com/balena-io/device-diagnostics/issues/249 currently affecting some devices.

Regardless, our devices team is informed about this particular case and will look into it.
Please note that we have a company-wide virtual summit this week, so the schedules are atypical. Thanks for your understanding!

When will the company virtual summit be over? Can we schedule a call to get this going on our end?

Hi there – I want to assure you that our devices team knows about this issue and will be looking into it. Our virtual summit will be finished this week. Thanks again for your understanding, and we will be in touch soon.

All the best,
Hugh

Thank you for the quick reply! I hope the summit is a success!

Hi Drey,

Regarding the udev issue, I put together this loopback test based on your sample, can you please try with it: https://github.com/acostach/bbcanloopback ?

On my side, if I type “cansend can0 110#123456” from the container web terminal, the App logs will show candump’s output that’s running in canup.sh

Hey Drey, did you get the chance to try with Alexandru’s repo?

HI @acostach

I am building an applicaiton using rev pi connect and rev con can module.
I am not able to install can-util . As a result not able to use fucntions from can-util

pip install can-util gives the erorr.
Can you please help