Это видео недоступно.
Сожалеем об этом.
Manta M8P+EBB CANbus Setup
HTML-код
- Опубликовано: 13 май 2023
- *CanBoot has Change it's name to katapult after the making of this video. Any mention of CanBoot can be replaced with katapult*
How to set up CANbus on the Bigtreetech Manta M8P to work with multiple nodes.
I have see several having issues getting CANbus working on the Manta M8P v.1.1 so if that is you or you are just going at it for the first time, this video is for you.
*************************************************************************
Affiliate links to help the channel grow.
Manta M8P and Cb1 -- shrsl.com/47lwp
EBB42 -- shrsl.com/47lwq
BTT Pi -- shrsl.com/47lv8
BIQU/Bigtreetech Official sales site -- shareasale.com...
*************************************************************************
Table of Contents
-----------------------------
02:11 - Install STM32CubeProgrammer
02:55 - Download katapult (formally CanBoot) repo
03:50 - make katapult.bin
08:15 - extract katapult.bin
10:30 - flash katapult.bin to ebb with stm32 cube programmer
10:58 - set up ebb to communicate with stm32 cube programmer
17:00 - make klipper.bin for Manta M8P
22:57 - flash klipper.bin to M8p via DFU
25:57 - check for can bus UUID for M8p
28:46 - Make klipper.bin for ebb
30:30 - shut down, power off and connect the ebb to the canbus line
33:39 - get your ebb UUID
35:03 - use script to flash ebb klipper.bin with CanBoot
36:57 - verify the klipper.bin was flashed by querying can0
40:26 - bunus see it working in mainsail.
Get $5 discount (gives me a $5 discount too) from BIQU's official site using this link refrr.app/u6Jw...
If you are feeling generous, click the donation link on my about page to help my channel grow.
My cheatsheet:
NOTE: I forgot to mention, to make sure you have the 120R jumpers installed on your devices.
Also you may need to double check the can0 setup before starting to make sure it's set and to get the bitrate to use with other devices.
check can0 setup,
sudo nano /etc/network/interfaces.d/can0
this is the settings I use in there:
allow-hotplug can0
iface can0 can static
bitrate 500000
up ifconfig $IFACE txqueuelen 1024
ctrl-x to exit
y to confirm the change and enter to save.
Download and install. www.st.com/en/...
Note that this is only needed to help flash CanBoot if you choose to go that rout.
1: Install the OS. Flash it with Raspberry Pi imager or Balena Etcher
github.com/big...
I used github.com/big...
2: Enter your wifi info in the system.cfg file Remember both the SSID and Password are case sensitive.
3: Boot up and update. Everything!
sudo apt-get update && sudo apt-get upgrade -y
4: Install CanBoot (note It's now called katapult )
(github.com/Ark...) its a heplfull tool for updating firmware later on the EBB
cd ~ && git clone github.com/Ark...
5: Make the katapult bootloader for the EBB
cd katapult
make menuconfig
Enter the information for your EBB. I am using the EBB42 V1.1. Check the information for the you you are using as pins and board can be different. The process is the same though.
My version uses the STMG0B1 chip and PB0/PB1 for CAN Communication.
After you input your boards info hit Q then Y to save the config.
Then run,
make clean
make
6: Extract the katapult.bin file with something like winscp
7: Open STM32 cube Programmer and install the bootloader.
8: Verify the connection, and copy your UUID for future use.
~/katapult/scripts/flash_can.py -i can0 -q
or
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
9: make klipper for the M8P
cd ~/klipper/
make menuconfig
[\*] Enable extra low level configuration options
Micro controller Architecture (STMicroelectronics STM32 )
Processor model (STM32G0B1 )
Bootloader offset 8 KiB bootloader)
Clock Reference (8 MHz crystal)
Communication interface (USB to CAN bus bridge (USB on PA11/PA12))
CAN bus interface (CAN bus (on PD12/PD13))
(500000) CAN bus speed
make clean
make
10: Enter DFU mode. Hold BOOT and tap RESET, then let go of BOOT. There will be no notification that it went into DFU mode but it shoud have if you did the sequence.
11: flash the firmware.
make flash FLASH_DEVICE=0483:df11
12: check the UUID and copy it down.
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
13: make klipper firmware for the EBB
cd ~/klipper/
make menuconfig
input the info for your ebb
make clean
make
14: flash the ebb
python3 ~/katapult/scripts/flash_can.py -i can0 -f ~/klipper/out/klipper.bin -u Put_Your_UUID_Here
15: Set up klipper and enjoy
The latest version of STMCubeProgrammer did not work at all. I've been fighting this Can setup for 8 hours now. I just uninstalled STM and installed the previous version and it flashed without a hitch.
So weird. I'm glad you got it working in the end. I'll pin this in case others have the same issue.
Had the same problem. Thanks for the tip!
I had to switch to version 2.7
Still not able to get UUID after step 12, and I did everything from scratch. Something is missing here in the instructions.
@chrisc9213 do you have the 120R jumpers in place? Have you checked that you have can0 setup in interfaces.d? Make sure that the CB1 is fully attached to the M8P and that the bud line is attached correctly, high to high and low to low.
I never really write RUclips comments, but I wanted to take some time to thank you. I've been struggling with configuring my M8P and SB2240 together and I couldn't for the live of me figure out what I was doing wrong. Following your video finally made everything work. Turned out I was configuring klipper on my M8P incorrectly. Thanks for the video, it was a big help :)
You're welcome! I'm glad it worked out for you 😊
This is one of the best instructional videos I have seen. Thank you
just set up CANbus for my second printer, had lots of issues the first time. This time went so much smoother, used your video as a nice refresher and compact place for all the commands. Thanks so much!!
Nice to see it was helpful 😊
Hello, I live in Brazil and I am very happy that you have shared your knowledge, I want to record my gratitude here, congratulations!
Everything worked
Glad it was helpful 😁
Hey, just wanted to say how much I appreciate you putting the work in to make this video. I've struggled with getting this setup over the past couple months. I can finally get back to printing! Thanks again!
Nice! It's always wonderful to see my videos helping others.
Thank you for the tutorial. I have been trying to get CanBus working for a month now. You cleared up many questions I had!
You're welcome.
this video was great. thanks for the information it was key in setting up can bus on my printer.
I can confirm this procedure works flawlessly on the Manta E3EZ. The only change is the CAN bus interface pins are PB12 and PB13 instead of PD12 and PD13.
Did you have an issue with getting your uuid for the ebb? I cant for the life of me get it.
THANK YOU! THANK YOU!
Without your video I would have been doomed to failure. The key information for me is the klipper firmware set up with regard to the USB to CAN bride.
BTT does not have this in their documentation.
I have given you a small donation for a beverage of your choice.
I'm glad it was helpful 😊 thank you so much for the donation!!
Thank you for putting this together...very helpful. I was struggling to get my UUID for the EBB (I'm using the EBB SB2240) until I flashed CANBoot on the M8P. Once I did that it worked!
Awesome video, found this so helpful when setting up my Manta M5P and EBB boards!
I'm glad it was helpful 😁
Best ever. Thank you. I had the issue not to see all uuids when doing that on my octopus pro. Now I know why? Keep on going.
Wish you had made this video a long time ago! Awesome job!!!
Спасибо тебе огромное! Без твоего видео я наверное забросил бы эту идею с canbus. Прошивать у меня получалось, а вот как правильно сконфигурировать я понял только здесь. MCU для платы поменять на UUID этого мне не хватало. Респект твоим трудам.
I'm not sure if Google translate did well enough, but it looks like you need to know how to set up the UUID in the printer.cfg file. Is this correct? If so it is done like this,
For the Manta,
[mcu]
canbus_uuid: 11aa22bb33cc
For the EBB,
[mcu EBBCan]
canbus_uuid: 11aa22bb33cc
And when setting pins for the EBB you need to prefix them with ebb: like this for example,
step_pin: EBBCan: PD0
@@StackingLayers Yes, thanks for responding. Thanks to your video, I did all this and I succeeded. My problem was that I did not change [mcu] to canbus_uuid: "bla-bla-bla". Therefore, nothing worked before the change ...
An ADXL345 accelerometer is installed on the EBB36 board. How to apply it for the X and Y axes? For X, it is more or less clear, for Y, not so much. Thanks again for your work.
cool followed it yesterday and its working.
ok I have no clue what I was doing wrong originally I got the new mp8 v1.1 (for my trident) and wanted to try can bus and I was pulling my hair out trying to get it to work I can't think of one thing I did differently but I followed along with the video and it worked first time well the E motor was going backwards but easy fix don't know what the issue was but thanks so much for making the video so easy to follow
Nice to see it was helpful 😁
Excellent video! Not sure if you want to update your notes; Canboot is now known as Katapult. Including the commands used.
Done. 😁 I saw that, but I didn't think about updating the info. Thanks for the suggestion!
Fuckin' Legend... Got my BTT Kraken talking with the EBB36 using this Guide. Thanks, _a _*_lot!_*
Right on! It's always good to see the video was helpful.
Hey there! First of all, thank you for the video. As a klipper noob its been tremendous help.
I just had one question about the MCU declaration in the klipper cfg files.
Is there only the 2 UUIDs? Do I need to add the serial for the CB1 somewhere?
When I ask for a list of connected devices after katapult is installed, I get an error message saying there is no such file. Im a bit confused about that part.
Thank you once again for your time
You don't have to define the CB1. One thing you might have to do is set up the can0 file.
Send this command,
sudo nano /etc/network/interfaces.d/can0
If its empty then you should add this,
allow-hotplug can0
iface can0 can static
bitrate 1000000
up ifconfig $IFACE txqueuelen 1024
And make sure to set the bitrate in the firmware parts to 1000000 also. The higher bit rate is better if you end up using an accelerometer.
thank you for this tutorial!
it really helped me a lot! especially in combination with your video on how to set up hermit crab can.
i could finally make it to make the manta e3ez work together with the hermit crab can.
BUT: after flashing the firmware to the mantas mcu it works absolutely fine.
just when i do a restart it won't find any can connection.
klipper reports: "Internal error during connect: [Errno 19] No such device"
same when i want to querry can via ssh.
when i reflash the mcu it all works again, but just until i reboot the board. :(
Check your CAN setup
sudo nano /etc/network/interfaces.d/can0
It should have this, most important is the allow-hotplug can0 and not auto can0:
allow-hotplug can0
iface can0 can static
bitrate 500000
up ifconfig $IFACE txqueuelen 1024
Great video but the last step hasn't worked for me as Katapult threw a wrench into it
What do you mean?
Amazing tutorial, for some reason after EBB flashing, I can only see one UUID but before I had two. Not sure what i need to do.
If you put the UUID in the printer.cfg and klipper attached to it, then you will no longer see it.
@@StackingLayers ok understood, got everything working. Thank you
Nice Job and a down to earth run down on this setup, Nice to help others since the documentation is weak and this Canbus stuff is newish.
I followed this setup up and understand most of it as have setup a canbus on another machine but not with the M8P. I have one issue if you could help..?
I did the search for the EBB in canbus and it shows a UUID number but notice its the same number as the M8P UUID, When I try and flash the EBB42 over the canbus it fails. I have 24v and the H-H and the L-L.. . I tried another EBB42 as ia have a couple and the UUID is the same number also ..?
Seems odd..? Any ideas.?
Thanks In Advance .:) Have a happy day.
Les
Doing this for my manta e3 ez thank you so much for this its helping very much. at the 28:30 mark are you plugging the canbus in to the board or are you still plugged into your pc when flashing?
After you make the klipper firmware for the ebb you do need to plug in to canbus to flash the firmware using katapult (formerly called canboot)
Ah thanks I thought so I just wanted to be sure did not want to release the blue smoke from any of my board.@@StackingLayers
I have a Manta M8P V2 with an ebb emmc that I have s
Klipper installed using can bus. I now got EBB SB2209 that I'm trying to install following your direction. I did comment out the mcu in the printer.cfg since you say if it is there I will not be able to see uuid for the EBB.
I have the EBB connected to the Manta can bus, and I still have the EBB powered by the USB c. I'm to this point where I'm ready to flash Klipper to the EBB, but I only see the original uuid that I have for the EBB. Do I need to do anything else to see it since I had it running before with the can bus?
Not the original EBB the original uuid for CB1
I just read some of the comments, and I didn't put a jumper on 120R.
Could that be the problem?
I will try tomorrow.
The uuid is a unique number for the device. If you got the uuid for the ebb then it shouldn't change.
The 120R jumper is important. It needs to be on the first and last components attached to the canbus line.
@@StackingLayers
After I added the jumpers on the ebb and the Manta board i got both uuid's.
Thanks.
Nice Video! Thanks! hey what is the four conductor cable you used for canbus?
I just used some 0.35mm² wires I had laying around. I would recommend something like 0.5mm²-0.75mm² (20awg -18awg) for power though.
Thank you, great info,
Awesome, please keep making these videos
How do you get from step7 to step 8 in the cheat sheet? When I flash CanBoot using stm32 cube programmer, theres no where to find my uuid. If I plug the EBB42 into my M8P it doesn't show any uuid's until I flash the m8p, then I get it's uuid only.
Oh I thought I reordered that. Do step 8 after you have flashed the m8p so that it has CAN communication.
Hi again , thanks for the great info and mine has been working fine ! But i have an issue that is tricky and wonder if you could give me an idea on this.? My Ebb42 shorted out by mistake and has to be replaced. GRRR. So do you know a way of replacing it without redoing the whole reload of the Manta etc. I know the Ebb42 has a UUID for each one.. I can load the canboot now katapult to the Ebb42 but the rest is tricky. I think I would need to remove the info from klipper for the old Ebb42 so it doesn't look for that one..? Ideas... Thanks for any thoughts. Les
You should be able to load up the firmware to the new board and query for the new UUID and replaced the old UUID with the new one. You shouldn't have to do anything with the Manta
When you show the connection to the ebb with the linked in power that is split, the Can data, do I plug that into the ebb also? You show it not plugged into the ebb but don't say if to connect it or not. Not sure why the can wire is attached to the M8P? Noob learning here.
In this video I'm utilizing the built-in canbus transceiver. So the canbus wire goes from the M8P to the EBB and power lines go to the 24V power supply.
Note that the canbus lines are connected after the part that the canboot(now called Katapult) is installed.
Thanks for creating this video as there is nothing out there explaining this setup, one question and I may have missed it in your video but do you set the termination pin on the M8P and EBB?
Yes, on both. I think I did forget to mention that.
Cool, no worries, thanks again for the video
Where on the M8P board is the termination pin.
Right above the 2nd can plug. It's labeled 120R
Thank you
I think you should put this: check can0 setup,
sudo nano /etc/network/interfaces.d/can0 at the beginning of the video.
I'll move it to the top of the description. I dont think I can add text not that the video is posted.
Thanks man! You covered all the aspects to make it work! Great dedication!
I'm glad my video was helpful! Thank you for the super!!
I'm using Manta M5P, I wonder if it can be applied? Tried to enter without success
The M5P has a can transceiver. Can bridge usb PA11 and PA12 and Can on pins PD0 and PD1. It should work.
why do we need to use stmcubeprogrammer? as a canboot for the can bus? as for my situation im using fly sht 36 pro, and at github it is said to have preinstalled canboot, so i assume i can skip the smtcube programmer right?
Correct. There have been several update since I made that video so I think I will be doing a revised video soon. But if you already have can boot installed then you can skip that.
can't get it to work, following all the steps, then after flashing m8p rebooting and connecting the can cable no uuids found when " ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0"
Done this a few times, seems everytime i power down the boards they reset? got everything working once, but stopped after i shut down the printer.
help...
They can't be reset as there's nothing to reset to. Once you get the UUID entered and klipper sees it then it will not show anymore. It also will not change, so if you have it saved it will be the same uuid. Otherwise make sure to not set up the uuid in the printer.cfg until you get all that you need, and save them in a text document os something like that.
Nice explenation, Its close to the hermitcrab. At this moment I'm having the problem you commented out in your video. I loose the communication once I call for the UUUiD. or it just give me one node UUUiD. is the a way to flash other than having a new SD card on CB1 or to fix the problem ?.
You can try to stop the klipper service before querying the UUID. That will sometimes work. This is the command,
sudo service klipper stop
And to start it back up,
sudo service klipper start
28:00 Any tips on how to stop Klipper service(s) from gatekeeping my CANBUS uuid's? 🤔
I accidentally started by flashing Klipper first... 😅
Unfortunately I don't. I don't think it's possible at the moment.
Where is your hot/ground wired for Can power?
DC output of a 24v power supply.
I get “build katapult deployment instead of canboot deployment? Does it matter ?
That's correct. The developer of canboot changed the name to katapult.
hey there. super informative video and im super new to all of this. how do I safely ssh into the cb1 v2.2 so I can install the image? I know it's probably really basic but this is all so new to me. if you could point me in the right direction id be so very grateful. thanks a ton.
I like to use a program called PuTTY (putty.org). After connecting to your network you just enter in the ip address and connect. The cb1 default username and password are both, biqu
im lost....
why do I get the error "failed to download segment"
I decided to dive into canbus using a manta m5p and ebb 36, using you video i was able to achieve this. However do you have a video or atleast a recommendation, on the configuration that needs to be done in klipper to get this to work?
This is the generic printer.cfg for the M5P github.com/bigtreetech/Manta-M5P/blob/master/Firmware/Klipper/generic-bigtreetech-manta-m5p.cfg
And this is for the ebb 36,
github.com/bigtreetech/EBB/blob/master/EBB%20CAN%20V1.1%20(STM32G0B1)/sample-bigtreetech-ebb-canbus-v1.1.cfg
You'll need to make a printer.cfg that combines them or set an include function.
im failing with step 14. does the motherboard or ebb need to be in dfu mode?
When flashing the ebb, the ebb is the one that needs to be in DFU/boot mode.
Thanks for your videos. I wouldn't have gotten this far without them. I'm having an issue with config, and most configuration references/ posted issues/ and tutorials seem to refer to USB installations. I'm running an M8P v1.1 with an EBB42 v1.2, identical to the one in the video.
-I can get to the point where I have 2 UUIDs listed and I know which is which.
-my printer.cfg file contains only [include] statements
-an [include] statement for the generic board file. The file is present and contains (among other things):
[mcu]
canbus_uuid: xxxxxxxx
canbus_interface: can0
-an [include] statement for EBB. This file contains the [mcu EBBCan] statment with the appropriate UUID, similar to 'mcu' above
-I can restart the firmware in mainsail, and my UUIDs no longer appear when running the query command. (Sounds like this is expected behavior)
-Everything seems in order, but I get mcu 'mcu' unable to connect in mainsail
-log entry for [mcu] indicates a timeout and some associated serial connection closures.
-as I troubleshot, I tried re-flashing klipper. This seems to function for the mainboard, but I have to take EBB back to STM32 to be able to flash it again. Sometimes this still doesn't work.
So first, why can't I get mainsail/klipper to connect to 'mcu'?
Second, why does katapult seem to get klobbered when I flash the firmware to the EBB? It seems like is just extra steps if it doesn't make updating firmware easier.
Thanks in advance for any help.
You don't need the can interface line, just the UUID. I'm fairly certain that can0 is default. Otherwise I would suggest you check that the termination (120r) jumpers are in place on the M8P and ebb.
@@StackingLayers Thanks for replying. I've verified that the jumpers are installed. I suppose the next step is to reach out to bigtreetech and maybe the klipper forums.
@@StackingLayers Well this is embarrassing. Somehow I dropped a digit from the middle of the affected UUID. I now have communication with 'mcu'.
Haha don't feel bad. I somehow added 2 random digits to one I was setting up last night.
I noticed you have the heat sink on the stepper driver, I thought it was meant to go on the MCU chip?if so is it wrong to put it on the MCU?
You can have one on the main chip too but the driver must have one. There's more power going through that, so it needs good cooling.
Cool instruction. Just finished my build with Manta M8P+EBB SB2209, but no power on my EBB SB via CAN. I connect my CAN power wires to HE0 (VBB and PE3) on Manta, maybe you can explain how to change my M8P.cfg to activate power out from Manta. Thank you a lot for your tutorial.
Hmm I'm sure you could do it that way by setting the pe3 pin to be high on boot via the klipper firmware config, although I don't think that's the conventional way. You would normally get power directly from the power supply.
@@StackingLayers Thank you for your answer)
I'm headed down this path with a M8P V1.1 and EBB SB2240 for a Voron Style build... Just waiting on availability on a CM4 now
What not use a CB1? It's been working great for me and my other 3d printer buddies. A CM4 with more ram is definitely a nicer option but the cb1 is pretty great for the price.
@@StackingLayers i want to run a 7" BTT screen and a camera all from the pi through the DSi and CSi ports... the CB1 isnt capable using the DSi if the CSi port is used
Ah that makes sense. I just use the spi screen and a USB camera.
Help! I've been unable to query the ebb. both 120R jumpers are attached to the ebb and board so idk what the issue is. The board is being found during the query... Any ideas?
Double check wire orientation. The Can high and can low may be swapped. Normally it's yellow on high and green on low.
It is also very important that the baud speed is the same in all places. So, for example, if you set 1000000 on the board and host, mak the ebb that too. I know that some of the older instructions have 500000 for the speed in the example.
Further question: I've been looking at your config files, especially the ebb.cfg. Am I correct in thinking that the config data for everything on or connected to the EBB (hot end, fans, TAP prode, extruder motors, etc.) needs to be moved from my printer.cfg to here? Then I have to add an include statement in my printer.cfg? What do I do with the SAVE_CONFIG data that is in my printer.cfg? I tried running a PID calibrate for the hotend, it would not allow me to save the parameters as SAVE_CONFIG section 'extruder' option 'control' conflicts with included value
You don't have to have separate files. That is just a good way to keep things organized. Ultimately everything goes in the printer.cfg file either directly or via an include. The save_data must be left as the last thing in the printer.cfg file. Don't add anything under that.
@Stacking Layers I have left that there, but it's no longer accepting Save Config. I have to fix the hotend issues first, and then I'll do config files.
Due to an SD card failure I had to start again. Everything went according to plan but when trying to configure klipper I get this - Option 'serial' in section 'mcu' must be specified. The /dev/serial directory is missing - how/what?
If you set it up as canbus you have to use can_uuid not serial. Like this,
[mcu]
canbus_uuid: your UUID goes here
Where on the M8P board is the termination pin.
Having a issue when getting the uuid from the board keeps erroring out
What is the error message?
Use STM32CubeProgrammer 2.10 not 2.13 for flash.
damn. thank You a lot. I guess You ran into same issue as I did if you mention this.
Thank you so much for the video its been really helpful. I was able to get to the point where I flash the firmware to the manta board but I seem unable to get the board into DFU mode. everytime I run the flash command it just returns that there is no dfu device.
Make sure to firmly hold the boot button down and continue holding it while you click the reset button, after that you can let go of the boot button. It should be in DFU mode after that.
@@StackingLayers I have done that multiple times with no luck. Just to be sure I did everything else right I started from scratch and installed a completely new os image and I am still having the same issue.
Alternatively, you can use a program like winscp to copy the klipper.bin (/klipper/out/klipper.bin) file from the host computer to your PC, then change it to firmware.bin and put it on an SD card and flash it that way using the MCU SD card slot.
@@StackingLayers Thanks, I tried that and the Manta doesnt even seem to be reading the file, I have tried 3 different SD cards. when i reboot the board with the firmware file on it is doesnt change its still a .bin file.
Hello, when I set the M8p to DFU mode, I can see the device with "lsusb". But when I try to check for connections after the flash, I get "Failed to transmit: [Errno 100] Network is down". Was the katapult software supposed to start the CANBUS connection or something?
Right after I posted this I repeated the same thing for the 100th time and it started working... I want to leave this up for others if you see this error to check the can0 config in top of desc. After I copy pasted that into there and rebooted I was able to flash to 0483:df11. Thanks for the video and notes in desc! Idk what I'd do without it
Yeah I was just going to say to check that can0 was set up in the /etc/network/interfaces.d/can0 file. Good to see you got that going.
@@derson754 @StackingLayers help I am also stuck here. I can see it in DFU mode using lsusb. I get 'download done' when I attempt to flash, but then get the 'network is down' error. Where do I look from here? What is supposed to be copy/pasted?
You might need to set up can't
sudo nano /etc/network/interfaces.d/can0
In that file you should have something like the following, remember that the bitrate part needs to be the same on all devices.,
allow-hotplug can0
iface can0 can static
bitrate 1000000
up ip link set $IFACE txqueuelen 1024
@@StackingLayers That was it. Big thank you for this video. Now to set up Klipper...
m8p v1.1 + ebb36 v1.1
followed to a tee and worked after flashing and cfg worked. BUT after klipper firmware restart linux does not see can0. do you have any insights ? maybe moonraker service settings or something ?
Are things still working but you cannot query, or do things stop working?
What would the process look like using mainsail?
That is using mainsail.
Hey man thank you for the amazing video I have a question for ya I would appriciate if you reply
When I flash my M8P via DFU mode I am able to get the Klipper UUID and everything
then I power it off then on again there is no way to get the UUID or device name which makes me flash it again and again. Why doesnt it stay on like that what am doing wrong?
I was able to set it up on the third day. :) EBB SB2209 to manta m8p.
@oguzhanpiskin4905 Can you tell me how you solved the problem? I have the same issue. When I flash the M5P the uuid showes up when I use the query command but after reboot the uuid is gone. I tried unplugging the EBB36 because I thought this is the problem but it didn't show up eighter.
I have followed this tutorial 3x over and still not working for me... Manta M8P V1.1 + CM4 and SBB2240 ( used can settings from manual )
Did you add the required information in the Raspberry Pi /boot/config.txt file and /etc/network/interfaces.d/can0?
Can't find klipper uuid help me ebb sb2209 + cb1 + manta s8p help
Which SB2209 do you have. There's a newer one that has a raspberry pi 2040 chip and you need to set up the firmware a little different for that. You flash a .uf2 file not a .bin and you have to connect to a PC to copy the file over to the sb2209 in boot mode.
I have the stm32 one
I cant get the katapult uuid klipper id i can find it but there is no other one
The klipper UUID will overwrite the katapult one, technically it's the same ID with just a system name on it. Did you install klipper firmware to the ebb first? If you have the klipper UUID for the ebb then you are good to go.
Yeah i did flash ebb using the cube thing and mine didnt show up as the 2 uuid katapult id and the klipper id when i flashed it i just have one uuid and disclaimer this is my first klipper config and its a voron at that so i cant find anything with these 3 boards even from btt
Does it work for the Manta Board v1.0 as well?
You will need to use a u2c or io2can adapter for V1. There is no onboard tranciever on that one.
hey. at the step 12 and onwards, did you power ebb via psu or usb?
i'm currently stuck on that step as the cb1 doesn't see the ebb.
It's only connected to the USB to do the initial install of CanBoot. The rest is powered from the power supply and plugged into the CAN port.
@@StackingLayers wow, quick reply.
Do I need to put jumper cap on the PT pins also to make them talk to each other or 120R would be enough?
The PT pins are for a temperature sensor. You just need the 120R jumpers on both boards
@@StackingLayers thanks a lot. Apparently, you can't power it via usb to just set up klipper on ebb. (wanted to test it, just to know)
Hi,
i have tried this for two days now, but always get to the same problem:
1. I flash the image on the pi, then the firmware on the m8p
-> everything works and shows values
2. I do the things you have described : All canbus devices show up with UUID
-> 'ls -l /dev/serial/by-id/' returns 'No such file or directory'
And klipper says 'klippy tries to communicate .. etc.'
So the problem is, that i loose the serial connection to the m8p, when i flash it with the CanBus firmware ?
Any advice ? I have gone back and flashed the m8p with the old code and it works again, but Can Bus doesn't
Maybe some can help me here ?
Canbus takes over from serial you don't use the /serial/by-id anymore
You need to set
canbus_uuid : the UUID number here
@@StackingLayersOh, yes you are correct. Thank you a lot!
I can with the m8p blanket resume a print if the power goes out??
I don't believe the klipper developers have implemented that and last I read they are not interested in doing it either.
To get UUID from EBB, Don't forget to put Jumper on R120😳
Yes you must have 120R on both ends of a canbus line, otherwise you will have communication issues.
Can i do this with ebb sb2209 ,have the same chip stm....g0b1 and the same manta board, and i think coz the ebb have the same pins p0/p1?
BTT has a GitHub page with the pinouts for all the boards (can't link to it, but google "GitHub BTT EBB". In the diagram for the EBB SB2209 CAN V1.0 it shows PB0/PB1.
i am a little confused i got to step 13 now for flashing the EBB do i connect it via canbus hi / low or usb host on the cb1? that part was left out of the video how to connect to ebb to flash klipper
Yes you connect to canbus at this point. I didn't show it but mentioned it around the 31 minutes mark.
and you are still powering the ebb via usb? @@StackingLayers
No, I connect 24v from the power supply.
By the way, has anyone told you that your voice sound alot like Ryan Reynolds in many ways. ?
😆 no that's a first. I'll have to go find a sound clip of him now.
first off thank you for the video on how to set this up. i followed your video and it got me setup using a manta M5P and a EBB 36 and it is working great. im not sure what you did differently in the video as compared to the written instructions that you have but the video works and the everytime i used the instructions i could not get it to work. i have written everthing that you have done in the video and in the order that you have donw them and rewrote the instructions as to how you performed the operations. im willing to email you a copy of them but your email address is not showing. please let me know if you would like the copy
The part in the description is more of a supplement to the video. What parts do you think would be good to add? I was getting a lot of spam so I don't want to post my email at the moment.
@StackingLayers fully understand the email stuff. I don't have access to my computer at the moment but I do remember that you did step 8 at the end. I used thus video to setup the printer initially and the latest version of klipper wanted a firmware update. When the update locked up the printer I headed back to the video to reset the system and figured I'd just use the notes and couldn't get it to work, tried this twice. Followed the video and viola, so I rewatched the video and copied down what you did for future reference
Kind of stuck, flashed canboot to a SB2209 no problem and I see 2 UUIDs for Klipper and Can. Flash firmware to the SB2209 and now only see 1 UUID for the Manta none for the Can adapter. Where did I go wrong?
Is the canbus UUID for the sb2209 already entered into the printer.cfg? If klipper has it configured then it will not show in the query
@@StackingLayers kipper not configured yet
This is a new build
Maybe double check that you set the same can speed as the system settings and correct can pins when you made the Klipper firmware for the sb2209?
Great turorial but im stuck with this. I flashed my board in dfu and it did the download complete and the error same as yours however when i try to get the uuid it gives an error
What's the error?
Says unknown command im using the updated Katapult but with an Octopus Max EZ. Im wondering if my issue is that im trying to read the board and power the board from usb.
Could be a syntax error, what are you putting in as the command?
Hi - do you know of any other way to get the UUIDs as mine will not show
can't figure out what i am doing wrong!
Do you already have a printer.cfg set up for the m8p in mainsail/fluidd? If so put a # by the UUID you have so it can't connect, or backup and remove the printer.cfg so Klipper has no way of connecting to can0. Also make sure you have the 120r pins jumpers in place.
@@StackingLayers let me try that 👍👍
Has anyone tried this on a M5P? pinouts look like they are the same, and after 8 times of attempting this, and reimaging my SD card EVERYTIME...and starting from scratch, I am closer to going to Pluto than I am getting this to work
For the m5p when setting up the firmware, after the can bridge part the can pins are PD0 and PD1, not PD12 and PD13 like the m8p
on step 11 make flash FLASH_DEVICE=0483:df11 is this just a generic command or is it board specific ?
It's a device ID for your stm32 that's in dfu mode. klipper has added the tools from stm32 to allow to flash to these chips
ok it just did show how he got the numbers for that so i rewatched the video and seen them on the stm programmer PID and VID section@@Mr_Pewpy_But-Whole
That's the common id for the chip. You can always check with the command lsusb
Hiya, I'm interested in getting ebb36, just wondering though, as I'm running orbiter 2.0 with orbiter filament sensor, can both be plugged in to the CANBUS?
It depends on what the sensor needs to run but if it's set up like a normal sensor then yes. The ebb36 has endstop pins that can be defined for various things.
@@StackingLayers I'm planning to use this on my Merc 1.1 conversion which has got X-AXIS endstop as part of the toolhead (EVA2.4). if the endstop is taken for the filament sensor, how can I continue to use the X endstop? thanks
There are 3 available pins for the End-Stop and other options
@@StackingLayers yeah, but I since I need it for filament sensor which need 4 (5V, GND, sensor and unload), I'm only left with 1 which is not enough obviously for an endstop
Standard endstops need only 1 sense pin and the other side to 0v(ground) 5v is not needed.
does this work with fly sht 36 pro
As long as it's configured correctly, with matching bitrates, and wired correctly it should work.
@@StackingLayers a quick question, i just bought a voron already set up and running, yesterday i updated my mcu manta m8p to newer klipper v0.12, ive had a problem to flash the firmware to the fly sht 36 pro, but the can is already installed and setup, at the mainsail, it only stated that my mcu sht is not up to date, so can i just follow all your step here just to flash the firmware of the sht 36, or will it do any problem later if the can already setup bro, and im redoing it again following your setup here in this video?
@@muhammadakmalfadilah3273 yeah you can just update the the sht. It's recommend to update all boards though. And remember that you have to set the canbus bitrate to match whatever the rest of the system is. Originally in the video I has set 500000 but it's more normal now to have it set to 1000000.
Would this work on a manta 4 board?
Unfortunately the manta m4p doesn't have a canbus transceiver built-in, but you could attach a U2C module and that will work. You would skip the can bridge firmware for the m4p and just set it up as normal usb connection. The ebb will be the same as in the video.
@@StackingLayers
I bought a custom built ender 6 that was somehow running can bus on a manta 4 board the I think a power surge took out my programming and I can't find how to re enable it. Should I upgrade to the 8 or the manta 5 board
If you had canbus running then there must be a canbus hat on the gpio pins or a U2C module the manta m4p cannot run canbus alone. It doesn't contain the physical components for it to work.
@@StackingLayers
I have look so many times and looks like a plain normal m4p
I fried the SB2900 and I now have a EBB36. After going through everything and getting both uuid's I restart everything and the uuid for the CB1 is gone. If I Flash it again I get the same uuid, but as soon i re-power the board the CB1 uuid is gone. The uuid for the EBB36 is always there.
If I unplug the EBB36 before I power on the CB1's uuid stays. Only if I power on with EBB36 connected i lose the uuid for the CB1.
Any thought?
Maybe I just need to start all over flashing everything?
Once you have the UUID for a device you should just copy in a note to reference it. They do not change. So you just need to put the right uuid in the klipper printer.cfg for the [mcu] it belongs to and you should be good to go. By the way what do you mean you are getting a uuid for the CB1? That's not something you should be getting. You only need uuid for the canbus devices. The cb1 is the host computer
@StackingLayers Wnat I mean is that I get a uuid from the Manta Klipper and from the canbus, but as soon I reboot the Klipper uuid is gone.. I re-flash klipper to the Manta with the CBB1 it shows again. Turn everything off and start again, and it's gone.
@mkhjensen if you have put the uuid into the printer.cfg for the [mcu] then it will not show again when it connects.
Ok, then there must be another reason I get can't connect error.
Do you have the 120R jumpers in place?
Ever have the issue where /dev/serial isn't made? I cannot get this to be made for the life of me even if CAN is set up. No webpages have any fixes rn
When setting up canbus there will be no dev/serial ID. You will be querying the UUID instead.
@@StackingLayers for both of the boards I am using the UUID in klipper configs instead of MCU from the dev/serial? I thought for the m8p you still had one?
When setting up usb as canbus bridge, you will get a UUID
@@StackingLayers when I use canbus_uuid for both the CB1 MCU and EBB42 MCU then it gives me an error “serial in section MCU must be specified”
@@StackingLayers When I used canbus_uuid for the cb1 mcu it throws an error saying I need serial
Hi, I can't use STM32 Cube, I have a SB 2209, and it doesn't allow writing, the motherboard is Manta M8P v2, can SB2209. what other boot option do I have?
Try an older version of stm32 cube. Others have reported that the newest version has some problems.
Wait, that one has the RP2040 chip right? If so just make the firmware or katapult bootloader for it and flash it Fia boot mode. With it plugged in via usb, you hold the boot button and click reset then let go of the boot button, to get into boot mode then you can drag the .uf2 file or use the,
make flash FLASH_DEVICE=
command.
You'll need to put the device id after the =. You can find it with,
lsusb
It'll show as rp2040 boot or something like that.
@@StackingLayersI succeeded with a newer version of STM32, but I can't get past step 12, I can't find the UUID, it seems that something is wrong. everything was installed before the test and it worked correctly but not with the UUID for the mcu, after the new klipper update, it didn't work anymore and I have to reinstall. it seems that even installing Manta with a separate card doesn't work anymore, the firmware.bin file doesn't turn into *.cur
What size SD card? Is it formatted to FAT32 and being inserted into the MCU slot?
@@StackingLayers Micro SD 16G/Fat 32
ty, informative and helpfull video! but one thing! i write like my father did, hitting the keys way to hard 😂
Hahaha yeah I do have a problem with smashing keys.🤣 I'm saving to get a decent microphone to help with sound quality
Or you can use RRF and just plug it in and it works sadly not with a mant aboard though :)... But good video for Klippah -Thanks
I'm sure RRF is appealing for some, and I've heard duet makes quality stuff, but I like this style of diy. Plus this is a super easy system to setup once you know how it works. You are also not limited to special boards.
@@StackingLayers not limited to special boards in RRF either. RRF runs on many (obviously not all) of the same modern boards Klipper does. It's common missinformation that it only runs on Duet3d. For the toolboards Mellow is making the same Toolboards for RRF as Klipper just going into production now. RRF has run on MKS BTT and Mellow boards for a few years now. For just the toolboard RRF had a software only solution for CANFD that made a lot of the current boards compatable but with all the patents on CANFD and the holders unwillingness to license a software solution sorta killed it :) You can still get it, but have to compile yourself. However, any RRF board with CAN can also act as a toolbord to any another CAN RRF board so... the posibilties are pretty amazing. Anyway sorry to hijack your comments -Great video and I'm sure it will help me on my Klipper builds.
No worries about hijacking. I like learning about new things. My comment sections are always open to conversation and debate, as long as it stays friendly and constructive. I knew RRF ran on other non duet boards , but I didn't know the possibility of can was there. I honestly haven't put too much attention on RRF since Marlin and Klipper satisfied my interests. Perhaps I'll look more into it on the future.
I'm glad you like the video. I'm still working on being thorough but shorter at the same time. AKA quit rambling and stay on track! 🤣 Hopefully it helpful though.
need your help man, followed your instructions all the way til I reached the 34minute mark, upon checking uuids i only have one (1) -- Klipper application... anything i did wrong???
So you see the m8p/controller board uuid only? Make sure the 120r jumpers are in place on both boards and that you have canH to canH and canL to canL.
@@StackingLayers yes all connected. only shows flashcan error "unable to bind socket to can0"
@@StackingLayers just an update, i changed the jumper at m8p and now it does not have the errorr "unable to bind socket to can0" but still uuids shows only one - Kilipper app
@@joncalmavergara3788 have you tried reflashing the firmware to the ebb?
Atm staring and focused at your video and making sure i do everything right 😂
I cant for the life of my figure out how to power my canbus on my manta e3 ez the pinout is crap when it comes to show where your pos and neg red or black wires go.
They go to the power supply of your system. 24v for example
I was watching your video and noticed you have it like the hooked everything up put the jumper on and we got can thanks for the video really helped me out.@@StackingLayers
Awesome! Glad to see it was helpful.
Dude thank you for the video, however you are all over the place and not showing step by step so we are lost filling in the gaps.
It's fairly step by step, but I am showing it with the assumption that the people going with canbus have the basic klipper setup process in order, since canbus is a little more advanced. Where are you getting stuck?
@@StackingLayers After I flash the Octopus board, it does not show any CAN devices when I run the query, even though it says the flash was successful.
How did you set up the klipper firmware? How is it connected? Do you have the MCU set up in can bridge mode or as a standard node? Did you make sure all the nodes are set to the same speed? Do you have the termination resistors in place?
@@StackingLayers Yes, I followed your instructions which have gaps which I am trying to figure out. Yes, I have a PAD-7 which I can use as a bridge. Yes all nodes are set to the same speed, and the test termination resistor is in place. when I make flash FLASH_DEVICE=0483:df11 it say it is successful however no UUDI is report when I do ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0 .
Tried using the written guide, it is missing too much information to be used, can't follow your youtube, redundant rambling
I've tried this like 5 times and I just cannot get it to work. I was following along with the video (obviously replacing any instance of "CanBoot" with "katapult"). Everything works exactly like your video says it should ... right up until you do the "shut down the M8P/CB1 and then plug in the CAN board" step. Then when I turn the M8P/CB1 back on it acts as if I never did the flash. I get an error message that basically says there are no UUIDs, either for the M8P/CB1 or the board I just plugged in. For reference, the CAN board I'm trying to set up is a BTT MMB (not an EBB) and the M8P is a v2 (and yes, the jumper connector for 120R is installed on both), so any time you showed a 'make menuconfig' I had to look it up and change the settings to match the appropriate board. But I don't think that's the problem, like I said everything was working perfectly, right up until I did the shutdown. Then when turning it back on (with the MMB plugged into the M8P via the CAN cable and NOT the USB-C), it acts like it didn't save whatever changes were made that made it detect the CAN in the first place. Here's the error message:
biqu@BTT-CB1:~/katapult/scripts$ python3 flash_can.py -i can0 -q
ERROR:root:Flash Error
Traceback (most recent call last):
File "/home/biqu/katapult/scripts/flash_can.py", line 491, in run_query
self.cansock.bind((intf,))
OSError: [Errno 19] No such device
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/biqu/katapult/scripts/flash_can.py", line 619, in main
loop.run_until_complete(sock.run_query(intf))
File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
return future.result()
File "/home/biqu/katapult/scripts/flash_can.py", line 493, in run_query
raise FlashCanError("Unable to bind socket to can0")
FlashCanError: Unable to bind socket to can0
Double check that your can0 is set up correctly. Get Into the can0 file with this command
sudo nano /etc/network/interfaces.d/can0
It should look like this,
allow-hotplug can0
iface can0 can static
bitrate 1000000
up ifconfig $IFACE txqueuelen 1024
Make sure that is set that way and hit Ctrl+X then Y then enter. To save and exit if you changed anything. The bitrate needs to be the same on all devices and 1000000 is now the recommended value.
@@StackingLayers I get exactly what you show here, without making any changes. But the error still persists.
I'm assuming the MMB is powered up too right? Not only the can line. I'm sure it is but I have to ask. Also the bitrate when you made the firmware, was it 1000000 too on both boards?
@@StackingLayers The CAN line that the MMB comes with has both power and data in a single cable, with a special plug on one side for the MMB which cannot possibly be plugged in backwards, and the other side was 2 loose wires for the power connection and a 2-wire connector to plug into the CAN spot on the M8P board. I couldn't reach both the PSU itself and the M8P with the one cable, so I connected it into the same slot on the M8P's power-in connection (both the wires from the PSU and the wires to the CAN cable I installed a fork spade connector, and the two forks for red and the two forks for black are stacked in the one connection slot each). The lights on the MMB are on. But the M8P isn't even giving its own UUID after the reset, which it did before the reset.
@richard3365 I'm aware of the cable I have some too I would just asking about power because I have seen some people think that just the two can lines are required as long as you're not using the hot end. Basically thought that the power was only for Motors and heaters and such, not for can bus. So I just double checked. sounds like you have plugged correctly.
My chance did you already enter the UUID into your printer.cfg for the Manta? If you did and klipper recognizes it, it will not show any more when you query.
everything works for me except step 14. that last step of flashing. any help?. been trying to get canbus up for a month. manta m5p with a ebb36.
What is the error you are getting? And did you remember to have the 120Ω jumpers in place on the boards?
@@StackingLayers biqu@BTT-CB1:~/katapult$ python3 ~/katapult/scripts/flash_can.py -i can0 -f ~/klipper/out/klipper.bin -u 12f331154db9
Sending bootloader jump command...
Resetting all bootloader node IDs...
Attempting to connect to bootloader
ERROR:root:Flash Error
Traceback (most recent call last):
File "/home/biqu/katapult/scripts/flash_can.py", line 479, in run
await flasher.connect_btl()
File "/home/biqu/katapult/scripts/flash_can.py", line 90, in connect_btl
ret = await self.send_command('CONNECT')
File "/home/biqu/katapult/scripts/flash_can.py", line 196, in send_command
raise FlashCanError("Error sending command [%s] to Can Device"
FlashCanError: Error sending command [CONNECT] to Can Device
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/biqu/katapult/scripts/flash_can.py", line 626, in main
loop.run_until_complete(sock.run(intf, uuid, fpath, req_only))
File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
return future.result()
File "/home/biqu/katapult/scripts/flash_can.py", line 487, in run
await flasher.finish()
File "/home/biqu/katapult/scripts/flash_can.py", line 275, in finish
await self.send_command("COMPLETE")
File "/home/biqu/katapult/scripts/flash_can.py", line 196, in send_command
raise FlashCanError("Error sending command [%s] to Can Device"
FlashCanError: Error sending command [COMPLETE] to Can Device
and yes i have both jumpers installed. one on the m5p and one on the ebb36.
It looks like it's not able to establish a connection. Have you double checked that the UUID is correct? And you haven't put the UUID in the printer.cfg yet have you?
@@StackingLayers biqu@BTT-CB1:~$ ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
Found canbus_uuid=12f331154db9, Application: Klipper
Total 1 uuids found
then python3 ~/katapult/scripts/flash_can.py -i can0 -f ~/klipper/out/klipper.bin -u 12f331154db9
i have not added anything to the printer.cfg yet.
thank you for the help!
8: Verify the connection, and copy your UUID for future use.
~/katapult/scripts/flash_can.py -i can0 -q
use usb connect or can H canL ???
thank
You must be connected to canbus (canH ans canL) to be able to query can0 connections.
before send comman can't see uuid (m8p v2) but i test jump to m8p 1.1(otherprinter) is can show uuid -*-
Do you have the 120r jumper in place on the board? And have it set to can bridge mode?
Thanks Patrick, for the great tutorial; however, I'm stuck at finding the UUID of my Manta M8P V2. I'm encountering this error:
biqu@BTT-CB1:~/klipper$ ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
Traceback (most recent call last):
File "/home/biqu/klipper/scripts/canbus_query.py", line 64, in
main()
File "/home/biqu/klipper/scripts/canbus_query.py", line 61, in main
query_unassigned(canbus_iface)
File "/home/biqu/klipper/scripts/canbus_query.py", line 20, in query_unassigned
bus = can.interface.Bus(channel=canbus_iface, can_filters=filters,
File "/home/biqu/klippy-env/lib/python3.9/site-packages/can/interface.py", line 127, in __new__
return cls(channel, *args, **kwargs)
File "/home/biqu/klippy-env/lib/python3.9/site-packages/can/interfaces/socketcan/socketcan.py", line 594, in __init__
bind_socket(self.socket, channel)
File "/home/biqu/klippy-env/lib/python3.9/site-packages/can/interfaces/socketcan/socketcan.py", line 459, in bind_socket
sock.bind((channel,))
OSError: [Errno 19] No such device
I also have a question on how to use katapult and deployer.
Hmm I've never seen that error before. Seems like this not seeing a device. Have you double checked the cb1 is fully seated? And double check that you set the correct pins for canbus bridge.
Katapult is the new name of canboot installation is the same.
I haven't explored Deployer or docker methods of installation yet.
I was able to solve the issue. The flashing of Manta V2 is different from V1 because V2 uses different chip.
Oh, I assumed you had that part done already.
Was that the only differance you encountered between the M8Pv2 and the v1?@@andrelloydtorres4468
PD12 and PD13 are also pins assigned to stepper motor 7. I received an error in Klipper stating that. What do I do?
Never mind, I grabbed the V1.0, not the V1.1 klipper cfg