Promoting dead project Bus Pirate

Hacking multi-tool. Get one for $30, including worldwide shipping.

Promoting dead project Bus Pirate

Postby rdiez » Sun Nov 29, 2015 6:04 am

Hi all:

I think most people involved with the Bus Pirate should have realised by now that the firmware project is dead, which is a serious handicap, as the firmware is probably BP's most important component. If you look at this page:

http://dangerousprototypes.com/docs/Bus_Pirate

You will see that the latest official release is 6.1, which dates from 2012. The "Source code in SVN" link takes you to code.google.com, which is long dead. The Github project isn't moving very fast either.

Basic bugs are not fixed. For example, this one I reported, which means you have to manually pull and reconnect the USB cable pretty often:

Binary Mode misbehaves after receiving 20 zeroes at once
http://dangerousprototypes.eu/forum/vie ... =28&t=2864

Or the infamous SPI bug, which I encountered years later and made me waste hours, because it was not obvious that this was the reason why flashrom was going so slow:

Wrong SPI speed in binary mode (speed settings 5..7)
http://dangerousprototypes.com/track/view.php?id=80

There is some unofficial version in the forum which fixes this, but there is no official release and no warning for newcomers.

This is a pity, because the Bus Pirate is a great idea. I have also grown found of Dangerous Prototypes. However, I found worrying that DP is still promoting the Bus Pirate on the main project page above as if everything were OK.

I guess many unwary newcomers are still buying one, wasting some time, and then feeling disappointed, even probably deceived, like I did. This is where I think that Dangerous Prototypes is going too far, for this is no longer honest behaviour.

It would be interesting to know why the project has come to this situation. On the development side, is it that nobody wants to program a 16-bit CPU anymore? I, for example, wouldn't touch such a chip in my spare time, as it is no fun. I would personally favour an ARM CPU instead. Or are there people issues, like not handing development over to new developers? On the organisation side (DP and Website), does nobody really care about the state of the projects they are promoting (or "selling")?

Regards,
rdiez
rdiez
Newbie
Newbie
 
Posts: 13
Joined: Tue Sep 27, 2011 11:48 am

Re: Promoting dead project Bus Pirate

Postby MickM » Sun Nov 29, 2015 11:25 pm

hi;
I have 6.3-r2151 bookmarked here:
https://code.google.com/p/dangerous-pro ... -r2151.hex

it still works.

The source is here:
https://code.google.com/p/dangerous-pro ... 2FFirmware

MickM
MickM
Jr. Member
Jr. Member
 
Posts: 68
Joined: Wed Jun 19, 2013 5:18 pm
Location: close to Seattle U.S.A.

Re: Promoting dead project Bus Pirate

Postby ian » Mon Nov 30, 2015 10:06 am

Hi rdiez,

Thanks for your comments. I do appreciate them. The Bus Pirate was a hobby project and I finished it to what I consider 'completion'. I can roll a few more bug fixes in and release a new firmware, but myself and 1000's of other people use it without issues on a daily basis. I just never saw much need. The 20x 0x00 bug you mention for example is generally due to flooding the buffer with too many bytes too fast, instead of waiting for the reply to send the next byte.

I2C, SPI, UART... these aren't the latest smartphone jazz, they remain stable over time and there's not much room (in terms of firmware space or quality) to improve the current design. We have done a few new hardware revisions, but there's not much momentum to move away from a true and tested design that is highly optimized for manufacture. Indeed, Bus Pirate 3.6 sales continue to improve year on year.

Don't be so fast to reject a 16 bit micro. For under two bucks it has 8K ram, 64K flash, 16bit operation, PPS, and tons of hardware. It is quite an amazing performer, cheaper and light years head of the ATMEL used on Arduino. Yeah, you can get ARMS for under $1 now, but see what features they actually have and the 24FJ chips are still really competitive. I would however agree that in the hobby space PIC has become increasingly boutique due to their piss-poor corporate vision and commitment to community.

It sounds like you had a bad experience. I'm really sorry for that, I want everyone to be super happy with all of my projects. Let me buy your (and anyone else's) Bus Pirate back if it doesn't do what you want. This whole thing is founded on 'buy an assembled one for cheaper than you can build your own' open hardwareness. That's what it was when I was at Hack a Day, that's what it continues to be. I'm really very sorry it didn't work out for you.
User avatar
ian
Crew
Crew
 
Posts: 10803
Joined: Mon Jul 06, 2009 6:14 am

Re: Promoting dead project Bus Pirate

Postby dpropicweb » Mon Nov 30, 2015 3:51 pm

I think the problem is that some people buy an open hardware project at a rock bottom price and then expect the same sort of paid support that a commercial product might have during its limited life, but for free of course. I've seen this happen with both open software and hardware projects. It's even funnier when it's an open software project for which they paid nothing.

I guess the trick is in managing unrealistic expectations.
dpropicweb
Sr. Member
Sr. Member
 
Posts: 319
Joined: Thu Apr 22, 2010 5:44 am
Location: The LAN Downunder

Re: Promoting dead project Bus Pirate

Postby rdiez » Tue Dec 01, 2015 3:40 am

> The 20x 0x00 bug you mention for example is generally due
> to flooding the buffer with too many bytes too fast, instead
> of waiting for the reply to send the next byte.

I do not think that this is the case. The scenario is as follows: the user cancels the current operation, for example, a JTAG transfer, by terminating the software that is sending the data. Now the Bus Pirate has nothing to do for a few seconds. The Binary Mode does not time out and remains in an undetermined state. The sending of the 20 zeros is the only way to go back to a determinate state. Sending them should not overflow the buffer. It must be a silly bug somewhere, but it is a pain, and it probably affects all Binary Mode protocols. The most serious issue is that this bug is not properly documented, which means, when the Bus Pirate hangs (possibly later), you waste time again trying to find out why.

> I2C, SPI, UART... these aren't the latest smartphone jazz, they remain stable over
> time and there's not much room (in terms of firmware space or quality)
> to improve the current design.

But look, the bug I am talking about is very simple, widely known, was already fixed, and it concerns the stable, very popular SPI protocol. How about doing the bare minimum of releasing a new "official" version with the alredy-done fixes? Trivial things like updating the link to the current source-code repository? Listing the known bugs on the project page?
rdiez
Newbie
Newbie
 
Posts: 13
Joined: Tue Sep 27, 2011 11:48 am

Re: Promoting dead project Bus Pirate

Postby sre71 » Sat Dec 05, 2015 12:10 pm

Hi rdiez.
I agree with almost all you wrote but also what Ian says isn't wrong and so for the dpropicweb's statements.
I think the truth lies somewhere in between.

rdiez wrote:Basic bugs are not fixed. For example, this one I reported, which means you have to manually pull and reconnect the USB cable pretty often:

Binary Mode misbehaves after receiving 20 zeroes at once
http://dangerousprototypes.eu/forum/vie ... =28&t=2864


As even Ian mentions, a kind of solution exists.

rdiez wrote:Or the infamous SPI bug, which I encountered years later and made me waste hours, because it was not obvious that this was the reason why

flashrom was going so slow:

Wrong SPI speed in binary mode (speed settings 5..7)
http://dangerousprototypes.com/track/view.php?id=80


Based on this:

viewtopic.php?f=4&t=6667#p58785

It's known that firmware release v6.1 r1676 has some problem with SPI.
This fix the issue:

viewtopic.php?f=4&t=6667#p59022

It's much better expecially for the SPI side.
It has been written by Tayken starting from the v6.3 release (thanks a lot Tayken!).
Only this that Tayken wrote has been bugfixed for problems facing the SPI's management, no others for what it's known.
Would be possible to name it like v6.4 release and till now it's the best and stable that people can use with their own Bus Pirate v3.
It has all the Bus Pirate's basic features, script engine too!



This too works fine with the Tayken's release.
I use it with flashrom without any problem.
I also instrumentally (DSO and OBLS) verified the 8MHz clock and it is correct even if actually its duty cycle isn't 50% (the length of time in which the level is high is shorter than that in which it's low).
But sadly even it still surely has some other bugs that luckily can be circumvented in some way though.

viewtopic.php?f=4&t=5052

In my experience the protocols (SPI, 1WIRE, 2WIRE, 3WIRE,I2C, ect, ect...) work fine without any problem.
The bugs are on macros and some few little things that anyway is possible to solve in some way.
For instance one thing that annoys me a lot is that in 2WIRE MACRO(1) and MACRO(2) don't work.

viewtopic.php?f=4&t=6124

viewtopic.php?f=28&t=6097

That hurts me so much but I can fix the matter by simply not using them and doing manual decode in their place.
Easy!

Another example on another side would be the fact that the '$' command is not working anymore.

viewtopic.php?f=4&t=5052#p54419

It doesn't matter, there is the option to shorting PGD and PGC together directly on the board, so never mind.
In order to gain "Jump to bootloader" function is enought to simply put a jumper between PGD and PGC instead to start it by command $.
Easy again!
Which then, anyway, "Jump to bootloader" isn't a function that is used so often.

rdiez wrote:But look, the bug I am talking about is very simple, widely known, was already fixed, and it concerns the stable, very popular SPI

protocol. How about doing the bare minimum of releasing a new "official" version with the alredy-done fixes? Trivial things like updating

the link to the current source-code repository? Listing the known bugs on the project page?


I fully agree here, that makes sense and would be usefull.
However it isn't Bus Pirate doesn't works fine, it does the job very well already as it's now, it is only a little help more for newbie and new customers.
Would be only a matter to retrieve all already given fix, answer and improvements putting all them together in an single known place so that everyone can enjoy.

Regards,
sre71
sre71
Jr. Member
Jr. Member
 
Posts: 62
Joined: Sat Aug 06, 2011 3:29 pm

Re: Promoting dead project Bus Pirate

Postby rmedure » Mon Feb 29, 2016 3:07 pm

Yeah, I fell victim to this as well, having bought the BusPirate based on the fact that it's promoted on the main project page with no warning that everything is NOT "ok".

Not only is the firmware project essentially dead as you mentioned, but the situation is even worse if you assume that the buspirate is good for JTAG with support built-into openOCD as advertised. I've wasted an entire weekend trying to sort through posts going back to 2008 in a futile attempt to sort through the issues.

I get it, that Buspirate was a hobby project and essentially was intended to be a "buy one already built" instead of build-your-own. But I certainly didn't understand that from reading the main buspirate page when I decided to buy it (http://dangerousprototypes.com/docs/Bus_Pirate). If I had known all of the above, I most certainly would have chosen something else. Maybe someone should edit the buspirate page to indicate that the firmware is not maintained, and that getting an openocd compile done with buspirate support is problematic until someone gets time to write up a new guide?

In the meantime, is anyone here willing/able to help me get this thing up and running with openOCD? :) :)

Thanks,
rmedure
Newbie
Newbie
 
Posts: 8
Joined: Sat Feb 27, 2016 9:10 pm

Re: Promoting dead project Bus Pirate

Postby Sjaak » Tue Mar 01, 2016 9:09 am

Without knowing what the problem is with openOCD.. I can guide you to the openOCD subforum: viewforum.php?f=27

AFAIK it is not advertized as a superquick openOCD device, we have the busblaster for that. btw on that page you are referring to states:

The Bus Pirate is a slow serial port device intended for human-speed interaction. It was NEVER intended to do JTAG duties. Because it's open source, cheap, and versatile, the community hacked various JTAG features into it. They're great in a pinch, but no substitute for the real thing!

The Bus Pirate supports JTAG in three ways: with the OpenOCD debug application, as an XSVF player, and through a user-mode terminal interface.


The Bus Pirate is supported as a JTAG programmer/debugger by OpenOCD. If your target is supported by OpenOCD it may work. Slowly :) You will need to use a Bus Pirate firmware version which supports the binary JTAG protocol — not all do.
For my projects and failures see my blog: http://SMDprutser.nl/
User avatar
Sjaak
Fellow
Fellow
 
Posts: 3288
Joined: Sun Jan 03, 2010 2:45 pm
Location: Hiero

Re: Promoting dead project Bus Pirate

Postby rmedure » Wed Mar 02, 2016 9:49 am

The JTAG/openOCD guides and links on the buspirate page implies that it works ... but the truth is that these guides and links are old, obsolete, and do NOT work.

The link to the openOCD forum shows my post explaining the problem as the very top post. It seems nobody has an answer yet ...
rmedure
Newbie
Newbie
 
Posts: 8
Joined: Sat Feb 27, 2016 9:10 pm

Re: Promoting dead project Bus Pirate

Postby rmedure » Sun Mar 20, 2016 10:53 am

Is Ian around to answer this perhaps? Really regretting buying this with the lack of support ...
rmedure
Newbie
Newbie
 
Posts: 8
Joined: Sat Feb 27, 2016 9:10 pm

Re: Promoting dead project Bus Pirate

Postby TheChuckster » Sun Jan 22, 2017 2:26 am

I'm going to have to get a refund, I can't even update the firmware on mine.
TheChuckster
Newbie
Newbie
 
Posts: 3
Joined: Sun Jan 22, 2017 2:21 am

Re: Promoting dead project Bus Pirate

Postby geot » Mon Feb 06, 2017 5:05 pm

Bus Pirate hardware is too old. I had recommended to be built something new, even though firmware developing will always be necessary for a "pirate".
geot
Newbie
Newbie
 
Posts: 2
Joined: Mon Jan 23, 2017 3:55 am


Return to Bus Pirate Support