Upgrading
It's highly recommended to use pk2cmd and a pickit 2 programmer to upgrade your Bus Pirate v3 or v4.
PicKit2
Replace XXX with bp3,bp4 depending on your device
Erase Device:
pk2cmd -P -E
Flash the latest pirate-loader bootloader
pk2cmd -P -M -F XXX-bootloader.hex
Flash the latest firmware
pk2cmd -P -M -F XXX-firmware.hex
Known Issues
- The boot loaders have been off-and-on broken for quite some time. The Bus Pirate v3,v4 are OLD devices. PicKit 2 is recommended
- #191 - Later Linux kernels don't see the Bus Pirate v4 without a workaround.
What's Changed
- Mark constant tables as "const". by @agatti in #4
- Build pirate-loader with CMake. by @agatti in #5
- Fixed 4 warnings that are treated as errors in a new compiler by @mikebdp2 in #8
- Fix ../hd44780.c:21:17: fatal error: SPI.h: No such file or directory by @mikebdp2 in #9
- No inline for WaitOutReady() to fix "symbol .loopOut is already defined" by @mikebdp2 in #12
- increase bootloader version from 4.06 to 4.10 by @mikebdp2 in #21
- partial wiki docs conv by @brimston3 in #30
- Partial wiki docs conv (pt. 2) by @brimston3 in #33
- Partial wiki docs conv (pt. 3) by @brimston3 in #36
- Add support for 1-Wire Overdrive mode by @u1f35c in #40
- Fixed Typo in pirate-loader.c by @pixeldoc2000 in #42
- Call the correct function to wait for Empty TX by @frankiek3 in #47
- Main directory cleanup by @JarrettR in #50
- Set CRT_STARTMODE in linker scripts by @andersm in #55
- Fix USB comms for optimized builds by @andersm in #56
- Fix USB communications when optimizations are enabled by @andersm in #57
- Use linker garbage collection to remove unused strings by @andersm in #60
- Use full addresses for printing constant messages by @andersm in #62
- Use null-terminated strings by @andersm in #63
- Python 3 compatibility for I2C and SPI scripts by @sylvainpelissier in #66
- Document building and flashing (fixes #79) by @sajattack in #81
- Fixed UART1 initialization by @larks in #85
- Fixed wrong path prefix "source/" -> the source files are already in the same directory by @GHPS in #86
- Fixed printing of decimal numbers by @ep1cman in #87
- Fix printing zero on console by @Fullmetal5 in #91
- Ignore cmake output files in pirate-loader v4 by @Elemecca in #96
- Correct case in gitignore for firmware by @Elemecca in #97
- some openocd fixes for BPv4 by @hb9xar in #104
- fix off-by-one error if BPv4 JTAG code by @hb9xar in #105
- Readme cleanup by @kallisti5 in #123
- Fix base converter by @xzz53 in #125
- spi_read_write_io(): Fix buffer size test by @andersm in #127
- Fix break condition in read ID by @yodaldevoid in #138
- Add external links section to uart doc by @ipatch in #120
- Fix compile errors with XC16 v2.00 by @e28eta in #165
- MEGA pull request + NEW improvements. Lets breathe new life into this project! by @mikebdp2 in #182
- refactored the spi and usb communication by @denis2342 in #188
New Contributors
- @agatti made their first contribution in #4
- @mikebdp2 made their first contribution in #8
- @brimston3 made their first contribution in #30
- @u1f35c made their first contribution in #40
- @pixeldoc2000 made their first contribution in #42
- @frankiek3 made their first contribution in #47
- @JarrettR made their first contribution in #50
- @andersm made their first contribution in #55
- @sylvainpelissier made their first contribution in #66
- @sajattack made their first contribution in #81
- @larks made their first contribution in #85
- @GHPS made their first contribution in #86
- @ep1cman made their first contribution in #87
- @Fullmetal5 made their first contribution in #91
- @Elemecca made their first contribution in #96
- @hb9xar made their first contribution in #104
- @xzz53 made their first contribution in #125
- @yodaldevoid made their first contribution in #138
- @ipatch made their first contribution in #120
- @e28eta made their first contribution in #165
- @denis2342 made their first contribution in #188
Full Changelog: v7.0...v8.0
Test Results
Bus Pirate v3
TODO
Bus Pirate v4
HiZ>i
Bus Pirate v4
ElderlyPirate Firmware v8.0 [HiZ 1-WIRE UART I2C SPI 2WIRE 3WIRE KEYB PIC DIO]
DEVID:0x1019 REVID:0x0004 (24FJ256GB106 A6)
http://github.com/ElderlyPirate
HiZ>~
Disconnect any devices
Connect (ADC to +3.3V)
Space to continue
Ctrl
AUX OK
MODE LED OK
PULLUP H OK
PULLUP L OK
VREG OK
EEPROM
SCL OK
SDA OK
WP OK
READ&WRITE OK
ADC and supply
Vusb(4.94) OK
5V(4.92) OK
5V VPU(4.73) OK
ADC(3.50) OK
3.3V(3.44) OK
3.3V VPU(3.26) OK
Bus high
MOSI OK
CLK OK
MISO OK
CS OK
Bus Hi-Z 0
MOSI OK
CLK OK
MISO OK
CS OK
Bus Hi-Z 1
MOSI OK
CLK OK
MISO OK
CS OK
MODE, VREG, and USB LEDs should be on!
Any key to exit
Found 0 errors.