Very interesting project. It has many pins, I think the new bus pirate must have at least 16 I/O pins, 32 is better.
The Glasgow revC, the one that will be manufactured first, has 16 pins (2 ports of 8 pins each). There will be a revD with 32 pins in the future. This makes it easy to do not only the JTAG scanning you mentioned, but also interface wide parallel busses, use it as a wide bus logic analyzer, read/write parallel EEPROM or flash,...
Another interesting function is "automatically determine unknown JTAG pinout", with new bus pirate is very hard add it. Not has uC ARM, but a 8051, I don't know which is better.
The point of using the Cypress FX2 is not the 8051 core that is embedded, but that it offers really fast usb transfers from the FPGA. I get around 340 MBit/s of real data througput when running the transfer benchmark on my Glasgow prototype. The STM32F103 on the BusPirate Ultra can only do USB FullSpeed (12 MBit/s theoretical max.). Even STM32F4 with a separate ULPI PHY don't get near the transfer rate of the Cypress FX2.
The Glasgow and BusPirate Ultra have a bit of a different concept there: the BusPirate Ultra will usually do the processing and data conversion on the hardware, probably a smaller part in the FPGA and most of it in the STM32. The data is then transfered to the PC over a emulated serial port, with the same or similar protocol as the previous versions of the BusPirate. At least this is what I understood from Ian's posts here.
The Glasgow will instead usually use a custom software on the host PC. This software consists of Applets that configure the FPGA for the current task (gateware) and also a part that converts the data on the PC. So the 8051 microcontroller on the hardware has much less to do. Also the FPGA gateware is not a collection of generic pre-synthesized gatewares, but directly synthesized for the task and configuration at hand, making it more efficient. The downside is that you need to install the Glasgow software stack (Python, nMigen, Yosys, nextpnr) on the host PC, while the BusPirate just needs a USB CDC serial driver.
Is the quality more on the technical side or more the looks?
If it is the technical side, does this board house offer smaller traces, like 3mil/3mil or finer soldermask geometries, e.g. between 0.5mm pitch pads?
Or if it is more the looks, does the board house use photolitographic silkscreen allowing much finer detail instead of the more coarse silkscreen, probably done by an inkjet like machine, which the dirty protopack boardhouse uses?
What is the smallest line width on the silkscreen that this boardhouse guarantees?
Do you add "dirty numbers" on these boards like on the protopacks?
[quote author="mak237"]I had the same thing happen with a standard DirtyPCBs order I sent out in September - all of the holes placed with the hole tool came out unplated[/quote] Did these holes have a copper ring next to them or were they without any copper nearby?
[quote author="mak237"]but the boards small internal slot was plated.[/quote] Did you put the internal slot on the gerber outline layer? Or did you do the slot with routing commands/elliptical holes in the Excellon drill file?
[quote author="mak237"]The order was for 30 boards instead of a protopack, so maybe some of the board houses will plate selectively for certain orders?[/quote] I don't know if orders of 30 boards are processed by the same boardhouse as the standard protopacks in 5x5 or 10x10. I guess Ian has to answer that one.
[quote author="hipfan75"]The holes were generated in Eagle 7.5 using the 'hole' tool. The non-plated holes in my board were part of custom parts, which I have extracted and attached. I processed them with the DirtyPCBs cam file, which I've slightly modified to work with Eagle 7 (to get the holes to line up properly), also attached.[/quote] Just to make sure: you uploaded the gerbers to DirtyPCBs, not the Eagle files and let them create the gerbers?
[quote author="hipfan75"]I've attached the relevant gerber files, if you'd like to investigate yourself.
My suspicion is that they are using a different board house (from the standard DirtyPCBs site), which interprets a drill with no copper around it as a non-plated hole.[/quote] I can't see any special command in the Excellon file. So I also think that they somehow interpret the copper next to the hole. Not good, so you don't have something you can really rely on unless we find out the exact logic that is used.
When using a premium boardhouse, you can usually send two Excellon files, one for PTH holes and one for NPTH. Maybe that works here too? I think I once read about a tool command for NPTH which you could include in your one Excellon file.
Now that I know that NPTH is possible somehow, I think I'll add some experimental holes in my next orders and see what works and what not.
[quote author="hipfan75"]- It seems that my non-plated holes actually came out non-plated. (It was my understanding that non-plated holes were not possible with DirtyPCBs production site.)[/quote] How did you do that? I thought non-plated holes were not possible too.
I'm really interested in doing non-plated holes. Can you post the relevant parts of your Excellon drill file? Or did you do it by placing them as circles on the outline gerber layer?
[quote author="ian"]Dealing with guest files (and render them on a backedn cluster) and turn them into registered user files at checkout or login, and maintain some level of security of user files is driving us nuts.[/quote] Hmm, then why do you require to upload gerbers in the first step? Why don't you move uploading the gerbers to the end when you have registered and payed and so on, where you currently have the "update board" function?
I would even prefer it that way. Because ususally before actually placing and order, I play with adding and removing several boards to find out where the price breaks in shipping costs are. Uploading dummy boards just for that is a hassle for the user, and from your post it seems like for you too. So why not drop it?
Shipping costs are an important part of your price model. You can either communicate this through a flat model like on your old site, a well thought out table (but which gets complicated and messy soon) or the shopping cart where you can easily play with adding and removing products and see the shipping costs change. I think the last one is the most flexible one. And it would profit from removing the "gerber burden" from the first step.
Ok, I think I figured it out: the problem was my email address. Once I used another email address, ordering the pcbs was smooth.
I have used my email address to buy several times from the old dirty pcb website. But I wasn't able to use that address to log in on the new site or reset my password or anything - nor did I get a meaningful error message.
I really like the new checkout system with shopping cart, postage calculator and so on. But registering on the site, login, password reset and re-use of email addresses still needs some polishing.
[quote author="TonyD"]thats sounds like the same error I was receiving. In the end I think I logged in first then added my board files and then checked out.[/quote]
I tried that too, but how were you able to create your account?
When I go to "Register" I can enter a username, email and password and check "I agree" (don't know to what, but what the heck, that is dirty pcbs). When I click on "Register", the next page I get is the login page with an error message "error::You must be logged in to view that page. ". It seems like the account does not get created: I can not log in nor do I get a confirmation email.
I just tried to upload and order a 10x10 protopack pcb through the new beta site. I can add it to the cart and then go to checkout. In checkout I can enter my address, but when I click on "Checkout and Create Account", I constantly get the error message "Cart is empty please add items to cart again". But the pcb is shown in the cart, even nicely rendered.
I tried several options, but I can't get past this step. Could someone plz look into this? Thanks.
I want to have a board with cutouts inside the board. Does anyone know what the minimum allowed diameter (milling tool diameter) for inner cutouts is at DirtyPCBs? Is 1 mm ok? This information is missing from the capabilities on the about page.
Does DirtyPCBs accept a second TXT (Excellon) drill file for non-plated through holes (NPTH)? A lot of the more expensive board houses do this. I got curious about that because they are mentioned on the about page: "Tolerance of finished hole size NPTH: +/- 2mil".
Or do you have to "draw" the holes in the board outline Gerber layer to get NPT holes?
Just a rough idea, maybe not feasible: a lot of current instruments offer LXI in addition to the older GPIB. So there are VISA drivers for LXI and entering IP-Adresses or DNS-Names as device addresses is supported in e.g. Labview and Matlab. So if a GPIB-Adapter had an Ethernet port and offered some basic LXI-subset and translated that to GPIB, you could use it with stock drivers.
Or would that only work if the driver from the instrument manufacturer actually supports LXI? Because that would usually not be the case for oldish devices from long before the advent of LXI.