Open main menu

Changes

m
===Binwalk / Binvis -===
I slowed down a bit here because I had no idea how to actually load the file I'd dumped to look at it. First I used [https://github.com/ReFirmLabs/binwalk Binwalk], which I *think* is more suited to SOC work (at least, I think Binwalk is able to find files and systems within bin images, which this firmware does not contain) Anyway Binwalk was able to provide an informative image showing the entropy of the file - low entropy = low chance of corruption or encryption.
 
The midi files are 4x33kb. Minus headers etc; 32kb actual payload x 4 = 128kb firmware. A 512kb NOR flash is generous space for this (4x bigger) Though remember its banked for DFU (when the update is written and verified it will switch active bank flag) Also it seems remapped to different addresses in runtime operation also.
=== DFU Python Script ===
With more help from LLM I made a DFU Update python script which first sends the (probable) DFU command, and then sends sequentially all midi files over serial (at midi baud) I compared the received payload to the sent, and it is correct. I have yet to test on the device.<syntaxhighlight lang="python3">
import serial
135

edits