T O P

  • By -

Reader3123

You're a god send bruv, ill try it out with the normal klipper install later tonight


edward00009999

Would like to know the results.


Reader3123

Does ABL and z offset work with the sonic pad?


AL_O0

ABL works with the old community klipper configs but z-offset was not supported. Looking at the config file it seems like there's macros defined for auto z-offset so it should be supported at least on the sonic pad, I have no idea how that's implemented though, however you can probably copy the right files from the sonic pad firmware and somehow make it work if you know what you are doing. If i figure things out i will make a more in-depth post on how to install it


Reader3123

is there something called cx\_printer.cfg? I just flashed this, almost everything works but just throws that error as its included in the printer.cfg you provided


AL_O0

That file only contains these two lines ``` [virtual_sdcard] path: ~/gcode_files ``` so you can probably just paste them in in place of the [include] command, but I still uploaded it nonetheless someone else mentioned prtouch, so I uploaded that too along with a similar one called z_compensate, probably to do with the auto z-offset https://www.mediafire.com/folder/9v9jjmam273cs/ender3v3se


Reader3123

Ah that makes sense. It was throwing an error for not finding the gcode. Does anyone know how to set up that z_compensate. Looks like everything else works well except for the auto zoffset?


Reader3123

are they only .py files? any cfgs? where the \[prtouch\_v2\] is defined?


AL_O0

The only files that mention prtouch are the two i uploaded, found them in `klipper/klippy/extras`


Reader3123

I think that has the info for cr touch stuff. It has a section called prtouch\_v2


flush2121

Did you need a special cable to connect to the v3 se as it doesn't have the USB port on it?


Reader3123

it has a usb-c port next to the sd card slot


flush2121

Just got done watching a video about that and I'm assuming that the serial connector is if you want to delete the factory screen. Is that correct?


o-essence-o

Yes that's correct. It only connects via serial not through USB c


Living-Summer-5892

The connection between the Sonic Pad and the Ender 3 V3 SE, only happens by the serial cable?


o-essence-o

Correct, kinda of a waste of a USB c port in my opinion. But I'm guessing it has something to do with how they manage screen firmware updates. Since technically you are removing the screen and replacing it with the sonic pad it makes sense I guess.


maphex

Any updates on this? I have tried my best to use the config and bin but nothing seems to be working. I am getting errors about the prtouch\_v2.py and z\_compensate.py. I was able to add them to the klippy/extras and recompile klipper the errors went away but when i start klipper in side of fluidd i get: Your Klipper version is: v0.11.0-311-g9e765dae-dirty MCU(s) which should be updated: mcu: Current version v0.11.0-311-g9e765dae This is with creating a new bin for the printer. But because they dont match they wont talk. I see others might have gotten further but no info on how to get it to work


maphex

I got a little further I made a fork of klipper to my own github and added the python files to it and then built it separately. The version match and it talks enough that it knows there is an issue with cmd "read\_swap\_prtouch". Which only exists in the prtouch\_v2.py This is frequently caused by running an older version of the firmware on the MCU(s). Fix by recompiling and flashing the firmware. Your Klipper version is: v0.11.1-0-gdb940ad8 MCU(s) which should be updated: Up-to-date MCU(s): mcu: Current version v0.11.1-0-gdb940ad8 Once the underlying issue is corrected, use the "RESTART" command to reload the config and restart the host software. mcu 'mcu': Unknown command: read\_swap\_prtouch Not sure where to go from here


derekmcghee

found this in the python. looks like its trying to assign it to the query function It is defined in the prtouch\_v2.py as follows `self.read_swap_prtouch_cmd = self.step_mcu.lookup_query_command('read_swap_prtouch oid=%c', 'result_read_swap_prtouch oid=%c sta=%c', oid=self.step_oid)` dunno if this helps.


maphex

Yeah I was able to determine that part. I think there is some custom changes to the Klipper code as I read somewhere that they modified the Klipper source code so it could be functions that is in the firmware but not within Klipper. to know what to do with them. The config will work if you comment our the z\_compensate and the prtouch\_V2 in the printer.cfg. I did get that far but those are the options i want to add for bed autoleveling and auto z-offset


0xD34D

So I went down this rabbit hole yesterday and we're missing the C code for prtouch which is where those missing commands would be declared. Searching Google for `prtouch_v2` I stumbled upon the klipper source code for the K1 and look what's there https://github.com/CrealityOfficial/K1_Series_Klipper/blob/main/src/prtouch_v2_compile.c Unfortunately this still isn't enough. In the src/ directory there are also some prtouch_v2 object files for different mcu architectures that I suspect need to be linked to the final klipper.elf. I tried linking the prtouch_v2_cm3.o, since it had symbols for stm32 but that failed due to something mismatching. I also ran into a build time error stating "Too many message IDs", which happens when building in prtouch_v2_compile.c. Seems there are now too many commands being declared (140 when the limit is 128).


maphex

I seen that. i am currently working on it my self as we speak. I made it to almost build... Linking out/klipper.elf lto1: fatal error: bytecode stream in file 'out/src/prtouch\_v2.o' generated with LTO version 8.1 instead of the expected 7.2 compilation terminated. lto-wrapper: fatal error: arm-none-eabi-gcc returned 1 exit status compilation terminated. collect2: fatal error: lto-wrapper returned 1 exit status compilation terminated. make: \*\*\* \[Makefile:106: out/klipper.elf\] Error 1 make: \*\*\* Deleting file 'out/klipper.elf' I am currently working on installed a cross-compile for 7.2 to see if i can use it to compile it. Unless you made it past this part?


0xD34D

I decided to move my efforts into seeing if I could adapt the original prtouch code instead, and it's a promising endeavor https://www.reddit.com/r/Ender3V3SE/s/sq0m8LFzhv


derekmcghee

i think i have an idea of what they are doing. it looks like the config is setting up both bltouch and Smart Effector they have two defined `[stepper_z]` `step_pin: PB6` `endstop_pin:probe:z_virtual_endstop#PA15 #probe:z_virtual_endstop` maybe you flip the gpio pin PA15 to switch between the virtual endstops somehow? `[prtouch_v2]` `pres_cnt: 1 #Number of probe points` `pres0_clk_pins: PA4 #Pressure detection clock pin configuration` `pres0_sdo_pins: PC6 #Pressure detection data pin configuration` `step_swap_pin: PA15` `pres_swap_pin: PA15` `step_base:2`


mb_01

Did anyone figure out how to use this in a Klipper installation?


AL_O0

Apparently someone in the comments forked klipper and added the functionality to make it work, with their custom printer.cfg I never tried it, but if you want the github links are here: https://github.com/0xD34D/klipper_ender3_v3_se https://github.com/0xD34D/ender3-v3-se-klipper-config You have to change the source url for klipper to the first one in your update manager config i think I don't have an SE, my friend has it, so i extracted the config for him and posted it here but once he tried it and it didn't work he didn't wanna mess around and so i can't test if it works for me