Comment on Raise3D HyperFFF: M99123
morbidcactus@lemmy.ca 1 week ago
Prefacing this, I have no idea, can’t find any information either, I’m just speculating for what it’s worth.
.What’s kinda interesting is someone posted an identical one to the prusa forums like 2 years ago, no responses unfortunately.
I’m willing to guess it’s data, I’d wondered if it was unique per user but if you both have encountered it… don’t think that’s the case. I’m going to assume it’s sending a blob, vaguely reminds me of image thumbnails in gcode, but those are clear that’s what they are, maybe it’s some executable code that changes printer parameters or how the subsequent gcode is processed by the controller to support the HyperFFF mode.
Don’t love it personally, but I’m willing to assume they’re doing this way to obfuscate what’s happening because its proprietary rather than anything malicious. I don’t really have the tools or knowledge to really try to examine it further however, hopefully someone with that skillset is interested enough.
EmilieEvans@lemmy.ml 1 week ago
Preview images are in a separate .data file.
The printer isn’t connected to the internet and the hyperFFF works. The HyperFFF upgrade requires a firmware update and a key file that is specific to the machine/serial number. GCode isn’t machine-specific.
The underlying software/“firmware” is Klipper.
morbidcactus@lemmy.ca 1 week ago
Yeah, didn’t think it was an image, just images in gcode are encoded.
I did find their github with a klipper config, but yeah, unsurprisingly it’s not there. You could see if it has documentation through the klipper console? I’m betting it’s not going to be in your klipper config unfortunately. Definitely leaning toward it being the portion that has the firmware validate the key and then set things up.
EmilieEvans@lemmy.ml 1 week ago
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[…]”
morbidcactus@lemmy.ca 1 week ago
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.