Skip to content

Attack Firmware v1.2, Target firmware v1.2, Dump Script v1.3

Compare
Choose a tag to compare
@CTXz CTXz released this 01 Oct 21:29
· 25 commits to main since this release

This release mostly consists of @deividAlfa's contributions (special thanks) and a couple of minor fixes for issues pointed out by people.

Here's a summary of what has changed:

dump.py:

  • Updated minimum OpenOCD version to 0.11.0 until backwards compatibility for 0.10.0 has been implemented (See #2)
  • Fixed OpenOCD version detection to work with dev builds by switching to regex based version testing
  • Wait 2 seconds to give the user some buffer/head-room to properly connect the debug probe (See #9)
  • Fixed target fw upload failing if the absolute path of dump.py contains spaces (See #3)

Attack Firmware:

  • Set the Pico's nRST sensing input to pull-up to avoid a voltage divider forming between the nRST's pull-up and the Pi's GPIO's pull-down. Depending on the target device, this could have lead to instability due to the nRST line being too low. (See #5)

Target Firmware:

  • Dynamically determine flash size by reading the Flash size register (0x1FFFF7E0, see RM0008 page 1076). On 64kB, 128kB's are read as it's the same die and some firmwares make use if this. (See #8)

Other fixes:

  • Fixed "Note" with GPIO wiring in the Bluepill Fritzing sketch in the README.md (See #6)

Here's an oscilloscope comparisont to showcase the voltage accross the nRST line without the Pi's input being set to pull-up, and with its input being set to pull-up:

Without pull-up:

dso_03_10_20_50_47

The max voltage was around 2.7V

With pull-up:

After

The voltage now reaches the expected and desired 3.3V (alright... its 3.2V, but that's close enough 😉)