Description
From @DieterBurandt on January 17, 2017 17:13
(Arduino 1.6.18.1) Variant.cpp
For Arduino Due ONLY:
The two SPI chip select lines logical pin 4 (sd-card) and logical pin 10 (Ethernet) are also connected to pin 87 and pin 77 respectable. (You can measure it for example with an Ohm-meter.)
All pins from 0 to PINS_COUNT are initialised to digital output low in variant.cpp. If a user takes the standard code and tries work with the SD-card or Ethernet the pins 87 and 77 are still low and the SPI device chip select never reaches a full swing to high.
Curiously it works sometimes but is instable, causing complete failures or slow devices.
Set at least pin 87 and pin 77 to input high. This will not influence the output, not the driver, and works very well.
(It will be great if initialisation of the CPU results in a chip select to disable all potentially connected devices on startup. That is pin 4, 10, 52, 77, 87 to input high. This simplifies using of SD-card and Ethernet devices.)
Copied from original issue: arduino/Arduino#5869