this post was submitted on 25 Apr 2025
1 points (55.6% liked)

3DPrinting

18047 readers
35 users here now

3DPrinting is a place where makers of all skill levels and walks of life can learn about and discuss 3D printing and development of 3D printed parts and devices.

The r/functionalprint community is now located at: or [email protected]

There are CAD communities available at: [email protected] or [email protected]

Rules

If you need an easy way to host pictures, https://catbox.moe/ may be an option. Be ethical about what you post and donate if you are able or use this a lot. It is just an individual hosting content, not a company. The image embedding syntax for Lemmy is ![](URL)

Moderation policy: Light, mostly invisible

founded 2 years ago
MODERATORS
 

Comparing HyperFFF and "traditional" G-Code for Raise3D machines I noticed that the only difference seems to be the M99123 command at the beginning of the file (identical for different STL-models):

M99123 /RKIIyAfrgVn63QgWjcMv3w/DQafsD84EnC8915R6MD0Ipw/VGrHawCYdCJaNwKoDQafsD84EnC8915R6MD/RKIIyAfrgVn63QgWjcMv3w/DQafsD84EnC8915R6MD0Ipw/VGrHawCYdCJaNwKoDQafsD84EnC8915R6M/RKIIyAfrgVn63QgWjcMv3w/DQafsD84EnC8915R6MD0Ipw/VGrHawCYdCJaNwKoDQafsD84EnC8915R6M/RKIIyAfrgVn63QgWjcMv3w/DQafsD84EnC8915R6MD0Ipw/VGrHawCYdCJaNwKoDQafsD84EnC8915R6MD0Ipw/VGrHawCYdCJaNwKoDQafsD84EnC8915R6MD0Ipw/DQafsD84EnC8915R6MD0IpD0Ipw/VGrHawCYdCJaNwKoDQafsD84EnC8915R6MD0Ipw/DQafsD84EnC8915R6MD0IpD0Ipw/VGrHawCYdCJaNwKoDQafsD84EnC8915R6MD0Ipw/DQafsD84EnC8915R6MD0Ip0Ipw/VGrHawCYdCJaNwKoDQafsD84EnC8915R6MD0Ipw/DQafsD84EnC8915R6MD0Ipw

Any clue how this G-code command works and what is written there?

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 2 points 4 weeks ago (1 children)

I might have the klipper source unzipped from the update file (7 zip noticed that there is more data). Where do I need to check/look for this M99123 implementation?

The update file itself starts with: "RAISE - MXC - PACKAGE...." MXC might stand for STM MXcube as Rais uses an STM32 MCU. Scrolling through the file it looks like it also contains some sort of files for YOCTO-Linux for an NXP chip which might be related to the display.

Also does Klipper still use Python 2.7 and other EOL packages that are 15 years old by now?

Looking at the key-file: It is a gzip which contains a USTAR which contains some sort of, I suppose, key: "RAISE - MXC - KEY _ 'C[....]"

[–] [email protected] 1 points 4 weeks ago* (last edited 4 weeks ago) (1 children)

I was looking through, generally custom macros are in the config folder, unsure if they've implemented it differently, here's the Raise3D repo I found earlier, klipper has some code in c for the microcontroller stuff AFAIK with klippy in python, I've not personally dove into the code, just config and macro stuff largely.

Actually digging through a bit, there's some gcodes in /klippy/gcode.py in the above repo I don't see in the Mainline Klipper equivalent, like M9999, it might be a start, klippy lives on the host machine.

[–] [email protected] 1 points 4 weeks ago

This is the base folder of the unzipped update.

differencing: WCH CH341 driver eve: AI chatbot scripts: boring scripts and a binary blob (.elf file: fdm_virtual_device)

Regarding the M9999:

	else if(strcmp((const char *)rec_cmd[ptr].cmd,"M9999") == 0 )
	{
		ansifo->main_cmd   = SET_AUTO_TEMP_CMD;
		return SET_AUTO_TEMP_CMD;
	}

https://github.com/Raise3D/Klipper-Raise3D-Pro3-Series/blob/97416850a18466eea04865f2c92503501841681c/klipper/klippy/extras/virtual_sdcard.py#L535

For M99123 there is only one reference: https://github.com/Raise3D/Klipper-Raise3D-Pro3-Series/blob/97416850a18466eea04865f2c92503501841681c/klipper/klippy/extras/virtual_sdcard.py#L535