project:chipwhisperer:start
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| project:chipwhisperer:start [2019/11/23 19:57] – [Glitching STM32 external board through UFO-board interface] abyssal | project:chipwhisperer:start [2025/03/13 14:20] (current) – fix templatere plugin invocation root | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Chipwhisperer ====== | ====== Chipwhisperer ====== | ||
| - | {{template> | + | {{template> |
| name=Chipwhisperer| | name=Chipwhisperer| | ||
| image=chipwhisperer-project-logo.png? | image=chipwhisperer-project-logo.png? | ||
| Line 99: | Line 99: | ||
| Unfortunately the [[https:// | Unfortunately the [[https:// | ||
| + | |||
| + | |||
| {{: | {{: | ||
| + | |||
| + | |||
| + | It'd might work better if SDRAM and display was desoldered as well. By comparing various STM32F4 (415, 427, 429) in STM32CubeMx it reveals that the clock circuits are very different. | ||
| + | |||
| + | FYI: just keep all the relevants part of pinout connected (GPIO4-trigger, | ||
| + | |||
| + | ====== STM32CubeMX ====== | ||
| + | |||
| + | When you look at the clock networks of various STM32, you will find that each chip has different clock network, STM32F427 cannot be easily replaced with STM32F429. | ||
| + | |||
| + | ====== UART bootROM protocol of STM32s via Chipwhisperer ====== | ||
| + | |||
| + | Chipwhisperer has [[https:// | ||
| + | |||
| + | To get into the bootROM you need to trigger the right pattern (depends on specific STM32, but generally needs BOOT0 pin high with some extra conditions). | ||
| + | |||
| + | Once bootROM is running, you can issue commands like erase, write, protect/ | ||
| + | |||
| + | Some commands can be stacked, e.g. (extended) erase with write, some like (un)protect commands cause system reset of STM32 and you need to reopen the programmer. | ||
| + | |||
| + | An unfortunate side effect of pulling nRST (either from outside or from firmware) is that gdb connected to SWD as external target aborts. | ||
| + | |||
| + | I would highly recommend using logic analyzer to check result since the STM32 programmer is PITA. Order of connection of SWD/JTAG and logic analyzer seems to matter. Once nRST is pulled, SWD/JTAG seems to lose ability to do proper system reset. | ||
| + | |||
| + | {{: | ||
| + | |||
| + | |||
project/chipwhisperer/start.1574539070.txt.gz · Last modified: 2019/11/23 19:57 by abyssal