Hi,
I’m facing an issue with a TX2NX board and CAN communication.
The whole system is composed by:
a TX2NX
a RoboteQ motor controller
an STM32 nucleo
a custom board
The TX2NX board uses Lely library for CANOpen communication with other boards.
By connecting the TX2NX to the system through an InnoTek USB-CAN converter everything works as expected.
But if I use the integrated CAN controller the TX2NX reports several errors in dmesg output:
Bit1 error
Ack Error
sometimes FrameError and StuffError
I tested the communication using both a ConnectTech Quark carrier and a Forecr DSBoard with same results. I also tried a new TX2NX module but the same happens.
but both of them give me the “No such file or directory” error. If I type “ls” (as root) in the folder ‘/sys/kernel/debug/bpmp/debug/clk’ I can find only can1 and can2 subfolders, can0 does not exists.
It is okay? Should I look at the can1 folder?
The can1 is configured with a rate of 40000000 and the pt_counter is set to 40001536.
The can2 has both rate and pto_counter set to 38400000.
Hi Kevin,
I’m sorry for the misunderstanding.
I mean that the TX2NX is able to send messages to other device connected to the CAN network using the cansend command. The issue arises when I want to send some messages to other device using a C++ application.
This C++ application (on the TX2NX) generates Bit1 Error if the connection to the CAN network is made using the internal CAN interface.
The same application works without generating errors if the connection to the CAN network is made using an Innotek CAN-USB adapter, always running on the TX2NX.
Let me explain step by step:
1- Power up the TX2 NX with DSBOARD (without connecting your CANBus system (the RoboteQ motor controller, the STM32 nucleo & the custom board))
2- After the TX2 NX booted up (if it has a desktop environment, wait until the desktop GUI opened), connect the internal CANBus pins to the CANBus system
3- Then test the CANBus network.