I am a bit confused about the purpose of these pins. They seem to be used for many different things and appear on more than one header. They are used for both the slider switches and the SD card and potentially as GPIO pins.
As GPIO pins they seem to have very limited usage as they are either connected to ground or pulled up by a 10k resistor to 3.3v, and they are used by the SD card. And yet they appear on both the Pmod13 header and the Arduino digital3 header.
Before I realised how these pins were used I connected a Grove button sensor to one of them on the Pmod13 header and caused a short circuit and the device to reboot.
It is hard to see how the Pmod13 header can be sensibly used for anything, but perhaps I am missing something.
I had originally imagined that I could use an Arduino shield such as a Grove sensor shield that I have, directly from the FPGA. But then I realised that the pins on the Arduino headers were not shared with the FPGA, apart from DIG16-19. So all use of Arduino shields seems to have to go through the STM32 processor and then via SPI to the FPGA.
DIG16 - DIG19 on digital3 are in a position that most (all?) Arduino shields do not have pins, so I am not sure what the purpose of them being on the digital 3 header is. Again, perhaps I am missing something.
It seems a pity that there aren't pins that are shared between the Arduino headers and the FPGA. For example if the i2c SDA and SCL pins were shared it might be possible to access Arduino shields that use i2c directly from the FPGA.
Another point about Arduino shields is that some (such as the Grove one) connect to the ISP header on the Arduino. This does not exist on the mystorm board and the header from the Grove shield hits the top of one of the Blackice chips.