Is there such a thing as a list of pins used by available shields from all manufacturers?
For example the DFRobot Arduino shield manual details quite well what pins are used by their shields, but that's just one manufacturer. If there was a nice big list in tabular form a designer of a new shield could pick some pins that either aren't used at all (unlikely) or aren't used by other shields that are likely to be used with the new design.
Coding badly: I've done the ones from the Arduino site as well, although most were also on Mowcius' list.
Many still have ? in their row, sometimes this is because there doesn't appear to be a public schematic, with others it's because I had to download a ZIP and haven't got around to extracting the schematic yet.
I've had enough for the moment, gone cross-eyed looking at this lot. But if it's worthwhile I can verify more over time, or maybe others can chip in or the owners of these boards can tell us exactly what pins they use.
Well I can trust it when I'm not on my computer ;D
I have saved that, looks very nice, just need a way to get that as a nice looking table on a website now. If I get the time, i might see what I can come up with.
But if it's worthwhile I can verify more over time, or maybe others can chip in or the owners of these boards can tell us exactly what pins they use.
Well if we can get some kind of permenant web-based version (not google docs...) then it will definitely be useful to a lot of people.
A lot of schematics just have signals coming from small 1, 2 or 4-way headers with no real indication of where the signal comes from. You would have to check out the PCB to see where the header is physically located.
Also many schematics show all the Arduino signal names on a header but don't actually use them so you have to trawl the schematic looking to see if the signal was used or not.
Still it's a start, treat it with a grain of salt for the moment, but if you can figure out how to present it on a web page when we're happy that it's pretty right it would be a useful resource I think.
When/if you get around to it, may I suggest a "verified" column that indicates that the info is almost certainly right.
GrayNomad, that's a great idea. I really like the idea of making it an online resource, and since that's the sort of thing I do in my day job (my actual job is CTO of a web app development company: www.ivt.com.au) I'd love to have a go at it.
Mowcius, do you mind if I have a go at setting up an online shield database or have you already started work on it?
I've made a little bit of progress on this. I now have the database structure in place with a few shields inserted for testing, and I've created a basic public UI that lets you browse through a list of brands, then through a list of shields for each brand, then see the details of each shield including a description, a link to the manufacturer's site, an image of the shield, the pin assignments, and notes. There's no visual style applied at all so far, just black text on a plain white page.
While it's still under early development I have it showing nothing publicly unless it's accessed by my IP address, but ultimately it will live here:
The system already accepts arguments of brand and board in the URL, so for example to view a list of all shields manufactured by Gravitech I can do this:
Right now you won't be able to see anything at those URLs since it only works for me until I remove the IP restriction.
Next up I'll suck in the data compiled by GrayNomad so there's a good base dataset to work from, then try to neaten up the display a bit with some CSS applied to it.
Following on from that I'll add the ability to search by various criteria (such as pins used), compare shields, and submit new shields for inclusion. If anyone has ideas about other features they'd like to see please speak up.
I'm hoping to make it publicly visible this weekend, even if it's just in a crude form.
Following on from that I'll add the ability to search by various criteria (such as pins used), compare shields, and submit new shields for inclusion. If anyone has ideas about other features they'd like to see please speak up.
I'm hoping to make it publicly visible this weekend, even if it's just in a crude form.
There's a lot missing, particularly in relation to display of which pins are used (it's just a list at the moment) but the basic infrastructure is now in place so I can start adding the funky stuff.
Oh, and forgot to mention that I'll add more information about each shield as well including an image, description, etc. Right now most of them are just minimal information. For an example of one that looks mostly complete (except for the non-functional pin usage display on the right) see this one:
Florin Chiperi who makes this shield does not have a company name as far as I know so not sure how this should work but that seems wrong...
The website looks very neat. You going to have some way to compare shields?
I thought before that the best way would be to have a page with them all listed and tickboxes by the side (or similar), then you can select shields to compare and it'll show which pins are the same on the shields, and what their requirements are.
Is the generic board image going to show something (pcb file?)
Yes, I puzzled a bit over how to handle the situation where a shield is produced by an individual without a company name. I settled for using their personal name in a couple of cases, for example:
I figure I'll just take it on a case by case basis depending on what the shield creator prefers.
Regarding comparing shields, that's definitely my intention. Right now I'm just getting the basic data structure right and some content in there plus display of details for individual shields, but then it'll be easy to add a table that lists shields in a spreadsheet-like format.
I also have a vague idea of having a "compare shields" thing where you can browse through and add them to a comparison table or something (a bit like adding products to a shopping cart), then view the table with just those shields included. Don't know the best way to handle that yet.
My priority right now is adding a form to let new shields be inserted into the DB, then fixing the shield details page so it shows pin usage properly.
Made some progress over the weekend. The shield detail pages now have a semi-visual representation of the pins used. It didn't quite work out as well in reality as it did in my head, unfortunately, but it still looks OK I think.
I've also added a form for submitting new shields (including uploading a pic). Anything submitted via the form goes straight into the DB, but with a flag that keeps it hidden until I've reviewed it. The form isn't very well tested but it seems to work and it's time I got some sleep.