https://code.google.com/p/pic32prog/ (https://code.google.com/p/pic32prog/)
Recently, for about 5 days i'm trying to figure how to use busblaster V4 with pic32prog. For 3 days i was trying to discover why this software gives me "no target found", then when i realised, that i have to uncomment some things in make.mingw and compile everything i got to the point, where it's stuckt on some bulk_write usb errors. Installing, reinstalling libusb didn't change a thing except it came back to "no target found". then i found this tool called "zadig" to install selected usb drivers for specific device and i found out, that pic32prog will not give me usb errors if i install only one device with lubUSB ("DUAL RS232HS (Interface 0)" ), installing libUSB to "DUAL RS232HS (Interface 0)" gives "bulk" errors again "usb bulk write failed: -22: libusb0-dll:err [submit_async] invalid configuratio 0". Funny thing is that openocd require for libusb to be intalled for both interfaces or it will not work at all (and to be specifi i had to install libusbK to make it work here).
Currently pic32prog detects type of PIC connected to busblaster, but it gives me also another error related to busblaster:
Programmer for Microchip PIC32 microcontrollers, Version 1.
Copyright: (C) 2011-2014 Serge Vakulenko
Adapter: Dangerous Prototypes Bus Blaster
Processor: MX795F512L (id 54307053)
Flash memory: 512 kbytes
Boot memory: 12 kbytes
Dangerous Prototypes Bus Blaster: invalid status = 008b (no reset)
Detecting type of chip is all it does right now, it doesn't program or read from device.
This is "pic32prog -D -D" debug log (no parameters):
Programmer for Microchip PIC32 microcontrollers, Version 1.
Copyright: (C) 2011-2014 Serge Vakulenko
Dangerous Prototypes Bus Blaster: latency timer: 0 usec
Dangerous Prototypes Bus Blaster: divisor: 59
usb bulk write 3 bytes: 8a-97-8d
usb bulk write 3 bytes: 86-3b-00
Dangerous Prototypes Bus Blaster: clock rate 0,5 MHz
usb bulk write 1 bytes: 85
usb bulk write 3 bytes: 80-08-1b
usb bulk write 3 bytes: 82-03-0f
mpsse_reset (trst=0, sysrst=0) output=0308, direction: 0f1b
usb bulk write 21 bytes: 4b-06-5f-4b-01-00-39-02-00-00-00-00-3b-06-00-6b-01-03-4
b-00-00
usb bulk read 7 bytes: 32-60-53-70-30-a8-2a
mpsse_flush_output received 5 bytes: 53-70-30-a8-2a
usb bulk write 3 bytes: 80-08-1b
usb bulk write 3 bytes: 82-01-0f
mpsse_reset (trst=0, sysrst=1) output=0108, direction: 0f1b
usb bulk write 48 bytes: 4b-03-03-1b-03-04-4b-01-03-4b-00-00-4b-03-03-1b-03-07-4
b-01-03-4b-00-00-4b-02-01-1b-06-fe-4b-01-83-4b-00-00-4b-02-01-3b-06-00-6b-01-03-
4b-00-00
usb bulk read 4 bytes: 32-60-16-c5
mpsse_flush_output received 2 bytes: 16-c5
Dangerous Prototypes Bus Blaster: status 008b
Adapter: Dangerous Prototypes Bus Blaster
usb bulk write 21 bytes: 4b-06-5f-4b-01-00-39-02-00-00-00-00-3b-06-00-6b-01-03-4
b-00-00
usb bulk read 7 bytes: 32-60-53-70-30-a8-2a
mpsse_flush_output received 5 bytes: 53-70-30-a8-2a
Processor: MX795F512L (id 54307053)
Flash memory: 512 kbytes
Boot memory: 12 kbytes
Dangerous Prototypes Bus Blaster: enter serial execution
usb bulk write 84 bytes: 4b-03-03-1b-03-05-4b-01-03-4b-00-00-4b-03-03-1b-03-0c-4
b-01-03-4b-00-00-4b-03-03-1b-03-04-4b-01-03-4b-00-00-4b-03-03-1b-03-07-4b-01-03-
4b-00-00-4b-02-01-1b-06-d0-4b-01-83-4b-00-00-4b-02-01-1b-06-fe-4b-01-83-4b-00-00
-4b-02-01-3b-06-00-6b-01-03-4b-00-00
usb bulk read 2 bytes of 4
usb bulk read 4 bytes: 32-60-16-c5
mpsse_flush_output received 2 bytes: 16-c5
Dangerous Prototypes Bus Blaster: status 008b
usb bulk write 3 bytes: 80-08-1b
usb bulk write 3 bytes: 82-03-0f
mpsse_reset (trst=0, sysrst=0) output=0308, direction: 0f1b
usb bulk write 36 bytes: 4b-03-03-1b-03-04-4b-01-03-4b-00-00-4b-03-03-1b-03-07-4
b-01-03-4b-00-00-4b-02-01-3b-06-00-6b-01-03-4b-00-00
usb bulk read 4 bytes: 32-60-17-c5
mpsse_flush_output received 2 bytes: 17-c5
Dangerous Prototypes Bus Blaster: status 008b
Dangerous Prototypes Bus Blaster: invalid status = 008b (no reset)
usb bulk write 15 bytes: 4b-03-03-1b-03-05-4b-01-03-4b-00-00-4b-05-1f
usb bulk write 3 bytes: 80-08-1b
usb bulk write 3 bytes: 82-01-0f
mpsse_reset (trst=0, sysrst=1) output=0108, direction: 0f1b
usb bulk write 3 bytes: 80-08-1b
usb bulk write 3 bytes: 82-03-0f
mpsse_reset (trst=0, sysrst=0) output=0308, direction: 0f1b
and "pic32prog amivs.hex -D -D" log (trying to program 864 byte program):
Programmer for Microchip PIC32 microcontrollers, Version 1.
Copyright: (C) 2011-2014 Serge Vakulenko
Dangerous Prototypes Bus Blaster: latency timer: 0 usec
Dangerous Prototypes Bus Blaster: divisor: 59
usb bulk write 3 bytes: 8a-97-8d
usb bulk write 3 bytes: 86-3b-00
Dangerous Prototypes Bus Blaster: clock rate 0,5 MHz
usb bulk write 1 bytes: 85
usb bulk write 3 bytes: 80-08-1b
usb bulk write 3 bytes: 82-03-0f
mpsse_reset (trst=0, sysrst=0) output=0308, direction: 0f1b
usb bulk write 21 bytes: 4b-06-5f-4b-01-00-39-02-00-00-00-00-3b-06-00-6b-01-03-4
b-00-00
usb bulk read 5 bytes of 7
usb bulk read 4 bytes of 4
mpsse_flush_output received 5 bytes: 53-70-30-a8-2a
usb bulk write 3 bytes: 80-08-1b
usb bulk write 3 bytes: 82-01-0f
mpsse_reset (trst=0, sysrst=1) output=0108, direction: 0f1b
usb bulk write 48 bytes: 4b-03-03-1b-03-04-4b-01-03-4b-00-00-4b-03-03-1b-03-07-4
b-01-03-4b-00-00-4b-02-01-1b-06-fe-4b-01-83-4b-00-00-4b-02-01-3b-06-00-6b-01-03-
4b-00-00
usb bulk read 4 bytes: 32-60-16-c5
mpsse_flush_output received 2 bytes: 16-c5
Dangerous Prototypes Bus Blaster: status 008b
Adapter: Dangerous Prototypes Bus Blaster
usb bulk write 21 bytes: 4b-06-5f-4b-01-00-39-02-00-00-00-00-3b-06-00-6b-01-03-4
b-00-00
usb bulk read 7 bytes: 32-60-53-70-30-a8-2a
mpsse_flush_output received 5 bytes: 53-70-30-a8-2a
Processor: MX795F512L
Flash memory: 512 kbytes
Boot memory: 12 kbytes
Data: 864 bytes
Erase: usb bulk write 36 bytes: 4b-03-03-1b-03-04-4b-01-03-4b-00-00-4b-0
3-03-1b-03-07-4b-01-03-4b-00-00-4b-02-01-1b-06-fc-4b-01-83-4b-00-00
done
Dangerous Prototypes Bus Blaster: enter serial execution
usb bulk write 96 bytes: 4b-03-03-1b-03-05-4b-01-03-4b-00-00-4b-03-03-1b-03-05-4
b-01-03-4b-00-00-4b-03-03-1b-03-0c-4b-01-03-4b-00-00-4b-03-03-1b-03-04-4b-01-03-
4b-00-00-4b-03-03-1b-03-07-4b-01-03-4b-00-00-4b-02-01-1b-06-d0-4b-01-83-4b-00-00
-4b-02-01-1b-06-fe-4b-01-83-4b-00-00-4b-02-01-3b-06-00-6b-01-03-4b-00-00
usb bulk read 4 bytes: 32-60-16-c5
mpsse_flush_output received 2 bytes: 16-c5
Dangerous Prototypes Bus Blaster: status 008b
usb bulk write 3 bytes: 80-08-1b
usb bulk write 3 bytes: 82-03-0f
mpsse_reset (trst=0, sysrst=0) output=0308, direction: 0f1b
usb bulk write 36 bytes: 4b-03-03-1b-03-04-4b-01-03-4b-00-00-4b-03-03-1b-03-07-4
b-01-03-4b-00-00-4b-02-01-3b-06-00-6b-01-03-4b-00-00
usb bulk read 4 bytes: 32-60-17-c5
mpsse_flush_output received 2 bytes: 17-c5
Dangerous Prototypes Bus Blaster: status 008b
Dangerous Prototypes Bus Blaster: invalid status = 008b (no reset)
usb bulk write 15 bytes: 4b-03-03-1b-03-05-4b-01-03-4b-00-00-4b-05-1f
usb bulk write 3 bytes: 80-08-1b
usb bulk write 3 bytes: 82-01-0f
mpsse_reset (trst=0, sysrst=1) output=0108, direction: 0f1b
usb bulk write 3 bytes: 80-08-1b
usb bulk write 3 bytes: 82-03-0f
mpsse_reset (trst=0, sysrst=0) output=0308, direction: 0f1b
Is busblaster V4 not compatible with Busblaster V2? Does some USB commands require to be changed to make it work?
Well, i found out that (no reset) error was cause because i had MCLR pin driven to the ground all the time, if i connect mclr to the trst or tsrst i've got this message:
Programmer for Microchip PIC32 microcontrollers, Version 1.
Copyright: (C) 2011-2014 Serge Vakulenko
Dangerous Prototypes Bus Blaster: latency timer: 0 usec
Dangerous Prototypes Bus Blaster: divisor: 59
Dangerous Prototypes Bus Blaster: clock rate 0,5 MHz
mpsse_reset (trst=0, sysrst=0) output=0308, direction: 0f1b
mpsse_reset (trst=0, sysrst=1) output=0108, direction: 0f1b
Dangerous Prototypes Bus Blaster: status 008b
Adapter: Dangerous Prototypes Bus Blaster
Processor: MX795F512L
Flash memory: 512 kbytes
Boot memory: 12 kbytes
Data: 864 bytes
Erase: done
Dangerous Prototypes Bus Blaster: enter serial execution
Dangerous Prototypes Bus Blaster: status 008b
mpsse_reset (trst=0, sysrst=0) output=0308, direction: 0f1b
Dangerous Prototypes Bus Blaster: status 008a
Dangerous Prototypes Bus Blaster: download PE loader
Dangerous Prototypes Bus Blaster: download PE
Dangerous Prototypes Bus Blaster: bad PE version = 00000000, expected 00070201
mpsse_reset (trst=0, sysrst=1) output=0108, direction: 0f1b
mpsse_reset (trst=0, sysrst=0) output=0308, direction: 0f1b
Any ideas with that, or maybe i didn't connect BB to PIC32 correctly?
EDIT:
Same thing happen with linux build, BusBlaster fault, pic32prog or PIC32?
My BBV4.1a is "as was sent", i didn't updated buffer logic.
Thats strange, i've got bus blaster casted aside for a moment till my pickit3 broken, then i tried it today and it worked. I don't know why, maybe because it was already programmed with different tool since pic32prog gave me detailed info, which didn't happen earlier with blank PIC.