MCPcopy Create free account
hub / github.com/atc1441/ESP32_nRF52_SWD

github.com/atc1441/ESP32_nRF52_SWD @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
66 symbols 170 edges 12 files 1 documented · 2% updated 16mo ago★ 33719 open issues

Browse by type

Functions 64 Types & classes 2
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

ESP32 SWD Flasher for nRF52

This software makes it possible to Read and Write the internal Flash of the Nordic nRF52 series with an ESP32 using the SWD interface. A tool to exploit the APPROTECT vulnerability is included as well.

You can support my work via PayPal: https://paypal.me/hoverboard1 this keeps projects like this coming.

To flash an nRF52 connect the following: - nRF52 SWDCLK to ESP32 GPIO 21 - nRF52 SWDIO to ESP32 GPIO 19 - nRF52 GND to ESP32 GND to N-Channel MOSFET GND (Optional: O-scope GND Clips) - Then power the nRF52 as needed

To bypass the Readout protection (APPROTECT) of an nRF52 connect all of the above and the following: - nRF52 3.3V Power VDD to ESP32 GPIO 22 (Optional: O-scope Channel 2 Probe) - N-Channel MOSFET PWM+ to ESP32 GPIO 5 (as shown) - N-Channel MOSFET VOUT- to nRF52 DEC1 (as shown) (Optional: O-scope Channel 1 Probe) - Then power the nRF52 as needed

This repo is explained and demonstrated in these videos (click to watch):

YoutubeVideo

YoutubeVideo

Required Hardware

  • ESP32 Development Board
  • N-Channel MOSFET Board
  • nRF52 Series Board
  • Optional: Oscilloscope

HowTo:

Use Visual Studio Code with PlatformIO to compile and upload the project.

Note: The Arduino IDE is not supported any more!

Change the WiFi credentials in Web.cpp and the Pinout to your needs in the platformio.ini file

Upload the data/index.htm to the ESP32 via the ip-address/edit web editor

ESP32 Glitcher schematic:

nRF52832 Glitch Tip, way better results with these 2 caps removed

Credits go to LimitedResults for finding the Power glitching Exploit: https://limitedresults.com/2020/06/nrf52-debug-resurrection-approtect-bypass-part-2/

Core symbols most depended-on inside this repo

Shape

Function 58
Method 6
Class 2

Languages

C++100%

Modules by API surface

src/nrf_swd.cpp29 symbols
src/glitcher.cpp12 symbols
src/swd.cpp11 symbols
src/SPIFFSEditor.cpp5 symbols
src/web.cpp4 symbols
src/main.cpp2 symbols
src/SPIFFSEditor.h2 symbols
src/defines.h1 symbols

For agents

$ claude mcp add ESP32_nRF52_SWD \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page