# Embedded Hacking (mytechnotalent)

> A free English course by mytechnotalent on developing, debugging and reverse engineering firmware for the Raspberry Pi Pico 2 (RP2350, Arm Cortex-M33). A fourteen-week syllabus with slides, Markdown notebooks and a 40-chapter PDF textbook follows a write, debug, then hack pattern from hello-world through variables, data types, constants, operators, conditionals, structures and functions, using GDB with OpenOCD and Ghidra, with Binary Ninja and IDA versions of the notebooks from week 4; an I2C LCD, GPS, LoRa radio, servo and IR remote supply the exercises. Graded CTFs, story-driven classified-brief challenges and a secure-boot custom bootloader ship as author-built binaries alongside their source.

- Type: Learning resource
- Targets: Firmware
- Category: Learning resources
- Relationship: Learning resource
- Sources reviewed: 2026-10-20
- Added to the catalog: 2026-11-02
- Original resource: <https://github.com/mytechnotalent/Embedded-Hacking>
- Primary source: <https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/README.md>
- Catalog page: <https://awesomerea.org/resources/mytechnotalent-embedded-hacking/>
- Record JSON: <https://awesomerea.org/resources/mytechnotalent-embedded-hacking/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/mytechnotalent-embedded-hacking/index.md)

## Requirements & limits

- Reviewed at commit 76fa253 (2026-10-19). The repository dates from October 2023, but its current history restarts with an initial commit on 2026-10-07 and has received commits almost daily since; there are no releases. Weeks 1–7 and 9–11 have slides and notebooks; Week 8 is a midterm built on CTF-02, Weeks 12–13 list only topics, and the two Week 14 final projects are scenario descriptions with no linked files. A supplemental section, which the README places beyond the course, links Rust, Arm-assembly and RISC-V-assembly tutorials, drivers and IoT CTF projects in the author's other repositories.
- The README expects intermediate C including pointers, bare-metal assembly basics, a working model of registers and the stack, command-line use and breadboarding. Hardware is a Raspberry Pi Pico 2 with a Raspberry Pi Debug Probe and the listed parts, among them LEDs, a push button, a 1602 I2C LCD, a DHT11 sensor, an SG90 servo, a VS1838B IR receiver with an NEC remote, a u-blox NEO-6M GPS module, two REYAX RYLR998 LoRa modules and an FT232RL USB-serial adapter; Fritzing and wiring diagrams are in hardware/.
- Setup is native on Windows x64, Apple-silicon macOS and Linux x64: the VS Code Raspberry Pi Pico extension installs the Pico SDK, Arm GNU Toolchain, picotool and OpenOCD, builds use CMake and Ninja, and the course adds Ghidra with JDK 21, a serial terminal and a licensed Binary Ninja Personal; the IDA notebook variants additionally assume IDA. Root flash and debug-server scripts wrap flashing and the debug server.
- No third-party firmware is needed: the exercises target programs the author wrote, and the repository commits their source with build outputs (ELF, BIN, UF2, HEX, disassembly and map files), two Binary Ninja databases, CTF-02's static libraries (its auth module, an mbedTLS subset and the Argon2 reference implementation), the RP2350 SVD file and the custom bootloader's signed images. datasheets/ holds copies of the RP2350 datasheet, the Pico C/C++ SDK book, Arm's Cortex-M33 Technical Reference Manual, the Armv8-M Architecture Reference Manual, AAPCS32 and Application Note 132, which keep their publishers' terms.
- Apache-2.0 for the repository. The README's legal disclaimer limits use to educational, research and defensive work on devices the user owns or is explicitly authorized to test. A bundled OpenCode skill only enforces the author's C coding standard.

## Primary sources

1. <https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/README.md>
2. <https://github.com/mytechnotalent/Embedded-Hacking/tree/76fa253e9b54aba39b9b02d7738664a65864b425>
3. <https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/README.md#L44-L180>
4. <https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/README.md#L244-L641>
5. <https://github.com/mytechnotalent/Embedded-Hacking/tree/76fa253e9b54aba39b9b02d7738664a65864b425/datasheets>
6. <https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/WEEK07/0x0017a_ctf/CMakeLists.txt>
7. <https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/WEEK11/0x0026a_custom-bootloader/README.md>
8. <https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/.opencode/skill/embedded-c-standard/SKILL.md>
9. <https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/LICENSE>

## More in References and learning

- [Reverse-Engineering a Bluetooth-Enabled Radar Detector](https://awesomerea.org/resources/cobra-irad-bluetooth-protocol-walkthrough/index.md) · Learning resource
- [Link Pi ENCx encoders (unofficial documentation)](https://awesomerea.org/resources/linkpi-encx-unofficial-docs/index.md) · Learning resource
- [Supplementary AST-Based Deobfuscation Materials](https://awesomerea.org/resources/reversejs-ast-deobfuscation-materials/index.md) · Learning resource
- [MCP Reversing Dataset (mrexodia)](https://awesomerea.org/resources/mcp-reversing-dataset/index.md) · Learning resource
- [ICSim (Instrument Cluster Simulator)](https://awesomerea.org/resources/icsim/index.md) · Learning resource
- [CNNPRE (IEEE Access 2023)](https://awesomerea.org/resources/cnnpre/index.md) · Research

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
