Temat: 1-wire (Carambola 2)

Komuś udało się na najnowszym OpenWRT uruchomić 1-wire i odczyt temperatury (DS18B20)?

Wykonałem wszystko z http://eko.one.pl/?p=openwrt-gpio2#magistarala1wire (w dwóch opcjach: wszystko wbudowane w obraz + plik startujący 59-gpio-custom z ustawionym gpio, oraz doinstalowywanie modułów jądra z w1 w przypadku gdy obraz ich nie zawierał). Za każdym razem brak odczytów (nie tworzą się pliki w /sys/bus/w1/drivers/w1_slave_driver/). Może muszę jakieś zaklęcie jeszcze wypowiedzieć? wink

Same DS18B20 podpinałem na kilka sposobów (płytka prototypowa, więc kabelki max 20cm):
* tak jak u Cezarego
* zasilanie do +5V, pullup do 3,3V (zgodnie ze informacją od producenta na DQ nie pojawi się napięcie wyższe niż zadane przez pullup-a)
Kombinowałem z różnymi rezystorami: 4,7k (mam taką instalację ok 30m na 3,3V i działa), 3,3k i 2k - w każdym przypadku identycznie.

Aha, wszystko robię na GPIO12 ma to jakąś różnicę? (jeśli ręcznie zmieniam stany i odczytuję to openwrt widzi poprawne wartości, podobnie w drugą stronę, ustawiając jako out mam na pinie zadane wartości).

o czym zapomniałem?

2

Odp: 1-wire (Carambola 2)

Spróbuj dać 10k rezystor, przy krótkich kablach wystarczy. U mnie w trybie aktywnym działa tak z wr740n pod gpio z 1.5m przewodem do ds-a i generuje b. niewielki odsetek błędnych odczytów. W ar9331 gpio mają ok. 2.6V w stanie wysokim i widocznie za słabą wydajność prądową na silne pullupy. Upewnij się jeszcze, że moduł w1-gpio-custom jest ładowany PRZED w1-master i w1-slave.

3

Odp: 1-wire (Carambola 2)

Spróbuj podłączyć istniejącą konfigurację pod arduino, pozwoli to wyeliminować instalację i pullupy.

https://tplinkforum.pl - Polskie forum poświęcone tematyce urządzeń firmy TP-Link i Neffos

4

Odp: 1-wire (Carambola 2)

a jakieś porady jak w obrazie który ma wkompilowane odpowiednie moduły jądra sprawić by ładowały się w odpowiedniej kolejności?

5

Odp: 1-wire (Carambola 2)

w1-gpio-custom przecież sam zrobiłeś że ma się ładować.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

6

Odp: 1-wire (Carambola 2)

"Upewnij się jeszcze, że moduł w1-gpio-custom jest ładowany PRZED w1-master i w1-slave."
tylko jak mieć pewność, że kolejność jest dobra? (nie pamiętam już czy w /etc/modules.d/ jest odpalanie w1-master i w1-slave i czy one na pewno odpalane są po w1-gpio-custom)

7 (edytowany przez unreal 2014-11-27 17:50:31)

Odp: 1-wire (Carambola 2)

No, zajrzyj do /etc/modules.d właśnie i zobacz numerki przed nazwami modułów. Ja mam w kolejności od najmniejszego: w1, w1-gpio-custom, w1-master-gpio, w1-slave-therm. Zakładając jeszcze, że masz: w1-gpio-custom bus0=0,12,0
wpisane do w1-gpio-custom

8

Odp: 1-wire (Carambola 2)

Zrobiłem pullupa przez 4,7k x 2 (3,3V), dodałem jeszcze potencjometr i ustawiłem go tak by minimalnie przy odczycie z gpio dawał 1 (~1.4V). Przestawiłem pin na wyjście ustawiłem 0 i miernik dalej pokazuje 1.4V. Odpinam pullupa i jest 0.

Zmieniłem pin na inny (GPIO18 - tam mam i2c które wyłączyłem) i działa...

Życie to dobre i złe decyzje, GPIO12 byłą złą wink dzięki za pomoc

9

Odp: 1-wire (Carambola 2)

krzysiekj napisał/a:

Życie to dobre i złe decyzje, GPIO12 byłą złą wink dzięki za pomoc

GPIO12 w C2 ma już rezystor pull-down (pewnie 10k, nie pamiętam) i jest on tam niezbędny do prawidłowego uruchomienia, choć nie wiem czy dotyczy to też C2 (GPIO12 odpowiada za ustawienie typu pamięci, ale 8devices w swojej wersji U-Boot w C2 chyba to olali i na sztywno ustawiają zawsze DDR2).

Wystarczyło zajrzeć tutaj: http://www.8devices.com/media/files/Carambola2.pdf

10

Odp: 1-wire (Carambola 2)

Ha! w totka też wystarczy dobre numery skreślić wink ale co racja to racja, jest jak wół pull-down.