Author Topic: DigiX Pinout documentation  (Read 49904 times)

gogol

  • Sr. Member
  • ****
  • Posts: 398
DigiX Pinout documentation
« on: December 16, 2013, 08:30:24 am »
[Rewritten 2014-05-26]

This thread was started to collect all available information about the DigiX and its pins as a consolidated reference.
The current status of this document is still considered beta.

The most current version is always linked to this initial post.

I ask all users of this documentation to give feedback in this thread:
  • Are there informations missing?
  • Is something mistakable?
  • Is something wrong?
  • Other possible improvements?

See also the  table in the Wiki!


[2014-06-10  Version 0.99 added!]
« Last Edit: June 10, 2014, 01:04:14 am by gogol »

gogol

  • Sr. Member
  • ****
  • Posts: 398
Re: DigiX Pinout documentation
« Reply #1 on: December 16, 2013, 08:49:41 am »
Some more points:
  • Which pins are routed to the SD-card
  • Description of all prepared solder-bridges on the back-side
  • The Due has an 4 port debug connector and an small 2x5 port JTAG
    the digix seems to have only the JTAG, but labeled DEBUG. What are the differences?

MichaelMeissner

  • Full Member
  • ***
  • Posts: 166
Re: DigiX Pinout documentation
« Reply #2 on: December 16, 2013, 09:31:31 am »
Some time ago, I decided to make a google docs spreadsheet  that listed all of the pin functionality of various microprocessors.  Over time, I have added the Arduino Uno R3, Teensy 3.0/3.1,  Leonardo, Mega 2560, Due, DigiX, Trinket, Gemma, Digispark, raw ATtiny85, Flora, Lilypad, and Yun/Tre (only the Arduino type pins).  Many of the processors I don't own, and I was just going off the spec sheets.  https://docs.google.com/spreadsheet/ccc?key=0AqMAmYxHItUAdDdlcURnY1NRRlFfLWdIbkdWamxfckE#gid=1

gogol

  • Sr. Member
  • ****
  • Posts: 398
Re: DigiX Pinout documentation
« Reply #3 on: December 17, 2013, 12:43:39 am »
Hello Michael,

thanks for your link. I have pulled over the following information into my table:
  • digiX-pin  4: SD card sl
  • digiX-pin  9: IRDA TX
  • digiX-pin 51: Mesh IRQ
  • digiX-pin 104: Wifi flow control
  • digiX-pin :105 Wifi flow control

However your list raises several questions:

  • digiX-pin 72/73: LED  The digix hast no TX/RX LED as the DUE, instead those lines are pulled out to digix-Pin 108/109
    that can cause some problems with DUE programs using those LEDs for some other purposes
  • IRDA TX
    you are mentioning IRDA TX however no IRDA RX
  • WiFi Flow-Control:
    Which line is RTS / CTS ?
  • PIN count
    your overview shows 35 more pins for the digiX as for the DUE.
    However the digix has only 26+8 = 34 pins more, when I count the pins around plus the mesh-network socket
    There are however more differences:
    The DUE has an 2x5 JTAG and a 4 pin DEBUG, the DIGIX only the 5x2 pin socket.
    The DUE has furthermore an ICSP for the 16u2 and four more pins to that controller,
    those should be mentioned, when comparing both

Comparing and backward reference are not possible from your table, as you have not included the original PIN-names from the ATMEL controller, where related.

I am thinking about, that I will drop the physical pin numbers (at least for the graphical diagram), as the original PIN Names are the only reference, which is the same over different packages of the controller.


MichaelMeissner

  • Full Member
  • ***
  • Posts: 166
Re: DigiX Pinout documentation
« Reply #4 on: December 17, 2013, 05:44:34 am »
    Hello Michael,

    thanks for your link. I have pulled over the following information into my table:

    Note, some of the things in that table are guesses, since there were no detailed wikis or pinout diagrams for DigiX.  I am one of the people who is still waiting for the delivery of DigiX and level shifter.  I don't have a Due either, so that is also just from reading the specs page.  Obviously if there are things wrong, let me know, and I will fix my spreadsheet.

    However your list raises several questions:

    digiX-pin 72/73: LED  The digix hast no TX/RX LED as the DUE, instead those lines are pulled out to digix-Pin 108/109
    that can cause some problems with DUE programs using those LEDs for some other purposes

    Thanks.  I updated my spreadsheet.

    IRDA TX
    you are mentioning IRDA TX however no IRDA RX

    The IRDA TX is the pin used by the IRremote library for transmitting IR flashes for an IR remote device.  On each of the AVR microprocessors, which pin is used depends on which timer is used internally on the chip.  I don't see any support for IRremote in the source for any ARM processor, so I'm going to remove the IRDA fields for the Due, DigiX, and Teensy 3.0/3.1 processors.  These tables grew up as a way for me to make pin assignments to code that ran on the Uno and Teensy 3.0, so if I wanted to do PWM for instance, I knew which pins to use, and which had special interactions.

    WiFi Flow-Control:
    Which line is RTS / CTS ?

    I don't know.

    PIN count
    your overview shows 35 more pins for the digiX as for the DUE.
    However the digix has only 26+8 = 34 pins more, when I count the pins around plus the mesh-network socket

    I probably miscounted the number of pins when I was looking at the JPG of the front/back.

    I do wish the digistump folk had a detailed JPG image of the front/back of the board, complete with all pin documentation on the image like some of their competitors have done.  Hopefully your work and mine can help other folks.

    There are however more differences:
    The DUE has an 2x5 JTAG and a 4 pin DEBUG, the DIGIX only the 5x2 pin socket.
    The DUE has furthermore an ICSP for the 16u2 and four more pins to that controller,
    those should be mentioned, when comparing both[/li][/list]

    Thanks.

    Comparing and backward reference are not possible from your table, as you have not included the original PIN-names from the ATMEL controller, where related.

    I am thinking about, that I will drop the physical pin numbers (at least for the graphical diagram), as the original PIN Names are the only reference, which is the same over different packages of the controller.
    As I said, my table grew out of wanting to make pin assignments at the Arduino library level, so I didn't use the names from the datasheets.  Except for the ATtiny85 chips, I haven't read the datasheets.  Originally I had more microprocessors on each page, but it became too wide, and I split them into groups.[/list]
    « Last Edit: December 17, 2013, 09:02:49 am by MichaelMeissner »

    gogol

    • Sr. Member
    • ****
    • Posts: 398
    Detailed PWM Questions
    « Reply #5 on: December 17, 2013, 07:20:55 am »
    My biggest problem right now is, that it looks like, that I am missing a piece of information in understanding PWM.

    According to the DUE documentation PWM outputs are on the pins 2-13, which are: PD2-PD13
    According to the Atmel-Reference of the SAM3X8E there are 8 PWM.channels with Independent Complementary Outputs (Chapter 39.2)

    Each of those 8 channels has two OUTPUTS PWMHx and PWMLx (Chapter 39.4)

    The single IO-lines from Chapter 39.5.1 don't fit to the DUE-PWM-pins.

    Is PWM on the DUE software based?  Do I miss something in the Atmel spec, that PWM can be remapped to other pins?

    Its for sure, that analog  analogWrite()  generates PWM on the labeled PWM-pins, however I don't understand why, when looking into the Atmel specs.

    Can anyone bring in some light here?  Where is the missing piece of information?




    gogol

    • Sr. Member
    • ****
    • Posts: 398
    Re: DigiX Pinout documentation
    « Reply #6 on: December 17, 2013, 11:51:12 pm »
    @Michael:
    I can help you with pictures from the board!
    I just added them to the wiki.
    http://digistump.com/wiki/digix/tutorials/board-version-1-0-aug2013

    MichaelMeissner

    • Full Member
    • ***
    • Posts: 166
    Re: DigiX Pinout documentation
    « Reply #7 on: December 18, 2013, 05:07:23 am »
    Thanks, it looks like I got the high pins completely wrong.  I thought the second row of pins on the top were 79-99, and the pins above 99 where on pads underneath the board, but according to the silkscreen it is 90 - 113, with a reset and ground pin thrown in for good measure.

    gogol

    • Sr. Member
    • ****
    • Posts: 398
    Re: DigiX Pinout documentation
    « Reply #8 on: December 18, 2013, 06:15:05 am »
    Underneath are no pins, only open and closed solder-bridges for enabling/disabling certain features.
    The additional pins are on the outside row on the power-connector-side from the board.

    The Audio-jack-side, the two-row bottom and the inner power-connector row are almost compatible to the due. 
    The difference is, that the UART is tied to Wifi instead to the 16u2, but that makes no difference for the pins.
    The level shifter shield will also fit into an DUE and connects only to the inner row and lets the additional row free.
    That means, the digiX is a little bid wider than a DUE and there is no level shifting for the additional pins.

    gogol

    • Sr. Member
    • ****
    • Posts: 398
    PIN AD15 (built in temperature sensor)
    « Reply #9 on: December 18, 2013, 07:36:09 am »
    Has anybody already tried, to work with virtual PIN AD15, which is inside the SAM8X3E connected to an temperature sensor?

    Anything in the libraries to access it?

    (Atmel reference chapter 44.4, page 1330ff )

    gogol

    • Sr. Member
    • ****
    • Posts: 398
    Is Reset NRST or NRSTB?
    « Reply #10 on: December 18, 2013, 11:13:20 pm »
    As there are some RESET pins available, it could be interesting to learn, if they are connected to NRST or NRSTB of the SAM3X:
    From the Atmel documentation:
    NRST
    The NRST pin is bidirectional. It is handled by the on-chip reset controller and can be driven low
    to provide a reset signal to the external components, or asserted low externally to reset the
    microcontroller. It will reset the Core and the peripherals except the Backup region (RTC, RTT
    and Supply Controller). There is no constraint on the length of the reset pulse, and the reset controller
    can guarantee a minimum pulse length.
    The NRST pin integrates a permanent pull-up resistor to VDDIO of about 100 kÙ.
    NRSTB
    The NRSTB pin is input only and enables asynchronous reset of the SAM3X/A series when
    asserted low. The NRSTB pin integrates a permanent pull-up resistor of about 15 kΩ. This allows
    connection of a simple push button
    on the NRSTB pin as a system-user reset. In all modes, this
    pin will reset the chip including the Backup region (RTC, RTT and Supply Controller). It reacts as
    the Power-on reset. It can be used as an external system reset source. In harsh environments, it
    is recommended to add an external capacitor (10 nF) between NRSTB and VDDBU.


    From my understanding, that means, that you can connect third party peripherals like acceleration sensors to NRST, so that they reset, whenever the microcontroller gets a reset (no matter if triggered through code or NRSTB)

    Furthermore it can be interesting, which reset-pin is used, when you are using the RTC for example: See the enclosed link: http://forum.arduino.cc/index.php?topic=160361.0
    « Last Edit: December 18, 2013, 11:20:24 pm by gogol »

    MichaelMeissner

    • Full Member
    • ***
    • Posts: 166
    Re: DigiX Pinout documentation
    « Reply #11 on: December 19, 2013, 01:04:40 pm »
    FWIW, my DigiX finally arrived today, but it will likely be a few days before I get to it.  Before I got the mail, I did update my spreadsheet with the pin information from your pictures gogol.

    That level shifter shield looks like it is a tight fit, having to line up holes on 3 sides (my previous Uno shields did not have the ICSP header stacking pins, so it was only 2 sides that had to line up).

    defragster

    • Sr. Member
    • ****
    • Posts: 467
    Re: DigiX Pinout documentation
    « Reply #12 on: December 20, 2013, 11:05:45 pm »
    @gogol has his name on great wiki photos of the board - (good work)

      http://digistump.com/wiki/digix/tutorials/board-version-1-0-aug2013

    I linked to them on another thread
      http://digistump.com/board/index.php/topic,1195.0.html

    A third photo version with the bridges called out it might help with orientation - as well as other objects related to PinOut

    gogol

    • Sr. Member
    • ****
    • Posts: 398
    Re: DigiX Pinout documentation
    « Reply #13 on: January 02, 2014, 02:56:32 am »
    Happy new year to everyone.

    Enclosed my first draft of the PIN documentation. Still several questions open, and documentation missing.
    « Last Edit: January 19, 2014, 06:43:33 am by gogol »

    dougal

    • Sr. Member
    • ****
    • Posts: 289
    Re: DigiX Pinout documentation
    « Reply #14 on: January 02, 2014, 06:45:32 am »
    @gogol: Looks great so far! Thanks for the work you put into these!