PINE64

Full Version: GPIO LED blinker using SYSFS on the Rock64
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3
(07-12-2017, 06:25 PM)MarkHaysHarris777 Wrote: [ -> ]
(07-12-2017, 06:10 PM)tllim Wrote: [ -> ]Hi Marcus,

Lets create ROCK64 GPIO tutorial guide in PDF format and post at wiki site.

Yes;  I'm actually working on that !  ... I'll let you know when its ready.  It will also include the Python and C|C++ methods as well.

Thanks :-)
I updated my chart; while pin GPIO2_A3 does NOT work as output (it should) the pin DOES work as input !

... this was a surprise !
Hi
First of all thank you for your work. Very helpful!
I'd like to share a modified version of the function to calculate the pin number, with a bit of validation to be sure that the string is ok (I hope it is ok). The function returns -1 if there was any problem with the string

Code:
def GPIO_name2gpio(value):
    value = value.upper()
    if (value[0:4] != 'GPIO') or (value[5] != '_'):
        return -1
    try:
        bank_num = int(value[4:5], 10)
        pad_nam = GPIO_pads[value[6:7]]
        pad_num = int(value[7:], 10)
        if (bank_num < 0) or (bank_num > 3) or (pad_num < 0) or (pad_num > 7):
            return -1;

        return (bank_num * 32) + (pad_nam * 8) + pad_num
    except (ValueError,KeyError):
        return -1
I noticed the pin numbers now have an additional offset of 1000 in the latest images (kernel 4.4.103).
Went ahead and wrote a Rock64 GPIO library for Bash: https://github.com/Leapo/Rock64-BashGPIO

Working on porting/re-implementing RPi.GPIO for Python now
(03-25-2018, 06:04 PM)Leapo Wrote: [ -> ]Went ahead and wrote a Rock64 GPIO library for Bash: https://github.com/Leapo/Rock64-Utilities

Working on porting/re-implementing RPi.GPIO for Python now

Nice work, can you maybe start a new thread for your RPi.GPIO effort, there are probably some people that would like to contribute...
(03-26-2018, 02:56 AM)xalius Wrote: [ -> ]Nice work, can you maybe start a new thread for your RPi.GPIO effort, there are probably some people that would like to contribute...

I'll fire up a separate thread as soon as I get the first version of the Python module uploaded to github. Shouldn't be too much longer.

I got basic functionality hammered-out and working last night. Check it out, R64.GPIO is already running RPi.GPIO compatible test code:

[Image: Xsa8Izu.png]
Hello,

I have issue when trying the code MarkHaysHarris gave :


Code:
ulysse132@rock64:~$ sudo -i
[sudo] password for ulysse132:

root@rock64:~# echo 101 > /sys/class/gpio/export
-bash: echo: write error: Invalid argument
root@rock64:~#


Could you give me a hand to make this work ? I have the same result with echo 60. I didn't try other values because I don't want to make mistakes.

I use armbian 5.42 (stretch).

Thanks for your help !
(07-03-2018, 11:30 AM)ulysse132 Wrote: [ -> ]Hello,

I have issue when trying the code MarkHaysHarris gave :


Code:
ulysse132@rock64:~$ sudo -i
[sudo] password for ulysse132:

root@rock64:~# echo 101 > /sys/class/gpio/export
-bash: echo: write error: Invalid argument
root@rock64:~#


Could you give me a hand to make this work ? I have the same result with echo 60. I didn't try other values because I don't want to make mistakes.

I use armbian 5.42 (stretch).

Thanks for your help !

Export numbers have changed due to kernel updates and the like. I'll double check what the offset is now and let you know.
I'd also like to know more about making this work on Armbian 5.42 stretch. My /sys/class/gpio only lists 5 items, gpiochip1000, 1032, 1064, 1096, 1510. Is this now accessing them as a group? I'm specifically wanting to use them as triggers so that a button press will trigger events in my python app.
Pages: 1 2 3