PINE64
Python GPIO Library for the Rock64 (R64.GPIO) - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: ROCK64 (https://forum.pine64.org/forumdisplay.php?fid=85)
+--- Forum: General Discussion on ROCK64 (https://forum.pine64.org/forumdisplay.php?fid=86)
+--- Thread: Python GPIO Library for the Rock64 (R64.GPIO) (/showthread.php?tid=5902)

Pages: 1 2 3 4


RE: Python GPIO Library for the Rock64 (R64.GPIO) - pantera - 11-20-2018

I can run under Ubuntu, but can't run the test script under Armbian. Using python3 I get:

Code:
root@rock64:/home/sas# python3 gpio_test.py 
Testing R64.GPIO Module...

Module Variables:
Name           Value
----           -----
GPIO.ROCK      ROCK
GPIO.BOARD     BOARD
GPIO.BCM       BCM
GPIO.OUT       out
GPIO.IN        in
GPIO.HIGH      1
GPIO.LOW       0
GPIO.PUD_UP    0
GPIO.PUD_DOWN  1
GPIO.VERSION   0.6.3
GPIO.RPI_INFO  {'RAM': '1024M', 'PROCESSOR': 'BCM2837', 'TYPE': 'Pi 3 Model B', 'REVISION': 'a22082', 'P1_REVISION': 3, 'MANUFACTURER': 'Embest'}
Error: Unable to export GPIO
Error: Unable to set GPIO direction
Error: Unable to export GPIO
Error: Unable to set GPIO direction

Testing GPIO Input/Output:
You must setup() the GPIO channel ({0} {1}) first
Traceback (most recent call last):
  File "gpio_test.py", line 42, in <module>
    var_gpio_state = GPIO.input(var_gpio_out)                   # Return state of GPIO
  File "/home/sas/R64/_GPIO.py", line 210, in input
    if validate_direction(channel, 'both') == 0:
  File "/home/sas/R64/_GPIO.py", line 118, in validate_direction
    print("You must setup() the GPIO channel ({0} {1}) first").format(gpio_mode, channel)
AttributeError: 'NoneType' object has no attribute 'format'



RE: Python GPIO Library for the Rock64 (R64.GPIO) - Leapo - 05-06-2019

Heads up: I'm not dead, and I'm actively working on this library again.

Just updated with bug fixes:
1. Improved GPIO.input compatibility (now returns an int rather than a string).
2. Fixed Python3 compatibility.
3. Updated install instructions in the Github wiki.

I'm working on RockPro64 support now.


RE: Python GPIO Library for the Rock64 (R64.GPIO) - tllim - 05-12-2019

(05-06-2019, 11:17 AM)Leapo Wrote: Heads up: I'm not dead, and I'm actively working on this library again.

Just updated with bug fixes:
1. Improved GPIO.input compatibility (now returns an int rather than a string).
2. Fixed Python3 compatibility.
3. Updated install instructions in the Github wiki.

I'm working on RockPro64 support now.

Appreciate and thanks on working at ROCKPro64 support. Please PM your shipping address (include phone number for shipping purpose), I will send a Rock64 v3 SBC to you.


RE: Python GPIO Library for the Rock64 (R64.GPIO) - quinterro - 10-08-2020

(11-20-2018, 01:55 PM)pantera Wrote: I can run under Ubuntu, but can't run the test script under Armbian. Using python3 I get:

Code:
root@rock64:/home/sas# python3 gpio_test.py 
Testing R64.GPIO Module...

Module Variables:
Name           Value
----           -----
GPIO.ROCK      ROCK
GPIO.BOARD     BOARD
GPIO.BCM       BCM
GPIO.OUT       out
GPIO.IN        in
GPIO.HIGH      1
GPIO.LOW       0
GPIO.PUD_UP    0
GPIO.PUD_DOWN  1
GPIO.VERSION   0.6.3
GPIO.RPI_INFO  {'RAM': '1024M', 'PROCESSOR': 'BCM2837', 'TYPE': 'Pi 3 Model B', 'REVISION': 'a22082', 'P1_REVISION': 3, 'MANUFACTURER': 'Embest'}
Error: Unable to export GPIO
Error: Unable to set GPIO direction
Error: Unable to export GPIO
Error: Unable to set GPIO direction

Testing GPIO Input/Output:
You must setup() the GPIO channel ({0} {1}) first
Traceback (most recent call last):
  File "gpio_test.py", line 42, in <module>
    var_gpio_state = GPIO.input(var_gpio_out)                   # Return state of GPIO
  File "/home/sas/R64/_GPIO.py", line 210, in input
    if validate_direction(channel, 'both') == 0:
  File "/home/sas/R64/_GPIO.py", line 118, in validate_direction
    print("You must setup() the GPIO channel ({0} {1}) first").format(gpio_mode, channel)
AttributeError: 'NoneType' object has no attribute 'format'

I was getting a similar error when running the test Python file from the terminal using the Armbian_20.08.1_Rock64_bionic_legace_4.4.213_desktop image. I did get it to work using sudo.

To get it to work without sudo I ran the following command from the terminal based on the discussion at https://forum.armbian.com/topic/8714-gpio-not-working-for-non-root/:

chmod 4775 
/usr/bin/python

I don't know secure this is but it worked.

I tried the steps from https://forum.pine64.org/showthread.php?tid=2233 without success.


RE: Python GPIO Library for the Rock64 (R64.GPIO) - Impaled - 03-21-2021

I'm trying to get a Filament-Sensor working on my rock64 with armbian installed and octoprint. Any help? Gpio Kris saying failed not a pi device.


RE: Python GPIO Library for the Rock64 (R64.GPIO) - Impaled - 03-21-2021

I'm trying to get a Filament-Sensor working on my rock64 with armbian installed and octoprint. Any help? Gpio Kris saying failed not a pi device.


RE: Python GPIO Library for the Rock64 (R64.GPIO) - theophile - 04-17-2021

(03-21-2021, 11:14 PM)Impaled Wrote: I'm trying to get a Filament-Sensor working on my rock64 with armbian installed and octoprint. Any help? Gpio Kris saying failed not a pi device.
Sometimes you can get past this by renaming R64.GPIO to RPi.GPIO.


RE: Python GPIO Library for the Rock64 (R64.GPIO) - klausfelix - 07-02-2021

Internal SoC PullUps are usually between 20K to 100K.

So, using a external PullDown to put it low is like creating a voltage divider with the internal pullup, therefore with a external 20K, you get a voltage that is neither a LOW or a HIGH, explaining why you get interrupts triggered repeatedly.

If you use a external 1K as a pulldown instead, you will see that will be close to 0V ...
__________________________
First Motion Products