top | item 32221078

An STM32 emulator written in Rust for 3D printers

113 points| nviennot | 3 years ago |github.com

21 comments

order

_fizz_buzz_|3 years ago

I suppose emulating STM32s is all we can do at the moment. Impossible to buy one until sometime in 2023. On a more serious note: Great project!

keewee7|3 years ago

I thought MCUs popular in both industry, college, and among hobbyists would be more readily available by now.

What is actually possible to get your hands on now? What about 32-bit ARM Arduinos and ESP32s?

riffraff|3 years ago

How come STM32s are not available? I thought the chip supply issues were mostly related to smaller process nodes while these should be made on relatively older ones.

kmeisthax|3 years ago

Could this be used to, say, reverse-engineer the Chitubox-proprietary file format that a lot of 4K+ MSLA printers use?

tslater2006|3 years ago

I'm guessing you are referring to the new format they released with Chitubox 1.9 that encrypts portions of the layer data. The Chitubox file format has been reverse engineered and their encryption as well. The format is in the CTBEncryptedFile.cs of the UVTools project, and the encryption specifically is handled in the CryptFile mehtod: https://github.com/sn4k3/UVtools/blob/master/UVtools.Core/Fi...

010 Editor templates for both the encrypted CTB and the decrypted CTB are also provided in the repository: https://github.com/sn4k3/UVtools/tree/master/Scripts/010%20E...

st_goliath|3 years ago

I found this sentence (emphasis mine):

> This emulator is done in the context of my work on reverse engineering 3D printers

in the README of the repo, right there on the page being linked to, pretty much at the top of the README.

Given that it is an STM32 emulator, developed specifically for reverse engineering 3D printer firmware, I suppose it can be used for reverse engineering how a specific 3D printers firmware decodes a file format then?

sbf501|3 years ago

Impressive. This would be great for drone flight controller software, as almost 100% of the racing controller market is STM32 processors.

stavros|3 years ago

And great for development/testing too, if you can emulate an entire drone.

ostenning|3 years ago

Could this be used for automated tests?

kennywinker|3 years ago

My thoughts exactly! It’s confusing to me coming from the desktop+mobile software world, how little automated off-device testing there is in the embedded world.