Due pinout diagram

CrossRoads: Awesome work so far Rob. What a confusing data sheet. Looks like there are multiple sets of SPI controllers - I don't see how they make it to IO pins tho. For example PA25-26-27-28 make up SPI 0 with 3 additional chip selects on PA29-30-31 - where are are PA30-31 on the Due schematic? PA25-26-27 only seem to be on a 2x3 header? Similarly for PE28-29-30-31 for 2nd SPI - what pins do they get multiplexed onto? I can't tell from the data sheet, same for the additional chip selects on PF0,1,2.

Is it strange that I didn't get SPI to work ? :)

pins 50-53 is supposed to be spi also?.

C:\arduino-1.5.1r2\hardware\arduino\sam\system\CMSIS\Device\ATMEL\sam3xa\include\instance In that folder, it seems that there are two spi controllers yes, but the spi library seems to ignore that fact, and I couldnt find out which of them its using.

Graynomad: After much discussion about pinout diagrams and Arduino documentaion I decided it's time to put my money time where my mouth is and make a start on a pinout diagram for the Due

If there's any interest I'll continue with it.

That adds a bunch more detail than the one I did (which was based on the one I did for the Mega2560, which in turn was based on Nick's original for the Uno R3). Overall I prefer it (though it is going to get crowded for the double row of headers at the back of the board.

How about you continue to work on it and then I add it to the (now stickied, I see) Due pinout thread?

@Crossroads Yes these ARM chips are way more complicated, I usually have to do a spread sheet to keep track of the pin options used or it gets out of hand. I'll be looking into the SPI stuff today probably.

I think I'll add another type of label, maybe "other useful functions" for things like external memory, the unsupported serial port, extra SPIs, SPIs on USARTs etc. I'll check out the pins you mentioned.

@Markus_L811 I'll add a link to the CDR file on the first post sometime today.

@neslekkim Good a name as any I think. On the Due it appears to be the standard Cortex 2x5 pinout. I'll be checking that.

but the spi library seems to ignore that fact,

I think a lot of the hardware is not yet supported. Massimo said that they decided to get the hardware out even though they hadn't written every driver or library. I assume that they will come along before long or that others will step up and write some code.

@Nantonos

How about you continue to work on it and then I add it to the (now stickied, I see) Due pinout thread?

Happy to do so, I plan to pirate some of your pinout info :)

@all Note that the latest version of the drawing will now always be linked to from the first post on this thread.


Rob

I've been trying to get a clear version of the SPI pinouts while using a photo of the board however I just don't think it's possible without pulling the header images out from the board, something I don't want to do.

So I've done a version with a vector graphic in place of the photo, I will add some more details but I think it's clearer. The photo looks nice but at the end of the day it adds little to the object of the document.

Here's a sample with the new graphic, you'll notice that I am now able to place the SPI labels in an appropriate place. This should work OK for all of the internal headers although the Cortex debugging one might be a problem.

www.robgray.com/temp/Due-pinout-temp.jpg

Comments?


Rob

Yes, the vector represetation of the board reduces clutter, while still being clear enough with the board in your hand.

Incidentally PNG is a better raster format for sharp-edged artwork than JPEG, which is at its worst on this sort of image. SVG would also be a useful option.

Graynomad: I've been trying to get a clear version of the SPI pinouts while using a photo of the board however I just don't think it's possible without pulling the header images out from the board, something I don't want to do.

So I've done a version with a vector graphic in place of the photo, I will add some more details but I think it's clearer. The photo looks nice but at the end of the day it adds little to the object of the document.

Here's a sample with the new graphic, you'll notice that I am now able to place the SPI labels in an appropriate place. This should work OK for all of the internal headers although the Cortex debugging one might be a problem.

www.robgray.com/temp/Due-pinout-temp.jpg

Comments?


Rob

Think its easier to read. Btw. has the TWI on the top near the reset no pull-ups?

Graynomad:
Here’s a sample with the new graphic, you’ll notice that I am now able to place the SPI labels in an appropriate place. This should work OK for all of the internal headers although the Cortex debugging one might be a problem.

www.robgray.com/temp/Due-pinout-temp.jpg

That is awesomely a lot better!

(If you have to increase size etc, I would prefer that it would scale/fit on an A4/Letter papersize, I’m going to print it out fullsize for reference)

I guess you are going to mark the usb ports also? which is native, which is programming, strange that they are not labeled on the board…

Just noticed one thing, the headers, VIN, do that pin give the same level as the input?, so If I use an 12volt adapter, I will get 12volt there? If so, that is really something to be aware of.. I newer knew that..

has the TWI on the top near the reset no pull-ups

No pullups on the main I2C.

I would prefer that it would scale/fit on an A4/Letter papersize

At present it needs an A1 sheet, how large is your printer :slight_smile: But it’s all vector based so should scale to anything.

VIN, do that pin give the same level as the input?

VIN is the same everywhere, if you have 12v on the barrel jack you’ll have 12v on the header pin. That said, if you’re drawing a lot of current it would be better not to run it through the PCB.

VIN, do that pin give the same level as the input?

Yeah, that was just a quicky at hi-compression to show the new design, and the PNG was too large.


Rob

Graynomad:

VIN, do that pin give the same level as the input?

VIN is the same everywhere, if you have 12v on the barrel jack you'll have 12v on the header pin. That said, if you're drawing a lot of current it would be better not to run it through the PCB.

Wops, I haven't read it as VIN, I have read it as vcc :), thank god I have used only usb power, and breadboard psu so far :)

@Crossroads

OK I've done some searching.

where are are PA30-31 on the Due schematic?

PA30:31 are only available on the 217-pin chip.

Likewise for PE28-29-30-31, sorry there's no second SPI.

The good news is that two of the USARTs have the SCK pins broken out on PA16 (A0/D54) and PA17 (SCL1/D71).

I'm about to add them to the diagram.


Rob

Graynomad:

has the TWI on the top near the reset no pull-ups

No pullups on the main I2C.

Strange why, difference between them?

Btw. On PB14 &PB15 is an another CAN Controller CAN1

Strange why, difference between them?

No idea, probably becaise SCL1 and SDA1 are the standard I2C signals and old shields don't expect pullups, whereas SCL and SDA are new so thay can ba added.

On PB14 &PB15 is an another CAN Controller CAN1

Yep, got them.


Rob

PA30:31 are only available on the 217-pin chip.

Turns out the datasheet I was looking at is only the Summary data sheet - only shows the 100 & 144 pin packages. Didn't realize there was a 217 pin package as well.

@Nantonos Sorry, I just realised the earlier versions were actually JPEGs. Fixed now.

@all Latest version just uploaded.


Rob

Graynomad: @all Latest version just uploaded.

The CANTX1 and some others are white, is that because its' not supported yet?, or should those be blue?

If anyone could confirm the SPI situation now..

They are on the schematic so at some point someone decided to at least label the nets. There’s no mention of a second CAN on the product page so it looks like it’s not yet supported and I’ve left them white. Likewise for the fourth USART and I doubt the SPI ability of two of the USARTs will ever be supported, but I think some people may want to use that one day.

BTW, does anyone know if the power jack is a 2.1 or a 2.5mm type?


Rob

Hi,

I new to this forum, although I use already since long AVR processors. Recently I bought an Arduino DUE.

The DUE pinout diagram is really awesome !! Great piece of work.

I think there are some minor errors:

  1. port B.26 is not “TIOA0”, but “TCLK0” (per B)
  2. port B.16 is on physical pin 77 (not 78)
  3. “TIOB7” (PWM10) is on pin 102 port C.29 (not 111 / A28)
    Anyway please double check.

Perhaps you could also add the following:

  • on A.19 “PWMH1” (per B)
  • on C.19 “PWMH5” (per B)
  • on B.14 “PWMH2” (per B)
  • on C.18 “PWMH6” (per B)
  • on A.20 “PWML2” (per B)
  • on C.9 “PWMH3” (per B)
  • on C.7 “PWMH2” (per B)
  • on C.5 “PWMH1” (per B)
  • on C.3 “PWMH0” (per B)
  • on D.6 “PWMFI2” (per B)

best,
-D

This is just a first attempt and it's not finished.

Nice!

I would say but it looks good!

Graynomad: BTW, does anyone know if the power jack is a 2.1 or a 2.5mm type?

Power jack is 2.1

Hi,

I think you need to swap 5V and GND on the ICSP connector.

Maybe you could also add a comment that TX0 & RX0 are connected to the Mega16U2 (for programming).

-D