Skocz do zawartości
Komentator

Kurs Raspberry Pi, projekty – #3 – Domoticz, kamera, GPIO

Pomocna odpowiedź

(edytowany)

@Treker, chodzi o to?

pi@raspberrypi:~$  gpio -v
gpio version: 2.46
Copyright (c) 2012-2018 Gordon Henderson
This is free software with ABSOLUTELY NO WARRANTY.
For details type: gpio -warranty

Raspberry Pi Details:
  Type: Pi 3, Revision: 02, Memory: 1024MB, Maker: Sony 
  * Device tree is enabled.
  *--> Raspberry Pi 3 Model B Rev 1.2
  * This Raspberry Pi supports user-level GPIO access.


pi@raspberrypi:~$ gpio readall
 +-----+-----+---------+------+---+---Pi 3---+---+------+---------+-----+-----+
 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
 |     |     |    3.3v |      |   |  1 || 2  |   |      | 5v      |     |     |
 |   2 |   8 |   SDA.1 |   IN | 1 |  3 || 4  |   |      | 5v      |     |     |
 |   3 |   9 |   SCL.1 |   IN | 1 |  5 || 6  |   |      | 0v      |     |     |
 |   4 |   7 | GPIO. 7 |   IN | 1 |  7 || 8  | 0 | IN   | TxD     | 15  | 14  |
 |     |     |      0v |      |   |  9 || 10 | 1 | IN   | RxD     | 16  | 15  |
 |  17 |   0 | GPIO. 0 |   IN | 0 | 11 || 12 | 0 | IN   | GPIO. 1 | 1   | 18  |
 |  27 |   2 | GPIO. 2 |   IN | 0 | 13 || 14 |   |      | 0v      |     |     |
 |  22 |   3 | GPIO. 3 |   IN | 0 | 15 || 16 | 0 | IN   | GPIO. 4 | 4   | 23  |
 |     |     |    3.3v |      |   | 17 || 18 | 0 | IN   | GPIO. 5 | 5   | 24  |
 |  10 |  12 |    MOSI |   IN | 0 | 19 || 20 |   |      | 0v      |     |     |
 |   9 |  13 |    MISO |   IN | 0 | 21 || 22 | 0 | IN   | GPIO. 6 | 6   | 25  |
 |  11 |  14 |    SCLK |   IN | 0 | 23 || 24 | 1 | IN   | CE0     | 10  | 8   |
 |     |     |      0v |      |   | 25 || 26 | 1 | IN   | CE1     | 11  | 7   |
 |   0 |  30 |   SDA.0 |   IN | 1 | 27 || 28 | 1 | IN   | SCL.0   | 31  | 1   |
 |   5 |  21 | GPIO.21 |   IN | 1 | 29 || 30 |   |      | 0v      |     |     |
 |   6 |  22 | GPIO.22 |   IN | 1 | 31 || 32 | 0 | IN   | GPIO.26 | 26  | 12  |
 |  13 |  23 | GPIO.23 |   IN | 0 | 33 || 34 |   |      | 0v      |     |     |
 |  19 |  24 | GPIO.24 |   IN | 0 | 35 || 36 | 0 | IN   | GPIO.27 | 27  | 16  |
 |  26 |  25 | GPIO.25 |   IN | 0 | 37 || 38 | 0 | IN   | GPIO.28 | 28  | 20  |
 |     |     |      0v |      |   | 39 || 40 | 1 | IN   | GPIO.29 | 29  | 21  |
 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
 +-----+-----+---------+------+---+---Pi 3---+---+------+---------+-----+-----+

 

Edytowano przez grossier

Udostępnij ten post


Link to post
Share on other sites

To dobry znak, ale chodziło mi też o dalsze ćwiczenie - sprawdź czy np. z poziomu skryptów możesz wpłynąć na działanie diody itd. 

Udostępnij ten post


Link to post
Share on other sites

@grossier, a dodałeś najpierw GPIO w Domoticzu w Hardware? Chodzi o poniższe ustawienia:

Kurs_RaspberryPi_projekty_Domoticz_GPIO_3-726x387.png

Pokaż jeszcze jak wygląda u Ciebie zakładka Hardware z dodanymi GPIO i co zwraca polecenie gpio exports.

Udostępnij ten post


Link to post
Share on other sites
(edytowany)

Witam,
mam problem z dodawaniem pinów gpio do domoticz mianowicie wpisuje w konsoli 

sudo nano /etc/init.d/domoticz.sh

potem dodaje wpisy

/usr/bin/gpio export 16 out
/usr/bin/gpio export 20 out

potem odwracam piny

sudo sh -c "echo '1' >> /sys/class/gpio/gpio20/active_low"

i do tego momentu wszystko działą domoticz sie uruchamia itd ale gdy dodaje liniejke 

/usr/bin/gpio export 21 in

domoticz przestaje sie uruchamiac wyskakuje domoticz browser refresh failed

gdy usune ta liniejke z /usr/bin/gpio export 21 in wszystko wraca do normy 

to jaki to pin nie ma zadnego znaczenia probowałem z różnym co najdziewniejsze piny wyjsciowe moge dodawac do woli jak tylko dodam wejsciowy pin doomoticz sie wali.

prosze o jakas wskazówke co robie nie tak.

Edytowano przez Treker
Poprawiłem formatowanie.

Udostępnij ten post


Link to post
Share on other sites

@lukasz87, witam na forum 😉 Widzę, że to Twoje pierwsze kroki na Forbocie, oto najważniejsze informacje na start:

  • Chcesz przywitać się z innymi członkami naszej społeczności? Skorzystaj z tematu powitania użytkowników.
  • Opis najciekawszych funkcji, które ułatwiają korzystanie z forum znajdziesz w temacie instrukcja korzystania z forum - co warto wiedzieć?
  • Poszczególne posty możesz oceniać (pozytywnie i negatywnie) za pomocą reakcji - ikona serca w prawym dolnym rogu każdej wiadomości.

53 minuty temu, lukasz87 napisał:

Witam,
mam problem z dodawaniem pinów gpio do domoticz mianowicie wpisuje w konsoli [...]

Czy próbowałeś wykonywać wszystko po kolei i słowo w słowo tak, jak jest to opisane w kursie? Czyli zacząłeś od testowania wejścia na pinie 26? Co wtedy zwróciło polecenie gpio exports? Obawiam się, że to jednak jakiś błąd po Twojej stronie, do tej pory nikt inny nie zgłaszał tutaj takiego problemu. Nie mogę też zlokalizować w internecie żadnych konkretnych informacji na temat takiego błędu.

Udostępnij ten post


Link to post
Share on other sites

Dziekuje za odpowiedź tak robiłem wszystko po kolei tak jak napisane jest na forum. Dodaje pin wejsciowy w skrypcoe domoticza dopisujac 

/usr/bin/gpio export 21 in
/usr/bin/gpio edge 21 falling

jak w konsoli wpisuje gpio exports to wyswietla wszystkie piny wyjsciowe i ten pin wejsciowy 21 tez i jest napisane ze jest falling ale wtedy domoticz wywala bład 

domoticz browser refresh failed(6) domoticz offline

gdy usune informacje o pinie wejsciowy obojetniu juz czy 21 czy jakims innym który dodam z 

sudo nano /etc/init.d/domoticz.sh

to domoticz sie uruchamia normalnie oczywiście po restarcie maliny

sformatowałem pendriva wrzuciłem jeszcze raz rasbiana zainstalowalem tylko domoticza i wszystko działą jak należy ... Mimo wszystko dzieki za pomoc

Udostępnij ten post


Link to post
Share on other sites

Czyli standardowe rozwiązanie - reinstalacja - rozwiązało problem 😉 Szkoda, że nie poznaliśmy przyczyny tego błędu, ale grunt, że już jest dobrze i możesz iść dalej. Powodzenia!

Udostępnij ten post


Link to post
Share on other sites

Hej mam dwa pytanka: 

  1.  W kursie jest, że żeby np zrobić z IO17 wyjście to tam robimy /usr/bin/gpio export 17 out. Potem coś tam coś tam i restartujemy malinkę itp. Ale przecież po restarcie wszystko się zeruje.  To u mnie jest coś nie tak? Dopisałem sobie tą linię do pliku domoticza na początku i wtedy faktycznie jest ok, ale nie wynika to z kursu.
  2. Ogarnąłem sobie taki kod do obsługi DHT11:
# Domoticz server
SERVER="192.168.0.53:8181"
# DHT IDX
DHTIDX="2"
 
# DHTPIN
DHTPIN="4"
 
sleep 5
 
sudo nice -20 python /home/pi/Adafruit_Python_DHT/examples/AdafruitDHT.py 11 $DHTPIN > /var/tmp/temp.txt
#TEMP=$(cat /var/tmp/temp.txt | grep "Temp" | awk '{ print $3 }')
#TEMP=$(cat /var/tmp/temp.txt | grep "Temp")
 
TEMP=$(awk ' /Temp/ {print substr ($0,6,4)}' /var/tmp/temp.txt)
#HUM=$(awk ' /Hudmidity/ {print substr ($0,0)}' /var/tmp/temp.txt)
#HUM=$(awk ' /Humidity/ {print 1$}' /var/tmp/temp.txt)
HUM=$(awk ' /Humidity/ {print substr ($0,22,4)}' /var/tmp/temp.txt)
echo $TEMP
echo $HUM
 
# Send data
curl -s -i -H "Accept: application/json" "http://$SERVER/json.htm?type=command&c=getauth&param=udevice&idx=$DHTIDX&nvalue=0&svalue=$TEMP;$HUM;2"
 
 
TEMP=""
HUM=""

Ale gdy ustawię w domoticzu hasło to wtedy kod nie może się dostać. Jak jeszcze przekazać dane do logowania?

Udostępnij ten post


Link to post
Share on other sites
3 godziny temu, DraveS napisał:

 W kursie jest, że żeby np zrobić z IO17 wyjście to tam robimy /usr/bin/gpio export 17 out. Potem coś tam coś tam i restartujemy malinkę itp. Ale przecież po restarcie wszystko się zeruje.  To u mnie jest coś nie tak? Dopisałem sobie tą linię do pliku domoticza na początku i wtedy faktycznie jest ok, ale nie wynika to z kursu.

Czy możesz jakoś precyzyjniej określić przykład, o który pytasz? Nie mogę zlokalizować ćwiczenia, w którym korzystamy z pinu numer 17. Jeśli dobrze widzę jest tu informacja o pinach 21, 12 oraz 26. Do tego w artykule jest informacja o dodaniu odpowiednich linijek do ustawień Domoticza:

54c81-2019-01-07_22-36-19-5420.png

Nie jestem więc  wstanie połączyć Twojego pytania z kursem.

3 godziny temu, DraveS napisał:

Ale gdy ustawię w domoticzu hasło to wtedy kod nie może się dostać. Jak jeszcze przekazać dane do logowania?

Czy próbowałeś postąpić zgodnie z informacją zawartą w dokumentacji Domoticza: https://www.domoticz.com/wiki/Domoticz_API/JSON_URL's#Format W drugim akapicie dokumentacji API jest podany przykład dopisywania nazwy użytkownika i hasła:

http://<username:password@>domoticz-ip<:port>/json.htm?api-call

Czy taki sposób u Ciebie nie działa?

Udostępnij ten post


Link to post
Share on other sites

@Treker Masz rację, ja użyłem sobie 17 i jakoś kompletnie przeoczyłem informację o dodaniu tych linii do pliku. Moja wina przepraszam bardzo (teraz przynajmniej lepiej zapamiętam ;))

Drugi zadziałało bardzo dobrze. Dziękuję bardzo i w sumie przepraszam za lenistwo 😉 następnym razem zajrzę do dokumentacji. 

  • Lubię! 1

Udostępnij ten post


Link to post
Share on other sites

Mały chochlik Wam się wkradł.

"sudo apt-get install wiringPi" nie zadziała prawidłowo - błąd "Nie udało się odnaleźć pakietu". 
Właściwa nazwa pakietu to "wiringpi", zatem instalujemy "sudo apt-get install wiringpi".

Pozdrawiam

  • Lubię! 1

Udostępnij ten post


Link to post
Share on other sites

@yooshky dzięki za sygnał, sprawdzimy i poprawimy 🙂

Udostępnij ten post


Link to post
Share on other sites
(edytowany)

Witam 

dla mnie bardzo pomocny kurs, jednak nie wszystko jest proste i oczywiste.

Usiłuję aktywować piny GPIO i mi to nie wychodzi, zgodnie z podanymi w tym kursie instrukcjami dokonałem wpisów w pliku domoticz.sh, potem chciałem aktywować przełącznik w domoticzu wybierając GPIO i w oknie gdzie powinien pojawić się port który podaliśmy w domoticz.sh pojawia mi się napis GPIO INIT ERROR i nic z tego, przełącznika nie da się utworzyć.

zgodnie z instrukcją w kursie usiłowałem zainstalować wiringPi i też mi wypisuje że nie może znaleźć na E: i instalacja się przerywa

jak wpiszę instrukcję gpio readall to też nie otrzymuję listy portów GPIO

można prosić o jakąś podpowiedź co robię nie tkak albo co zrobić żeby to ruszyło i dało się aktywować zarówno porty GPIO jak i przełączniki w domoticzu.

Jak na razie udało mi się zainstalować i uruchomić w domoticzu pomiary temperatur na DS 18B20 i działa

 

edit: jedno doczytałem że macie błąd w instrukcji instalacji wiringpi - piszecie wiringPi i przez to się nie instaluje  (duża litera) - ale mimo to nie poszło bo mi wypisało że:

sudo apt-get install wiringpi
Reading package lists... Done
Building dependency tree
Reading state information... Done
wiringpi is already the newest version (2.50).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

więc niby jest, a po wpisaniu :

gpio readall
Oops - unable to determine board type... model: 17

mam cos takiego, więc nie dostaję listy portów GPIO która powinna się pojawić po tej komendzie

 

Edytowano przez zibi01

Udostępnij ten post


Link to post
Share on other sites
(edytowany)
9 godzin temu, zibi01 napisał:

gpio readall
Oops - unable to determine board type... model: 17

@zibi01 Błąd ten wynika z nieaktualnej wersji (2.50 jak napisałeś). Dla RPi 4 B jest to 2.52. Akurat nie masz się tu czym przejmować, bo nie jest ona umieszcozna domyslnie w repo i trzeba ją sobie pobrać samemu, W tycelu wykonujesz 3 polecenia i będzie działać 🙂 

cd /tmp
wget https://project-downloads.drogon.net/wiringpi-latest.deb
sudo dpkg -i wiringpi-latest.deb

Więcej na stronie WiringPi.

Edytowano przez Gieneq
  • Lubię! 1
  • Pomogłeś! 1

Udostępnij ten post


Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Gość
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.


×
×
  • Utwórz nowe...