diecimila headers are not on 2.54mm grid

Arduino Diecimila port B and D headers (digital I/Os) are not on the standard 2.54mm grid, so shields can't be made with prototype board and similar.

Also, see the AVR-USB project for a way to hook up the ft232r so it can bootstrap the atmega in bit-bang mode which would be awesome for arduino.. I'd love to swap the crystal on mine for a 20MHz, but I don't think the ft232r supports (19200*20/16)=24Kbaud, and don't have anything else to program it with.

Hi,

Arduino Diecimila port B and D headers (digital I/Os) are not on the standard 2.54mm grid, so shields can't be made with prototype board and similar.

Yes and not even the people from the Freeduino-project http://www.freeduino.org/freeduino_open_designs.html where man enough to change that! A joke guys, a joke!

Half seriously now : Bad isn't it! Sometimes I hate all that legacy stuff (that seems to be the reason here) and wish for a revolution!

Eberhard

so shields can't be made with prototype board and similar.

Actually, it is possible if you get out a pair of pliers... :slight_smile: I've made one full-size shield with protoboard by bending the second set of headers slightly--in a sort of shape like this:

   |
   /
 /
 |
 |
 |

It's not the best thing in the world, but a usable work-around.

--Phil.

Half seriously now : Bad isn't it! Sometimes I hate all that legacy stuff (that seems to be the reason here) and wish for a revolution!

Yeah, it sucks especially considering there's probably going to be more boards sold in the future than exist now. But I don't expect a change any time soon--I suspect the desire of a handful of protoboard shield makers isn't enough to tip the balance.

--Phil.

Of course, you can always download the EAGLE files for the Arduino Diecimila and make your own boards with the proper spacing.

I would suggest, if you're looking for protoboard/breadboard compatibility, something like the BareBones, Boarduino, or (my soon to be released) iDuino.

And there's always the Mini.

to me, as an Italian, all these names ending in "duino" drive me up the wall...

my poor language :slight_smile:

Arduino Diecimila port B and D headers (digital I/Os) are not on the standard 2.54mm grid, so shields can't be made with prototype board and similar.

Also, see the AVR-USB project for a way to hook up the ft232r so it can bootstrap the atmega in bit-bang mode which would be awesome for arduino.. I'd love to swap the crystal on mine for a 20MHz, but I don't think the ft232r supports (19200*20/16)=24Kbaud, and don't have anything else to program it with.

Have you heard of "de-facto standards"? Well, the Arduino pin spacing is one of them. Good or Bad, it is the "Arduino" standard. When I designed the "Arduino runtime", the main reason was because I didn't like the odd spacing... but not having shield physical compatibility is a bigger limitation than being able to use "standard" 2.54mm spaced protoboards. Sooner or later, you will need to plug a shield...

Hi in order to release the pressure ...

to me, as an Italian, all these names ending in "duino" drive me up the wall...

my poor language :slight_smile:

Maybe new Boards/Ideas could use the slovenian or german translation of "Duino" :

Duino
From Wikipedia, the free encyclopedia
Duino (Devin in Slovenian, Tybein in German) is a town in the coastal part of the municipality (comune) of Duino-Aurisina, part of the region of Friuli-Venezia Giulia in the province of Trieste, north-eastern Italy.

On the other hand, the Arduino suffers from the same disease that caught Apple:
iEverything
You must have created a very appealing trademark!

Eberhard

It's simpler to use "duino" rather than a long winded description to explain compatibility with Arduino's or it's IDE, and I would have thought it quite flattering actually.

try doing it this way:-

http://www.thebox.myzen.co.uk/Hardware/Arduino_Sheld.html :o

try doing it this way:-

http://www.thebox.myzen.co.uk/Hardware/Arduino_Sheld.html :o

Mike, good job on the article. Yr link didn't work, try this:
http://www.thebox.myzen.co.uk/Hardware/Arduino_Sheld.html

(the url tag adds another http:// in front of the link)

woot, i was asking myself today for the same issue, why it doesn't follow the standard PCB spacing, grrrrr, i feel sold to sparkfun protoshields....

The Arduino is somewhere around 2.5 to 3 years old. It might last anther 5 to 10 in a usable form. Now would be the time to rationalize the form factor before even more shields get created.

This is the exactly the same issue as the (lame-brained) Apple one-button mouse, or maybe even worse, the disk-eject menu item that was in the OS for 10 years which all Mac users knew to avoid because of the disk swap nightmare.

Apple never bothered to fix the menu item and it was just a useless pimple on the Interface, or worse if a newbie used it and got caught.

Bad design decisions get embedded in things and then everyone must live with them (and laugh / swear at them) for years to come, because the company cannot bite bullet and admit they made a mistake. Apple was so embarrassed about the one-button mouse that they had to preserve the one-button design look even while (finally - 17 years later) going to a two button design concealed under the one-button look. Everyone's just trying to forget the hideously unergonomic (and beautiful) round mouse.

Conspiracy theorists have suggested that Arduino team deliberately created the off-grid design to make their hardware incompatible. Does an official explanation from the team exist of where this odd quirk came from?

One example of the awkwardness that this [disfunctional] standard causes is an NKC board with both sets of headers to accommodate the (sensible, standard grid layout) and the Arduino system. I'm sure the design will work well enough, but it's ugly and just shouldn't be necessary if the Arduino design was a rational layout.

But in the mean time, just think of the off-grid quirk as the Arduino Team's one button mouse and maybe start looking around (and developing) other standards (such as the two or button mouse wth scroll wheel that seems like it's become the [sensible] defacto standard).

One sensible thing to do would be for the people developing Freeduino hardware to get together and discuss / standardize some new form factors, if enough units of a new form factor are producted, that work in a sensible way, the Arduino team will eventually put out a two button mouse, but maybe it will take 17 years.

Maybe it could even start a discussion about collaborative design of open-source hardware.

the disk-eject menu item that was in the OS for 10 years which all Mac users knew to avoid because of the disk swap nightmare.

Apple never bothered to fix the menu item and it was just a useless pimple on the Interface, or worse if a newbie used it and got caught.

I feel the need here to defend what was actually a solution by Apple, it could be argued it eventually warranted removal, but never fixing.

Let's imagine your working on a Mac Plus, it has 1MB of memory, no disk drive, and a single disk 800K floppy drive. You've just finished your novel, and it's a whopping 700K; you save it to your floppy drive. Now you need to make a copy for your editor (who's very modern and accepts electronic manuscripts). You can't load the entire file into memory along with the OS and an application, so you open the disk's window and then eject the disk; a ghost of the original appears on your desktop. Now you insert a new floppy disk, format it, and drag the file from the open window to your new disk.
MacOS prompts you to insert the original disk and buffers most of the file into RAM, it asks you for the second disk, and writes the data out, the first disk again and copies the rest of the file, the second disk and writes it all out. You can now 'put away' the first disk from the desktop.

The features down-side was understanding what "Put Away" (ejects a disk and removes it's existence from memory) and "Eject" (ejects a disk) did. Many new users got this wrong. Apple could probably have done a better job on documentation or naming here, but technology wise it was a good solution to a problem. (Keep in mind it was invented for the 128, which had 400K of floppy storage and 128K of memory.)

re: conspiracy theories, Well to be fair, they have admitted the form factor was indeed a mistake. A hasty change was made to make "this weeks" PCB run deadline. Stuff happens, I'm real glad there is an arduino, and that the people felt compelled to get it out the door. it has opened a door into microprocessors for so many.

Though I do see things like the Nano redefining the form factor though, so change is possible.

Conspiracy theorists have suggested that Arduino team deliberately created the off-grid design to make their hardware incompatible. Does an official explanation from the team exist of where this odd quirk came from?

We were given an official explaination in this thread: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1212632541 post 13.

I'm sure there was no evil intent, but it would still be nice to see the next release fix it even if it makes older shields obsolete.

re: Apple disk swap nightmare - I'm glad to hear that at least one person understood and used that piece of nonsense. How many person-hours were wasted by people swearing at it, and instructors telling students "just never, ever use that, it's worst than useless."

It could have easily been implemented in a simple, self-explanatory way, with a cancel button. Maybe someone should do a poll on whether that was more or less useless than Microsoft's office assistant. And why don't bad ideas ever come with a "Cancel" button or a "Never, ever show this again." button one can click?

re: Pin spacing. I'm delighted to have read the other post and put all the conspiracy theory stuff to rest. Kudos to the team for admitting it was a mistake.

I'm also looking forward to the next production run of the Diecimila fixing the mistake. Raise your hand if you think there will be fewer Freeduinos/Arduinos in the future? The time to fix this is now.

I just posted an instructable detailing a simple method for overcoming this problem: http://www.instructables.com/id/Embarassingly_Easy_Arduino_ProtoShield/