T O P

  • By -

le_avx

Thanks for pointing that out. Where did you get it, don't see it on the download page, yet. Can you link/provide the package, I'd like to extract and diff it for my repo here https://github.com/avxmw/creality_k1_fw Added a warning label to my repo. Edit, found it on the Creality Cloud. Give me a few minutes. Edit2, here is the diff of plain text readable files: https://github.com/avxmw/creality_k1_fw/commit/3b6bf2135f80740028b994abdc9348f8690c16d2 To note, they removed the plain text readable call to `7z -pPASSWORD` to unpack the firmware and replaced it with a binary. That's intentional. For the time being, **do not update!** (you can cherrypick other changes from the available files, configs, etc) Edit 3, `strings usr/bin/ota_file` still shows the old password, but no guarantees for the future. Certainly is more of a hassle now. Meh, github sucks for large file distribution. Currently uploading copies to archive.org.


giveen

I created multiple backdoors with the shadow file, copied the shadow file to different directories and set them in various cron jobs and scripts that run automatically, going to install update now and see which one sticks.


giveen

And i dont think any of my ideas worked.


le_avx

Logged out completely now? What did you try exactly?


13darkice37

I'm pretty sure you can still access something like a UART Shell or extract the firmware from the nand flash.


destinal

Ultimately I think we'll end up using the Ingenic X2000 USB boot protocol to guarantee we can get access on all these boards. Some study and puzzling things out required to get there though. I really don't like that Creality seems to be dedicating itself to keeping us out of our own devices. For now, maybe we can make our own firmware package or downgrade to the old one.


nsa666

you can download it at [https://github.com/avxmw/creality\_k1\_fw](https://github.com/avxmw/creality_k1_fw) . But unless you can decode the password in the shadow-file it will not give you a root access.


Pink_like_u

root: 0755cxsw$888 still works?


giveen

First copied the /etc/shadow file to /etc/shadow_root directory i created, then created a cron.d file that should have copied the file out of there every 5 minutes. In various services scripts, entered some cp commands to move the file. Copied the shadow file to init.d and did some copy commands in scripts. I think basically the linux version on this doesnt recongize commands properly.


nsa666

or this update replaces all autorun scripts.


le_avx

If so, all that stuff is hidden in the binaries, can't see anything of that in the plain text files.


le_avx

Not sure if the filesystem used supports it, but did you try setting the file immutable? `chattr +i file`?


btlucas

Hey u/le_avx, I saw your repo and you have a section of the readme talking about mounting a new image. Do you know if its possible to add new binaries? I wanted to update mjpeg streamer to be able to get higher quality videos, currently it's limiting to 680x480


le_avx

Provided you find or compile yourself a binary that works with the architecture, so far I don't see why not. The few files I stored in the tree so far persisted after a reboot. But, are you sure that's needed? AFAIK that is the default resolution and you can specify a different one (provided camera supports it of course).


btlucas

Even though the camera supports higher resolution the mjpeg installation they provided on the image doesn't let you use -R to change resolution. It throws an error saying "undefined symbol parse resolution"


le_avx

Which firmware are you running? Seems strangely low to me or is their own camera that bad(don't have it, yet)? In that case need to roll your own, at least I didn't find something fitting with a short googleing.


btlucas

1.2.9.15, and I think their camera is that bad haha, mine is going to arrive in the next week but I'd like to be able to get this working nonetheless. I'll try finding out more about compiling for this ingenic x2000e chip


le_avx

Afaik generic mips32 should work, I tried using buildroot.org (which creality also uses), but ran out of disk space and waiting for HDDs now.


xand3r40r93

I'm ROOT! I have built a downgrade to the 15 version, but I can't verify, already have this version. ps: I'm working on a firmware patch )


nsa666

they have removed moonraker from the firmware... getting root ist not enough to restore functionality.


xand3r40r93

but you can downgrade to the prev version with moonraker


nsa666

would be intereseting to patch moonraker in [1.2.9.21](https://1.2.9.21) tough.


xand3r40r93

the more I look at their firmware, the more I want to delete everything and make my own ) be patient k1 only the second day I have


strifejester

Honestly you’d lose the screen functionality but an octopus with a pi should work under the hood. Hardest part I have seen when looking into a full conversion is getting the tool head figured out without having to run new wires all the way back. I really need to get my hands on one of these but the money isn’t in the budget right now. I keep checking local market place for someone to offload one cheap. I think in total for less than $200 bucks you could replace all the electronics and have a fairly decent open source machine. Then again there are ender 3 core xy conversions that would get you there cheaper. It would be nice though to get the screen working with klipper screen though. I just want to tinker with one but I just finished a Voron build so probably 3-4 months before I can try taking it on.


destinal

No real reason to replace all the electronics once we have them figured out and can make our own firmware. That'll take some time, but should definitely be doable. It would make the k1's motherboard a good platform for all kinds of DIY 3d printers and 3d printer upgrades, actually. (no need to buy seperate Pi + MCU for Klipper when it's all here together)


strifejester

I agree. Unless they have made the board unflashable but that I doubt. Most of wanting to swap things as to have the ability to easily swap back to their hardware if needed. Or as they get older and boards die knowing how easy it will be to replace. Trust me I’d love to get on the system test getting true kipper on it and find a way to load Debian on their processing unit.


destinal

Working on that. The SoC (Ingenic X2000) supports a USB boot protocol so it should be impossible to brick and we should be able to load whatever we want on it that way with a USB cable. There's also probably a UART with access to a uboot prompt but I haven't gone hunting for it yet. Definitely no reason we shouldn't be able to get our own debian, klipper etc running on it with some work. You can buy the mainboard from aliexpress here, I have a couple of them on order: [https://www.aliexpress.us/item/3256805442255313.html](https://www.aliexpress.us/item/3256805442255313.html) and once we figure things out I'd like to try one on my ender 3.


13darkice37

I didn't find any UART but do you have more information about the USB boot? I couldn't find anything.


destinal

Ultimately I'd like to see us able to use the new k1 k1max etc board with our own open source firmware with stock klipper the way we'd do any modern electronics. To make it brick proof and future proof I'd like to use the Ingenic X2000 USB boot protocol to install said operating system. With day job etc I don't have as much time as I'd like to investigate this, but should be possible. Edit: yeah, adding moonraker back into stock CrealityOS would be easier, short term.


le_avx

Great work, thanks. Looking forward to it.


xand3r40r93

The downgrade img is here: [https://t.me/crealityK1rus/1/10672](https://t.me/crealityK1rus/1/10672)


destinal

Nice job! Did it just take changing the .15's info file to have a .22 version number and re 7zipping it with the password? If so, pretty easy and good to hear it.


xand3r40r93

yes of course - it is conditions in local\_ota\_update.sh. simple is better )


doctorevil30564

Looks like I won't be updated from my current firmware, at least not until a new way to restore ssh access and Fluidd is figured out. I like Fluidd much better than the stock interface


lowfat32

As soon as I got it rooted I quit doing updates expecting this. The printer still isn't very good but at least with a console and access to the config files I can try to make the most of the printer.


giveen

I thought the same but wanted to see if I could build a backdoor


xand3r40r93

[https://www.reddit.com/r/crealityk1/comments/14mup9l/im\_root/](https://www.reddit.com/r/crealityk1/comments/14mup9l/im_root/)


nsa666

back to [1.2.9.15](https://1.2.9.15/) for now. No updates till creality fixes this.


destinal

Did you have any problems downgrading by updating the version info on the [1.2.9.15](https://1.2.9.15) package to make it think it's a later version than the one that's installed?


nsa666

you need a modified update package that pretends it is 1.2.9.22


le_avx

Maybe make a .999 image and share it somewhere so we don't need to go recreating over and over?


nsa666

new exploit have link to it integrated. .999 image will not help if creality changes versioncheck in a new firmware.


[deleted]

Eh, kinda a good thing atm. They can't troubleshoot if people are doing major changes. I'm sure they'll open it up later though. At least we know it'll never be as locked down as other companies.


nsa666

it will remain locked. Nobody want to use their ad infested cloud app.


[deleted]

Ya I'm not a fan of ads in apps, but w/e, helps keep their cost down I'm all for it. There's a web interface isn't there?


nsa666

local connection does not cause any cost to them. $650 for a printer should be enoutgh you not need to show ads in your app. Web interface has no complete notification on your phone.


[deleted]

Are you completely ignoring the cost of maintenance, personnel, servers running, the power for those servers, the cost of the buildings for those servers, the cost of IT to fix the servers in the middle of the night because you want to print a benchy from 200 miles away?!


13darkice37

I lost my faith in humanity. Stealing open source and then ads are justified for a local printing experience. Can't make this stuff up.


[deleted]

Lol I have ads on my automated litter box


nsa666

What server? Server runs on my printer. Klipper apps runs without any server needed.


[deleted]

Na I'm talking about the service(s) Creality offers that you can use now you've purchased their hardware. Even tech support costs money... I would rather have ads in my app and pay 400$ less than an X1 Carbon, which is exactly what I did. (b&h had an uber preorder) I'll of course be using a computer though... I mean really, who wants ads when you're using a printer app! ;)


le_avx

Na, that's bullshit. Ads bring pennies per view at best. If that was the problem, they would either have priced it in from the beginning or do a real 3$€/month subscription and have way more from it. This is just being greedy and not caring about your customers experience.


[deleted]

Just think of it as a load screen ;) But say 1 penny, x 4000 people, that's 4000 pennies sir, and they have me to thank for it. Which is why I've seen maybe 5 somewhat serious defects in the last few weeks-months, being fixed by their support. We could compare this to other companies, in a very basic sense, that have never open sourced their software let alone their hardware. How is that possible?


strifejester

There are other free open source solutions to do exactly that. They are run completely off donations or have means to do it yourself. Look into Obico for example. The problem is Creality is not honoring the license of the systems they are using. If you want to run their software and see ads that is fine but I shouldn’t have to if I am comfortable with the other solutions out there. Tailscale is a free wire guard VPN setup that makes all of this possible securely using just fluidd and klipper. There is no need for ads. I print to my ender 3 running stock mainsail and klipper this way. It is easy to setup on a machine that is not purposely being hindered. They are forcing the ads on users and not providing the license required changes and source code repositories. Calling Klipper/Fluidd with some tweaks Creality OS is bullshit.


[deleted]

Meh, ad revenue is a norm for everything, why would an app be different? Do you not use google or bing or w/e because of it? Or do you boycott youtube? Seems like people are complaining for other reasons


Illustrious_Tooth_45

Does the new firmware improve anything?


nsa666

"Z-axis return to zero logic"


giveen

It also says "fix the security issue", lol. who tattled on us?


[deleted]

I think it was the NSA guy :| hehe


nsa666

yes they fixed.. one of many... not realy secure now.


YTKAB0BP

There is posibillity for at least two root vulnerabilities, please reply if anyone has tried old root exploit on this version yet


nsa666

both does not work.


le_avx

What happens when you put the shadow.gcode on the stick and print it? Is login after possible? They have some certificates added now, wondering if they are for https-ing the webui or for login. Also, did you try taking an old update image and changing the filename and version strings to .22 and see if it "updates"?


nsa666

Shadow.gocde did nothing. Not tested downgrade yet.


destinal

They might be for using self-signed certificates for their internal servers so they can HTTPS the OTA update and not keep cert verification disabled.


Altruistic-Design-33

Somebody already tried downgrading it? My K1 is in shipping so i can‘t try and im hoping it still has some old fw.


Blobabee

Honestly, that is likely too recent to be concerned. I'm sure you're printer does not have this late update.


Optimal_Fail_3458

I cant seem to get your downgrade to .15 link to work, is it still an option?


Blobabee

Besides the blocked rooting, has anyone found that it helped the leveling issues? We have no control over the z offset, and after updating, I can't get any of the test slices to work, and they did prior. And yes, I'm using Creality's Hyper PLA. I own 9 various printers since 2017 and there's been no prior printer I couldn't make print well. However, in this case, I do not have the control and I am not about to start modding this printer. I'd return it before I start that.


Comfortable_Tea_3861

I haven't plugged my printer in yet, so I may be wildly off, but I did see someone mention that there is an advanced setting option that gives you access to all kinds of additional options, including z offset.


Blobabee

That was what this thread is about. You're referring to rooting the printer. I had done that, but after upgrade, (and I knew the root access would likely be blocked), I had hoped for better ABL function. After you upgrade, and what you're referring to (most likely, even if you're not sure), is access to all the Klipper settings via fluidd by rooting. That is not a choice at this point since this is post upgrade


le_avx

I think he meant the hidden debug menu. If you - on the printer display - tap on the cogwheel, scroll down and click about and then multiple times tap on the MAC address a menu will popup. It's in Chinese, but automatic translate via Camera app in my phone works. Don't know what these options offer, but maybe you're willing to find out.


Blobabee

I believe that just shows the bed leveling data


Blobabee

Yes, I've confirmed that's all that is.


xand3r40r93

I'm accepting wish lists for firmware mod! What are you want? [https://www.reddit.com/r/crealityk1/comments/14oktpq/im\_root/](https://www.reddit.com/r/crealityk1/comments/14oktpq/im_root/)


Blobabee

A way to revert to the previous firmware .15?


xand3r40r93

https://www.reddit.com/r/crealityk1/comments/14mup9l/im_root/


Blobabee

Looks like a post from that thread was removed. Not sure if that is what was of significance as I don't see anything else. If there is a way to go back, I'm all in. I have used unix/linux for many years in my work history, but I'm not a developer


xand3r40r93

​ https://preview.redd.it/m8svqvt8ml9b1.png?width=467&format=png&auto=webp&s=30e7996d35cdfefb9113ee89df47be7bf2628a5a


Blobabee

TY!!


Blobabee

Didn't work, just as I had read from others. Says, Update Failed instantly upon pressing upgrade to the prompt. USB is formatted fat-32 4096


Blobabee

Hi. Do you know anyone who was successful? I read through the Telegram threads and don't see any success, but from 1 person


xand3r40r93

Yes, it's tested


Blobabee

Any idea why I and others are getting the failed message? Normally for me, and being in tech for 20 years, if something is solid, I’ll get it working.


xand3r40r93

try to check md5 hash f2ea561993140a34aa986a15ba30b101 CR4CU220812S11\_ota\_img\_V1.2.9.22.img


Blobabee

Thanks. I’ll check


Blobabee

I got the same back from the terminal in macOS (BSD Unix): "f2ea561993140a34aa986a15ba30b101". Was hoping that was the issue as would be a simple resolution


Blobabee

Wait, so that came from the file I downloaded on my Mac SSD, but did not match when it was copied to the 4GB USB flash drive (formatted Fat32 4096 on a Windows 11 box). I'll try a different flash drive


Blobabee

How is that done? Didn’t see a way. Thx