The previous Wolfson card has a 26 pin header with male pins to connect to the Raspberry GPIO header after pushed on top of it. Does the new audio card do the same for the 40 pin header? Sorry, but I cannot discern from the card images I have.
The previous Wolfson card has a 26 pin header with male pins to connect to the Raspberry GPIO header after pushed on top of it. Does the new audio card do the same for the 40 pin header? Sorry, but I cannot discern from the card images I have.
In this table (e), pins 16-20 are ALL described as "General Purpose Pin GPIO 3", which looks to me like a copy/paste error from the pin 15 description.
It would be nicer if table (e) were to read:
| Pin | Name | Type | Power Domain | Description |
|---|---|---|---|---|
| 17 | GPIO6_EX | Digital In/Out | 0 - 3.3V | RPI General Purpose Pin GPIO6 (RPI pin 31) |
| 18 | GPIO12_EX | Digital In/Out | 0 - 3.3V | RPI General Purpose Pin GPIO12 (RPI pin 32) |
| 19 | GPIO16_EX | Digital In/Out | 0 - 3.3V | RPI General Purpose Pin GPIO16 (RPI pin 36) |
| 20 | GPIO26_EX | Digital In/Out | 0 - 3.3V | RPI General Purpose Pin GPIO26 (RPI pin 37) |
However, there are discrepancies between this table (e) and the description within the schematic that need to be figured out.
Pins 10 and 11 are flipped between the schematic and table (e). (In the schematic, pin 10 is listed as PDMOUT_DAT [3] while table (e) says pin 10 is SDA. And vice versa for pin 11.) Which is correct?
In the schematic, pin 14 is listed as connected to "GPIO5_EX [7]", which SHOULD correspond to PI GPIO 5 (PI pin 29). However table (e) lists pin 14 as being GND. Which is correct?
In the Cirrus Logic Audio Card Comparison Table, it says that there are 8 PI connections (including the UART). The UART is connected to the Cirrus J8 Header. (RPI pins 8&10)
Can anyone confirm definitively which are the other two GPIO pins that are tied directly from the PI into the Cirrus expansion header?
Any definitive clues?
Thank you, Scott, it looks great and very helpful!
"Although they are not enabled in the current driver they provide scope for increased functionality going forward."
Does it mean I can use those "unused" GPIOs as is, or I need to hack kernel driver somehow to make them free for using?
> Does it mean I can use those "unused" GPIOs as is, or I need to hack kernel driver somehow to make them free for using?
I guess it means that you could use them now as is, if you'd want this very much, but you are not advised to do so, because they can be used some time in the future (drivers), for "increased functionality going forward" 
Scott, many thanks for this and for passing the information on to E14. Could you pls. correct "SCL I2C" in the table to "SCL1 I2C"? (there are 2 I2C interfaces on the RPi, and that is from intf. 1)
Also, if you could ask E14 to generate the doc pdf-s as for them to be searchable, it would be great. I don't think this to be too complicated, but the current manual is very, very hard to use. You cannot search any text, but neither can you copy and paste most of them, should it be a link, for example (text in tables *is* searchable, but normal text is not). I had to manually enter the (long) link from Annexe 7 d. of the "Schematic diagram" (have to enter this as well;), and on top of that, as I remember it was wrong, linking to the schematic of the Wolfson audio card! So please, can somebody at Cirrus check the links validity as well? Thanks,
Scott,
Your table suggests that the SPI control pins are still exposed through a header called J9. While this is good news, I am sorry to not find this header on the Cirrus schematics. Maybe I've missed it, but if not, would you be so kind to ask them for an update?
Thanks,
Zsolt
Thank you for posting this table, Scott.
It took me a while to realize how to interpret your references to the SPI functions on the J9 header. (J9 is the name for the 40-pin connector from the Cirrus board to the RPi J8 40-pin header.)
The actual pins are NOT easily connected to, as they require you to use either: a shim connector between the two boards, or resoldering the pins.
Nonetheless, the data IS important in that it confirms that the SPI pins ARE indeed being used for SPI and haven't been used for some other GPIO purpose.
I have some comments about using "semi free" or "unused" GPIOs of Cirrus Logic AC. I mean GPIOs 04, 24, 25, and 27.
In my project I use RPi with CLAC and SleepyPi to make battery powered field recorder for animal sounds. To make possible these three boards be connected I had have to make an adaptor from Exp. header of CLAC to Sleepy. To managing power of Rpi Sleepy needs GPIOs 24 and 25. 25 is present in CLAC Exp. header, so at the beginning I wanted to use it as is. But it didn't work, and when I checked voltage on this pin, my multimeter showed 0.7V, but not 3.3V. I measured this pin voltage in all combinations of boards (I have Rpi B+, couple of RPi A+, two CLACs and two Sleepy Pi) - results were the same. On Rpi without audio card and normal Raspbian loaded, those GPIOs of course had 3.3V when I switched them to High. Finally I have used "true free" pins from Exp. header, and everything is working properly.
Thus, these pins (at least 25th), it seems, can not be used as normal GPIOs, despite the fact that they are unused in this version of the CLAC driver.
Thanks for the feedback. We believe we have discovered and resolved the cause of the problem in the 3.18 driver which has been just been released. The GPIO pin of the WM5102 was incorrectly configured as an output, in the 3.18 driver this is now configured as an input. This issue was stopping the use of GPIO25 from the Pi as reported by Ivan W.
Correct me if I'm wrong, but from reading this thread it seems like one needs to use (some of) the 20 Expansion Header pins for GPIO access.
If this is the case is there a recommended 2 x 10 pin ribbon cable ?
Thanks
Hello,
Instead of attaching the cirrus card to the 40 pins, lock, stock and barrel, could one connect only the necessary pins on the card and GPIO with jumper leads, thus leaving all the other pins available ?
And maybe even leave out pins one doesn't need - for example if one only needed the mini jack line in and out ?
Thanks,
Jem
Hello,
Instead of attaching the cirrus card to the 40 pins, lock, stock and barrel, could one connect only the necessary pins on the card and GPIO with jumper leads, thus leaving all the other pins available ?
And maybe even leave out pins one doesn't need - for example if one only needed the mini jack line in and out ?
Thanks,
Jem