Demonstrated at our 38C3 talk Beyond BLE.
This repository contains the following tools:
- A Ghidra Plugin for disassembling TopSM binaries
- An assembler for generating TopSM patches
- A simple build environment to generate CPE patches.
- Ensure the SimpleLink SDK and the arm-none-eabi-gcc compiler is installed on your machine
- Set the
SIMPLELINK_SDK_PATH
environment variable to your install directory of the CC13XX_CC16XX sdk - Run
make
in thecpe_patch_compiler
directory - Use the header file as part of your CCS project
- Create your TopSM assembly file. For example:
rf_patch_mce_testrom.asm
- Call the assembler with
topsm_assembler.py rf_patch_mce_testrom.asm rf_patch_mce_testrom.bin
- Convert the binary into an MCE patch with
topsm_create_patch.py rf_patch_mce_testrom.bin rf_patch_mce_testrom.h
- Use the generated C and header files as part of your CCS project