Help to find UUID

Basic Information:

Printer Model: Ratrig Vcore 3
MCU / Printerboard: Octopus Pro + EBB42
klippy.log

Fill out above information and in all cases attach your klippy.log file. Pasting your printer.cfg is not needed

Describe your issue:

I follow the procedures in web for find UUID, but i obtain a error message

https://www.klipper3d.org/CANBUS.html

after send by terminal this command

~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0

i obtain this:

Traceback (most recent call last):
File “/home/pi/klipper/scripts/canbus_query.py”, line 64, in
main()
File “/home/pi/klipper/scripts/canbus_query.py”, line 61, in main
query_unassigned(canbus_iface)
File “/home/pi/klipper/scripts/canbus_query.py”, line 25, in query_unassigned
bus.send(msg)
File “/home/pi/klippy-env/local/lib/python2.7/site-packages/can/interfaces/socketcan/socketcan.py”, line 658, in send
sent = self._send_once(data, msg.channel)
File “/home/pi/klippy-env/local/lib/python2.7/site-packages/can/interfaces/socketcan/socketcan.py”, line 681, in _send_once
raise can.CanError(“Failed to transmit: %s” % exc)
can.CanError: Failed to transmit: [Errno 100] Network is down

if send by console

sudo ifconfig

the response is

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.200 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 2a0c:5a84:a100:db00:277e:ecff:9d18:867d prefixlen 64 scopeid 0x0
inet6 fe80::22df:c45d:f612:304 prefixlen 64 scopeid 0x20
ether e4:5f:01:bb:c1:03 txqueuelen 1000 (Ethernet)
RX packets 1010 bytes 152840 (149.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 246 bytes 35818 (34.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 192 bytes 13780 (13.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 192 bytes 13780 (13.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.50.1 netmask 255.255.255.0 broadcast 192.168.50.255
inet6 fe80::e3d1:326d:ce8d:cdae prefixlen 64 scopeid 0x20
ether e4:5f:01:bb:c1:04 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 2 overruns 0 frame 0
TX packets 48 bytes 9714 (9.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

i cant see can0 network

did you create this file with this content on the rpi?

Yes, and restar RPI after… With a change bitrate 250000

A doubt… when the installation is made so that it works with a CAN adapter, they comment that you have to bridge 2 pins of the Can board with a “termination resistor”, fine. Is a termination resistor the same as placing a jumper?

If they are different, how do I know the difference between a “jumper” or a “termination resistor”

Try this command
Change baudrate to your CAN bus speed
sudo ip link set up can0 type can bitrate 500000

If this works add it to your rc.local

When using ifconfig you should see can0 listed if not then it’s not up and running.

somethig has changed… but not all, i have send these command

sudo ip link set up can0 type can bitrate 500000

no negative response…

after i send

~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0

and this time, partial works…

Total 0 uuids found

please, can you give me info, what do these code line?

sudo ip link set up can0 type can bitrate 500000

seems change the bitrate to 500000, i have flashed can witth 250000, because i have read that EBB works better with 250000…

Do you think if i reflash EBB42, with 500000, and change can0. Its the same that these line?

more info…

before send

sudo ip link set up can0 type can bitrate 500000

the response to ifconfig -a was, and if no put the (-a), can0 id not appear:

can0: flags=193<UP,RUNNING,NOARP>  mtu 16
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 10  (UNSPEC)
        RX packets 3324745  bytes 26597960 (25.3 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1  bytes 1 (1.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

after

can0: flags=193<UP,RUNNING,NOARP>  mtu 16
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 10  (UNSPEC)
        RX packets 4859625  bytes 38877000 (37.0 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1  bytes 1 (1.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

appears wwith some packages sended

The RPi bitrate and the EBB have to be set the same, and any other CAN bus devices.

The CAN hats typically have a 120-ohm resistor.
The EBB has a 120 ohm jumper to set it as the end device, if there are other CAN bus devices after the EBB then it’s jumper needs to be off, if it is the last device then the jumper needs to be installed.

No ID typically means incomplete wiring or bad connections.

The USB-C connector on the EBB cannot be used for CAN bus to a RPi CAN hat, the other connector on the EBB is for CAN bus communications.

Here are my diagrams for the EBB36 & EBB42

for that, I have made a “fix”, since the resistor that came with the EBB42, I can’t find it, so I have put a 120 ohm resistor, I suppose it will be the same…

As for the wiring, I’ll check it…

See the diagrams for the jumper and the pinouts.

With everything powered down, the resistance across CAN_L & CAN_H will be very close to 60 ohms, if not there are wiring or connection issues.

In this moment i have this… resistor its 120 ohm, but measurin betewn H and L, gives me near 200 ohms, maybe for this dont detect it…



You don’t put a resistor on the120 jumper.
You need to put a jumper on the 120 to enable the 120-ohm termination on-board resistor.

you might wanna add the E-Motor pinout, as someone has noted in BTT EBB36 github here, it should be as follows:


| B2 | B1 | A1 | A2 |
|_ ___________ _|

Moment or not yet I’ve reached that point… I sense I’m close… But not yet, thank you I’ll look at it

i have changed the resistor, i haved put in EBB42, for a jumper… and after measured the resistence Betewn H and L, has drop to 120, no to 60…

And i have try to execute the script with the hope of find some UUID

~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0

but nothing, 0 uuids found.

Positive things:

A) When send: ifconfig, i can see can0 interface, before no… and see some activity, RX paquets are rrising

B) When run the script: ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0, no show error, almost an advance…

Questions:

  • What do the “maqical” command i have sended sudo ip link set up can0 type can bitrate 500000? i ask these, i have read that bitrate in Can adapter and Canboard must be the same, and i haved flashed EBB with a bitrate of 250000. These command, affects this, o i have to reflash? with bitrate of 500000?
  • How i can do sudo ip link set up can0 type can bitrate 500000 permanent?
  • How add to rc.local?

Thanks @NAPCAL and all for your help…

add some info…

i have edited /etc/network/interfaces.d/can0

and change it for web recomanation Klipper Docs Canbus

after restart, and run sudo ip link set up can0 type can bitrate 500000

after ifconfig, and… this time can0 show very little activity… and cant find UUID

CAN bus wiring is not correct if 120 ohms across CAN_L & CAN_H.

Ohm out CAN_H from the RPi CAN hat to the EBB, then CAN_L do the same; if not very close to zero, then you have an open wire.

its 0, if jumper its not placed… if i put jumper, its near 120…, I thought it had to be about 60.

I’ll check the wiring… maybe that’s it

Thx

I admit it… I’m very stupid.

Thank you all for your help… I GOT IT WORKING.

How I did it, basically it was simple… you just had to read carefully, I followed the Bigtreetch manual carefully.
I think the main difference is that when I compiled the firmware, I didn’t look at the “coding” of the can ports, and I chose the one indicated by each guide and NO, you have to choose them according to the can board model you have.

In my case EBB42 v1.1, which according to the scheme that you have given me in this forum, uses the ports (PB1/PB0), once the firmware has been compiled and recorded with this option…

And after executing the script that @NAPCAL has passed me… it has found me the EBB42v1.1

When I read this message in the console:

Found canbus_uuid=32c452993a02, Application: Klipper
Total 1 uuids found"

Tears fell…

I just have to mount everything on the site and configure it, which is not a small thing… but at least, this first phase is achieved.

Thank you all for your help, and sorry if I’ve bothered you…

2 Likes