-
Notifications
You must be signed in to change notification settings - Fork 17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How to install custom firmware? #65
Comments
I can print the rauc bundle metadata: $ rauc info --output-format=json --keyring=../../../../../keys/cert.pem sla-update-bundle-prusa64-sl1-my-custom-build-dirty.raucb | jq .
rauc-Message: 06:58:59.390: Reading bundle: /home/parallels/Prusa-Firmware-SL1/build/tmp/deploy/images/prusa64-sl1/sla-update-bundle-prusa64-sl1-my-custom-build-dirty.raucb
rauc-Message: 06:58:59.391: Verifying bundle...
{
"compatible": "prusa64-sl1--prusa",
"version": "my-custom-build",
"description": "sla-update-bundle version 1.0-r0",
"build": "20220620064512",
"hooks": [],
"images": [
{
"rootfs": {
"variant": null,
"filename": "sla-image-prusa64-sl1.root.ext4",
"checksum": "ac5675e6a1182293c7ece6f29a49b05dd80134d5e836904905a14101d9e10c97",
"size": 805306368,
"hooks": [
"post-install"
]
}
},
{
"bootloader": {
"variant": null,
"filename": "u-boot-sunxi-with-spl.bin",
"checksum": "c62657f11aac1a9a72854e5f46a2545f6a85fd1d6a554f4a665581d611d52be4",
"size": 473859,
"hooks": [
"post-install"
]
}
},
{
"etcfs": {
"variant": null,
"filename": "sla-image-prusa64-sl1.etc.ext4",
"checksum": "ff518931127a4cbb97bc15f6239aa16d57ce53b340a437b3f9c8650e5a08ca25",
"size": 33554432,
"hooks": [
"post-install"
]
}
}
]
} And the sha1sums of the bundle on the host and the thumbdrive match: $ sha1sum sla-update-bundle-prusa64-sl1-my-custom-build-dirty.raucb
8d0d7261916063533d62250ef5829e9dd5d4c0b9 sla-update-bundle-prusa64-sl1-my-custom-build-dirty.raucb
$ sha1sum /media/parallels/872C-D12A/sla-update-bundle-prusa64-sl1-my-custom-build-dirty.raucb
8d0d7261916063533d62250ef5829e9dd5d4c0b9 /media/parallels/872C-D12A/sla-update-bundle-prusa64-sl1-my-custom-build-dirty.raucb |
Digging into the system logs it seems it's failing because the certificate generated as part of step 4 in the OP is self-signed: Jun 21 08:31:30.614260 prusa64-sl1 rauc[257]: signature verification failed: Verify error:self signed certificate
Jun 21 08:31:30.616561 prusa64-sl1 rauc[257]: installing /run/media/system/sda1/sla-update-bundle-prusa64-sl1-my-custom-build-dirty.raucb: signature verification failed: Verify error:self signed certificate
Jun 21 08:31:30.616601 prusa64-sl1 rauc[257]: installing /run/media/system/sda1/sla-update-bundle-prusa64-sl1-my-custom-build-dirty.raucb: finished
Jun 21 08:31:30.617229 prusa64-sl1 rauc[257]: installing `/run/media/system/sda1/sla-update-bundle-prusa64-sl1-my-custom-build-dirty.raucb` failed: 1
Jun 21 08:31:30.775829 prusa64-sl1 touch-ui[308]: qml: Error updating firmware: signature verification failed: Verify error:self signed certificate
Jun 21 08:31:30.778256 prusa64-sl1 touch-ui[308]: qml: Trying to push an error: {"code":"#10534"} I'm guessing the printer needs to be put into some sort of development mode to skip the certificate check, otherwise it looks like you can only install official firmware on the device? |
Your guess is correct, the firmware protects itself. You can make the bootstrap μSD via sla-bootstrap. Remove the red sticker from the μSD slot (THIS WILL VOID YOUR WARRANTY!) and boot from that μSD card. It completely deletes the original firmware and you can use your own. The μSD slot is on the other side of the RTC battery. |
Optionally you can boot up sla-dev-image μSD and just use it instead of full bootstrap. You can go back to original fw if you remove the μSD (but you will lost your warranty anyway). |
I'm not quite sure what I'm doing wrong here, any guidance would be much appreciated.
The steps I've taken are:
sla-update-bundle
targetbuild/tmp/deploy/images/prusa64-sl1/sla-update-bundle-prusa64-sl1-my-custom-build-dirty.raucb
file to the USB thumb drive.raucb
file that appears in the menu that matches the file I copied onto the thumbdriveAt this point I see a screen saying
"FW meta information not found"
, if I continue with the installation it fails with a 10534 error which means it failed to read the file?Did I miss a step? Do I need to generate this meta information somehow?
The text was updated successfully, but these errors were encountered: