I recently got a BP 5 rev 10. I was super enthused to extract some firmware after reading the setup instructions and the device demo guide (W25QXXX NOR Flash Chips SPI). I had updated the BP 5 firmware, reset/restarted, and run the self-test before any attempts. My BP 5 has firmware version 3c14168.
One target has a Macronix chip. I connected most of the probe hooks to the Macronix MX25L12833F chip (in-circuit but powered off). Since I was dumping the flash chip, I did not connect a wire from the bus pirate to the WP pin. Also, there is a pull-up resistor (on the PCB) connected to the WP pin. I thought my setup would work to dump the firmware.
From the device demo guide, I first ran the basic SPI commands and flash probe. Those commands were successful. Then I ran the flash read command with option -f filename.bin . Then disaster happens. The command executes normally until the following output (not exact but very similar). I was up too late and did not save the output with the exact error text.
Erasing ...
Erase OK
Invalid path or error invalid path
I ran flash read -f multiple times adjusting the file path (/filename.bin, ./filename.bin) and each time the command output
Erasing ...
Erase OK
Invalid path or error invalid path
until making a directory and setting the file path as dir-name/filename.bin. The flash read command then executed without error and dumped the complete chip contents. Checking the dumped file with binwalk, I found the chip had been erased. It must have been erased each time the invalid path error occurred. This is a time you wish you had tested your tool and method first on junk hardware instead of something high value. Part is my own fault, but it is hard to understand how the command for reading flash accidentally triggered a complete erase. If I had connected a BP wire to the WP pin (set according to the datasheet), that should have blocked erasing. The BP hw, sw, & docs are quite good overall. Flash read needs a code update to fix the invalid path error. Also, if the top level / cannot be saved to by the user, please consider updating the BP docs on saving files.