C0/C1 GPIO 사용법 문의

Post Reply
sjclover
Posts: 36
Joined: Fri May 08, 2020 9:28 am
languages_spoken: english
Has thanked: 1 time
Been thanked: 0
Contact:

C0/C1 GPIO 사용법 문의

Post by sjclover » Wed Jun 24, 2020 1:38 pm

안녕하세요 Ubuntu 16.04 / ODROID-C0(C1) 사용 중

GPIO 사용법 문의드립니다.

라이브러리 설치나 간단한 코드예제 링크라도 부탁드립니다.

https://wiki.odroid.com/odroid-c1/appli ... o/rpi.gpio

참고하여 사용시 RPI모듈을 사용할 수 없어 문의드립니다.

감사합니다.

User avatar
odroid
Site Admin
Posts: 34642
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English, Korean, Japanese
ODROIDs: ODROID
Has thanked: 824 times
Been thanked: 712 times
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by odroid » Wed Jun 24, 2020 3:03 pm

해당 GPIO 라이브러리는 Ubuntu 18.04에서 테스트 하였던 것으로 기억합니다.
16.04를 사용해야만 하는 특별한 사유가 없다면, 아래 링크의 18.04 이미지를 설치해 보시길 바랍니다.
https://wiki.odroid.com/odroid-c1/os_images/ubuntu/v3.1

sjclover
Posts: 36
Joined: Fri May 08, 2020 9:28 am
languages_spoken: english
Has thanked: 1 time
Been thanked: 0
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by sjclover » Wed Jun 24, 2020 3:14 pm

odroid wrote:
Wed Jun 24, 2020 3:03 pm
해당 GPIO 라이브러리는 Ubuntu 18.04에서 테스트 하였던 것으로 기억합니다.
16.04를 사용해야만 하는 특별한 사유가 없다면, 아래 링크의 18.04 이미지를 설치해 보시길 바랍니다.
https://wiki.odroid.com/odroid-c1/os_images/ubuntu/v3.1
답변감사합니다. 해당 방법말고는 제어할 수 있는방법이 없는건가요?

User avatar
odroid
Site Admin
Posts: 34642
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English, Korean, Japanese
ODROIDs: ODROID
Has thanked: 824 times
Been thanked: 712 times
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by odroid » Wed Jun 24, 2020 3:23 pm

대부분의 사용자들은 WiringPi 라이브러리를 훨씬 더 많이 사용하는 것으로 알고있습니다.
https://wiki.odroid.com/odroid-c1/appli ... o/wiringpi

sjclover
Posts: 36
Joined: Fri May 08, 2020 9:28 am
languages_spoken: english
Has thanked: 1 time
Been thanked: 0
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by sjclover » Thu Jun 25, 2020 8:46 am

odroid wrote:
Wed Jun 24, 2020 3:23 pm
대부분의 사용자들은 WiringPi 라이브러리를 훨씬 더 많이 사용하는 것으로 알고있습니다.
https://wiki.odroid.com/odroid-c1/appli ... o/wiringpi
해당방법을 사용하였지만 아래와같은 오류가 나타납니다

** Model string on this board is not well formatted **

ODROID-C1+ 사용中

sjclover
Posts: 36
Joined: Fri May 08, 2020 9:28 am
languages_spoken: english
Has thanked: 1 time
Been thanked: 0
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by sjclover » Thu Jun 25, 2020 10:36 am

sjclover wrote:
Thu Jun 25, 2020 8:46 am
odroid wrote:
Wed Jun 24, 2020 3:23 pm
대부분의 사용자들은 WiringPi 라이브러리를 훨씬 더 많이 사용하는 것으로 알고있습니다.
https://wiki.odroid.com/odroid-c1/appli ... o/wiringpi
해당방법을 사용하였지만 아래와같은 오류가 나타납니다

** Model string on this board is not well formatted **

ODROID-C1+ 사용中
plz reply for my question i really want to know that

User avatar
odroid
Site Admin
Posts: 34642
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English, Korean, Japanese
ODROIDs: ODROID
Has thanked: 824 times
Been thanked: 712 times
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by odroid » Thu Jun 25, 2020 10:54 am

어떤 명령어를 실행하였을때 나타난 오류인가요?

sjclover
Posts: 36
Joined: Fri May 08, 2020 9:28 am
languages_spoken: english
Has thanked: 1 time
Been thanked: 0
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by sjclover » Thu Jun 25, 2020 2:29 pm

odroid wrote:
Thu Jun 25, 2020 10:54 am
어떤 명령어를 실행하였을때 나타난 오류인가요?
python 파일로 작성 후 해당파일을 실행하였을떄 나타납니다.

sudo python3 xxxxx.py

ODROID-C1+ 사용

joshua.yang
Posts: 392
Joined: Fri Sep 22, 2017 5:54 pm
languages_spoken: Korean, English
ODROIDs: XU4, XU4Q + Cloudshell2, H2, N2
Has thanked: 17 times
Been thanked: 81 times
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by joshua.yang » Thu Jun 25, 2020 2:38 pm

안녕하세요.

확인 후 다시 답변 드리겠습니다.

sjclover
Posts: 36
Joined: Fri May 08, 2020 9:28 am
languages_spoken: english
Has thanked: 1 time
Been thanked: 0
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by sjclover » Thu Jun 25, 2020 2:50 pm

joshua.yang wrote:
Thu Jun 25, 2020 2:38 pm
안녕하세요.

확인 후 다시 답변 드리겠습니다.
감사합니다.

gpio readall 을사용하여 pin definition을 확인하려고하여도 나타납니다.

**model string on this board is not well formatted **

User avatar
odroid
Site Admin
Posts: 34642
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English, Korean, Japanese
ODROIDs: ODROID
Has thanked: 824 times
Been thanked: 712 times
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by odroid » Thu Jun 25, 2020 2:51 pm

18.04 OS 이미지를 새로 설치한 상태인가요?

sjclover
Posts: 36
Joined: Fri May 08, 2020 9:28 am
languages_spoken: english
Has thanked: 1 time
Been thanked: 0
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by sjclover » Thu Jun 25, 2020 3:02 pm

odroid wrote:
Thu Jun 25, 2020 2:51 pm
18.04 OS 이미지를 새로 설치한 상태인가요?
아니오 16.04입니다

User avatar
odroid
Site Admin
Posts: 34642
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English, Korean, Japanese
ODROIDs: ODROID
Has thanked: 824 times
Been thanked: 712 times
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by odroid » Thu Jun 25, 2020 3:08 pm

커널의 보드 정보가 달라 발생하는 문제로 보입니다.
18.04를 설치하면 해결될 겁니다. 혹시 모르니 저희도 18.04에서 테스트 해보겠습니다.

sjclover
Posts: 36
Joined: Fri May 08, 2020 9:28 am
languages_spoken: english
Has thanked: 1 time
Been thanked: 0
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by sjclover » Thu Jun 25, 2020 3:16 pm

odroid wrote:
Thu Jun 25, 2020 3:08 pm
커널의 보드 정보가 달라 발생하는 문제로 보입니다.
18.04를 설치하면 해결될 겁니다. 혹시 모르니 저희도 18.04에서 테스트 해보겠습니다.
네 감사합니다. 18.04에서만 GPIO 제어가 가능하다는것이 이해되지않습니다.

다른버전에서도 cat명령어나 .py에 작성하여 가능한것으로 알고있습니다.

간단한 예제코드라도 부탁드립니다.

User avatar
odroid
Site Admin
Posts: 34642
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English, Korean, Japanese
ODROIDs: ODROID
Has thanked: 824 times
Been thanked: 712 times
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by odroid » Thu Jun 25, 2020 3:20 pm

GPIO 라이브러리가 보드 정보를 확인하여야만 하는데, 16.04에는 해당 정보가 없어서 위와 같은 메시지가 나오면서 동작을 멈추게 됩니다.
하나의 라이브러리로 다양한 보드를 지원하려면 보드 정보가 꼭 필요합니다.

라이브러리 소스코드에 보드 정보를 검출하는 부분을 직접 수정하시면 사용할 수는 있습니다만, 16.04를 꼭 이용하여야 하는 이유가 있는지요?

sjclover
Posts: 36
Joined: Fri May 08, 2020 9:28 am
languages_spoken: english
Has thanked: 1 time
Been thanked: 0
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by sjclover » Thu Jun 25, 2020 3:24 pm

odroid wrote:
Thu Jun 25, 2020 3:20 pm
GPIO 라이브러리가 보드 정보를 확인하여야만 하는데, 16.04에는 해당 정보가 없어서 위와 같은 메시지가 나오면서 동작을 멈추게 됩니다.
하나의 라이브러리로 다양한 보드를 지원하려면 보드 정보가 꼭 필요합니다.

라이브러리 소스코드에 보드 정보를 검출하는 부분을 직접 수정하시면 사용할 수는 있습니다만, 16.04를 꼭 이용하여야 하는 이유가 있는지요?
이미많은 셋팅이 되어서 18.04에서 초기셋팅을하기에 부담이있습니다.

joshua.yang
Posts: 392
Joined: Fri Sep 22, 2017 5:54 pm
languages_spoken: Korean, English
ODROIDs: XU4, XU4Q + Cloudshell2, H2, N2
Has thanked: 17 times
Been thanked: 81 times
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by joshua.yang » Thu Jun 25, 2020 3:42 pm

안녕하세요.

사용하시고 계신 16.04 에서 아래 명령어들 결과 확인 부탁드립니다.

Code: Select all

cat /proc/device-tree/model

Code: Select all

cat /proc/cpuinfo | grep Hardware

Code: Select all

uname -a

sjclover
Posts: 36
Joined: Fri May 08, 2020 9:28 am
languages_spoken: english
Has thanked: 1 time
Been thanked: 0
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by sjclover » Fri Jun 26, 2020 8:26 am

joshua.yang wrote:
Thu Jun 25, 2020 3:42 pm
안녕하세요.

사용하시고 계신 16.04 에서 아래 명령어들 결과 확인 부탁드립니다.

Code: Select all

cat /proc/device-tree/model

Code: Select all

cat /proc/cpuinfo | grep Hardware

Code: Select all

uname -a
AMLOGICodroid@odroid

Hardware : ODROID

Linux odroid 3.10.107-13 #2 SMP PREEMPT Wed Jun 19 02:31:43 -03 2019 armv7l armv7l armv7l GNU/LINUX

joshua.yang
Posts: 392
Joined: Fri Sep 22, 2017 5:54 pm
languages_spoken: Korean, English
ODROIDs: XU4, XU4Q + Cloudshell2, H2, N2
Has thanked: 17 times
Been thanked: 81 times
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by joshua.yang » Fri Jun 26, 2020 9:48 am

sjclover wrote:
Fri Jun 26, 2020 8:26 am
AMLOGICodroid@odroid

Hardware : ODROID

Linux odroid 3.10.107-13 #2 SMP PREEMPT Wed Jun 19 02:31:43 -03 2019 armv7l armv7l armv7l GNU/LINUX
안녕하세요.

저희 예전 WiringPi는 사용할 수 있을 것 같습니다. 방금 16.04 (ubuntu-16.04.2-mate-odroid-c1-20170220.img.xz) 를 설치해 테스트 해봤으며, Python 예제가 돌아가는 것을 확인했습니다.

git을 통해 아래 명령어로 설치하실 수 있습니다.

Code: Select all

git clone https://github.com/hardkernel/WiringPi2-Python -b master-old --recursive
Python wrapper 의존성 패키지 설치

Code: Select all

sudo apt install git python-dev python-setuptools python3-dev python3-setuptools swig
Python 2 전용으로 설치

Code: Select all

mv WiringPi2-Python
swig3.0 -python -threads wiringpi.i
python setup.py build install
Python3 전용으로 설치

Code: Select all

mv WiringPi2-Python
swig3.0 -python -threads wiringpi.i
python3 setup.py build install
Python LED 조작 예제

Code: Select all

#!/usr/bin/python
import wiringpi2 as wpi
import time
 
wpi.wiringPiSetup()
wpi.pinMode(0,1)
 
while True:
    wpi.digitalWrite(0, 1)
    time.sleep(1)
    wpi.digitalWrite(0, 0)
    time.sleep(1)
작동 중 이상이 생길 경우 아래 명령어로 w1_gpio 모듈을 내린 후 다시 해보시길 바랍니다. w1_gpio 모듈에서 40 핀 헤더의 특정 핀을 참조하기 때문에 이상이 생길 수 있습니다.

Code: Select all

sudo rmmod w1_gpio
These users thanked the author joshua.yang for the post:
joy (Fri Jun 26, 2020 3:14 pm)

sjclover
Posts: 36
Joined: Fri May 08, 2020 9:28 am
languages_spoken: english
Has thanked: 1 time
Been thanked: 0
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by sjclover » Fri Jun 26, 2020 10:32 am

joshua.yang wrote:
Fri Jun 26, 2020 9:48 am
sjclover wrote:
Fri Jun 26, 2020 8:26 am
AMLOGICodroid@odroid

Hardware : ODROID

Linux odroid 3.10.107-13 #2 SMP PREEMPT Wed Jun 19 02:31:43 -03 2019 armv7l armv7l armv7l GNU/LINUX
안녕하세요.

저희 예전 WiringPi는 사용할 수 있을 것 같습니다. 방금 16.04 (ubuntu-16.04.2-mate-odroid-c1-20170220.img.xz) 를 설치해 테스트 해봤으며, Python 예제가 돌아가는 것을 확인했습니다.

git을 통해 아래 명령어로 설치하실 수 있습니다.

Code: Select all

git clone https://github.com/hardkernel/WiringPi2-Python -b master-old --recursive
Python wrapper 의존성 패키지 설치

Code: Select all

sudo apt install git python-dev python-setuptools python3-dev python3-setuptools swig
Python 2 전용으로 설치

Code: Select all

mv WiringPi2-Python
swig3.0 -python -threads wiringpi.i
python setup.py build install
Python3 전용으로 설치

Code: Select all

mv WiringPi2-Python
swig3.0 -python -threads wiringpi.i
python3 setup.py build install
Python LED 조작 예제

Code: Select all

#!/usr/bin/python
import wiringpi2 as wpi
import time
 
wpi.wiringPiSetup()
wpi.pinMode(0,1)
 
while True:
    wpi.digitalWrite(0, 1)
    time.sleep(1)
    wpi.digitalWrite(0, 0)
    time.sleep(1)
작동 중 이상이 생길 경우 아래 명령어로 w1_gpio 모듈을 내린 후 다시 해보시길 바랍니다. w1_gpio 모듈에서 40 핀 헤더의 특정 핀을 참조하기 때문에 이상이 생길 수 있습니다.

Code: Select all

sudo rmmod w1_gpio
정말 감사합니다만 아래와같은 오류 발생합니다

ModuleNotFoundError: No module named 'wiringpi2'

Python3 전용으로 설치

Code: Select all

mv WiringPi2-Python
swig3.0 -python -threads wiringpi.i
python3 setup.py build install


실행시
mv: missing destination file operand after 'wiringpi2-python'
Try 'mv --help' for more information.
bindings.i:51: Warning 509: Overloaded method digitalWriteByte(int) effectively ignored,
bindings.i:26: Warning 509: as it is shadowed by digitalWriteByte(int const).

joshua.yang
Posts: 392
Joined: Fri Sep 22, 2017 5:54 pm
languages_spoken: Korean, English
ODROIDs: XU4, XU4Q + Cloudshell2, H2, N2
Has thanked: 17 times
Been thanked: 81 times
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by joshua.yang » Fri Jun 26, 2020 10:52 am

sjclover wrote:
Fri Jun 26, 2020 10:32 am
정말 감사합니다만 아래와같은 오류 발생합니다

ModuleNotFoundError: No module named 'wiringpi2'

Python3 전용으로 설치

Code: Select all

mv WiringPi2-Python
swig3.0 -python -threads wiringpi.i
python3 setup.py build install


실행시
mv: missing destination file operand after 'wiringpi2-python'
Try 'mv --help' for more information.
bindings.i:51: Warning 509: Overloaded method digitalWriteByte(int) effectively ignored,
bindings.i:26: Warning 509: as it is shadowed by digitalWriteByte(int const).
아마 이전에 설치했던 파일들과 충돌이 일어나는 것 같습니다.

Code: Select all

sudo rm -rf /usr/local/lib/python3.5/dist-packages/wiringpi*
sudo rm -rf /usr/local/lib/python3.5/dist-packages/odroid*
후 다시,

Code: Select all

python3 setup.py build install
해보시길 바랍니다.

그리고 알려드린 예제는 Python3 전용이 아니기 때문에, Python2 로도 설치를 따로 하셔야 합니다.

아니면 예제 맨 위에

Code: Select all

#!/usr/bin/python
#!/usr/bin/python3 로 바꾸셔도 됩니다.

sjclover
Posts: 36
Joined: Fri May 08, 2020 9:28 am
languages_spoken: english
Has thanked: 1 time
Been thanked: 0
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by sjclover » Fri Jun 26, 2020 10:53 am

mv 명령어 대신 cd로 해당 디렉토리 접속 후 python3 setup.py build install

하여 install 후에 led 코드 입력시 하기와 같은 오류발생

ImportError: /usr/local/lib/python3.6/dist-packages/wiringpi2-1.1.1-py3.6-linux-armv7l.egg/_wiringpi2.cpython-36m-arm-linux-gnueabihf.so: undefined symbol: PyString_FromStringAndSize
python-36m-arm-linux-gnueabihf.so: undefined symbol: PyString_FromStringAndSize
-bash: ImportError:: command not found


Pin 설정의 오류입니까?? wpi.mode(0,1)에 wpi.mode(사용하려는핀,방향) 을 설정하면 되는것입니까?

sjclover
Posts: 36
Joined: Fri May 08, 2020 9:28 am
languages_spoken: english
Has thanked: 1 time
Been thanked: 0
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by sjclover » Fri Jun 26, 2020 10:57 am

감사합니다. 해당명령어로 실행하니 원활한동작을합니다.

sjclover
Posts: 36
Joined: Fri May 08, 2020 9:28 am
languages_spoken: english
Has thanked: 1 time
Been thanked: 0
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by sjclover » Fri Jun 26, 2020 10:58 am

한가지만 더 여쭤보고싶습니다. ODROID-C1+은 PWM기능을 제공합니까?

joshua.yang
Posts: 392
Joined: Fri Sep 22, 2017 5:54 pm
languages_spoken: Korean, English
ODROIDs: XU4, XU4Q + Cloudshell2, H2, N2
Has thanked: 17 times
Been thanked: 81 times
Contact:

Re: C0/C1 GPIO 사용법 문의

Post by joshua.yang » Fri Jun 26, 2020 11:01 am

다행입니다.

C1도 PWM 기능을 제공합니다. 아래 링크를 참고해주세요.
https://wiki.odroid.com/odroid-c1/appli ... e/gpio/pwm

Post Reply

Return to “C0/C1/C1+/C2/C4”

Who is online

Users browsing this forum: No registered users and 1 guest