I'm trying to setup an LED indicator using the gpio pins on a Quartz64 model A. I've installed libgpiod, which comes with a number of tools, like gpiodetect and gpioinfo. With these tools, I can detect a five gpio chips (0-4). However, I don't think that any of these are linked to the main gpio pins since each of the chips has 32 lanes, but there are only 20 gpio pins on the Model A. Also, very few of the 5x32 lanes are named, and the few names are things like "fan" or "restart", not the names listed in section 3.8 of the wiki
wiki.pine64.org/wiki/Quartz64
This is an excellent tutorial on gpio programming, which originally led me to libgpiod
plebian.org/running/gpio/
However, all the examples are for the Model B. I'd hoped that the setup and naming convention for the Model A would be similarly easy, but it seems not. Does anyone have insight for the Model A?
For context, I've tried this while running armbian and gentoo, and the results are the same.
(01-17-2024, 01:37 PM)jyoung Wrote: I'm trying to setup an LED indicator using the gpio pins on a Quartz64 model A. I've installed libgpiod, which comes with a number of tools, like gpiodetect and gpioinfo. With these tools, I can detect a five gpio chips (0-4). However, I don't think that any of these are linked to the main gpio pins since each of the chips has 32 lanes, but there are only 20 gpio pins on the Model A. Also, very few of the 5x32 lanes are named, and the few names are things like "fan" or "restart", not the names listed in section 3.8 of the wiki
wiki.pine64.org/wiki/Quartz64
This is an excellent tutorial on gpio programming, which originally led me to libgpiod
plebian.org/running/gpio/
However, all the examples are for the Model B. I'd hoped that the setup and naming convention for the Model A would be similarly easy, but it seems not. Does anyone have insight for the Model A?
For context, I've tried this while running armbian and gentoo, and the results are the same. I've tried a few things, with limited success. This thread
forum.pine64.org/showthread.php?tid=14277
has a comment at the end that pin7 is an all-purpose gpio pin connected to gpio chip 0 line 0, so it can be turned on with
That worked, but, how would one know that pin7 corresponds to 0 0? The output of gpioinfo doesn't seem to give any clues on this point.
(02-23-2024, 12:48 AM)jyoung Wrote: (01-17-2024, 01:37 PM)jyoung Wrote: I'm trying to setup an LED indicator using the gpio pins on a Quartz64 model A. I've installed libgpiod, which comes with a number of tools, like gpiodetect and gpioinfo. With these tools, I can detect a five gpio chips (0-4). However, I don't think that any of these are linked to the main gpio pins since each of the chips has 32 lanes, but there are only 20 gpio pins on the Model A. Also, very few of the 5x32 lanes are named, and the few names are things like "fan" or "restart", not the names listed in section 3.8 of the wiki
wiki.pine64.org/wiki/Quartz64
This is an excellent tutorial on gpio programming, which originally led me to libgpiod
plebian.org/running/gpio/
However, all the examples are for the Model B. I'd hoped that the setup and naming convention for the Model A would be similarly easy, but it seems not. Does anyone have insight for the Model A?
For context, I've tried this while running armbian and gentoo, and the results are the same. I've tried a few things, with limited success. This thread
forum.pine64.org/showthread.php?tid=14277
has a comment at the end that pin7 is an all-purpose gpio pin connected to gpio chip 0 line 0, so it can be turned on with
That worked, but, how would one know that pin7 corresponds to 0 0? The output of gpioinfo doesn't seem to give any clues on this point. Actually, if anyone could just point out one additional line in the gpio that I could toggle, that would do it for this project. It kind of looks like pins 3,5,12,14 might be good candidates, but I can't tell what chips/lines they're connected to. Trying lines at random is kind of a mixed bag, since there are 5x32 lines, and some of the lines trigger a power off/restart.
(02-23-2024, 03:01 PM)jyoung Wrote: (02-23-2024, 12:48 AM)jyoung Wrote: (01-17-2024, 01:37 PM)jyoung Wrote: I'm trying to setup an LED indicator using the gpio pins on a Quartz64 model A. I've installed libgpiod, which comes with a number of tools, like gpiodetect and gpioinfo. With these tools, I can detect a five gpio chips (0-4). However, I don't think that any of these are linked to the main gpio pins since each of the chips has 32 lanes, but there are only 20 gpio pins on the Model A. Also, very few of the 5x32 lanes are named, and the few names are things like "fan" or "restart", not the names listed in section 3.8 of the wiki
wiki.pine64.org/wiki/Quartz64
This is an excellent tutorial on gpio programming, which originally led me to libgpiod
plebian.org/running/gpio/
However, all the examples are for the Model B. I'd hoped that the setup and naming convention for the Model A would be similarly easy, but it seems not. Does anyone have insight for the Model A?
For context, I've tried this while running armbian and gentoo, and the results are the same. I've tried a few things, with limited success. This thread
forum.pine64.org/showthread.php?tid=14277
has a comment at the end that pin7 is an all-purpose gpio pin connected to gpio chip 0 line 0, so it can be turned on with
That worked, but, how would one know that pin7 corresponds to 0 0? The output of gpioinfo doesn't seem to give any clues on this point. Actually, if anyone could just point out one additional line in the gpio that I could toggle, that would do it for this project. It kind of looks like pins 3,5,12,14 might be good candidates, but I can't tell what chips/lines they're connected to. Trying lines at random is kind of a mixed bag, since there are 5x32 lines, and some of the lines trigger a power off/restart.
Look at the schematic? This is open source hardware :-D
Here you have 12 usable GPIO pins, one on a low pass filter so 11 unencumbered.
pin 1 - Vcc_3v3
pin 2 - Vcc_v5
pin 3 - I2C3_SDA_M0 - UART3_RX_M0 - AUDIOPWM_LOUT_p - GPIO1_A0_u
pin 4 - Vcc_v5
pin 5 - I2C_SCL_M0 - UART3_TX_M0 - AUDIOPWM_LOUT_n - GPIO1_A1_u
pin 6 - GND
pin 7 - CPU_REFCLK_OUT - GPIO0_A0_d
pin 8 - UART2_TX_M0_DEBUG - PWM8_M1 - UART6_TX_M1 - GPIO1_D5_u
pin 9 - GND
pin 10 - UART2_RX_M0_DEBUG - PWM9_M1 - UART6_RX_M1 - GPIO1_D6_u
pin 11 - SPI1_MOSI_M1 - GPIO3_C1_d
pin 12 - UART0_TX - PWM2_M0 - GPIO0_C1_d
pin 13 - SPI1_MISO_M1 - GPIO3_C2_d
pin 14 - UART0_RX - PWM1_M0 - GPIO0_C0_d
pin 15 - SPI1_CLK_M1 - GPIO3_C3_d
pin 16 - GND
pin 17 - SPI1_CS0_M1 - GPIO3_A1_d
pin 18 - SPDIF_OUT - GPIO1_A4_d (watch for a low pass filter)
pin 19 - GND
pin 20 - vss_3v3
|