Ticket #660 (assigned)

Opened 9 years ago

Last modified 6 years ago

Merjenje temperature z dostopno točko (digitemp)

Reported by: Musti Owned by: Musti
Priority: major Milestone: Next milestone
Component: firmware Version:
Keywords: Cc:
Related nodes: Realization state:
Blocking: 661, 823 Effort: normal
Blocked by: 132, 733, 761, 872 Security sensitive: no

Description (last modified by mitar) (diff)

Serijski port na dostopnih točkah omogoča priključitev 1-wire senzorjev. Za nas je najbolj zanimiv DS18B20 - temperaturni senzor.

Priključitvena shema in ravnanje s digitemp skripto: http://www.lecad.fs.uni-lj.si/~leon/other/wlan/wrt54ow/

Digitemp skripta za kamikaze/backfire za Linksys wrt54* je v priponki. Samo skopira se na dostopno točko.

Uporabno bi bilo dodati digitemp v image in omogočiti prikaz temperature na nodewatcherju.

Attachments

digitemp_DS9097_mod (69.5 KB) - added by Musti 9 years ago.
digitemp_3.6.0-3_brcm-2.4(2).ipk (29.2 KB) - added by Musti 9 years ago.
digitemp serial paketek
1wireLineDriver-pcb-V1.png (36.7 KB) - added by Musti 8 years ago.
1wireLineDriver-sch-V1.png (22.5 KB) - added by Musti 8 years ago.
SMDvariant.sch (79.8 KB) - added by matak 7 years ago.
SMD varjanta za TP-LINK
SMDvariantSCH.png (9.1 KB) - added by matak 7 years ago.
SMDvariantBRD.png (2.1 KB) - added by matak 7 years ago.
SMDvariant.brd (6.7 KB) - added by matak 7 years ago.
SMD varjanta za TP-LINK
IMAG0092.jpg (795.0 KB) - added by kablek 7 years ago.
Finished SMD variant

Change History

Changed 9 years ago by Musti

comment:1 Changed 9 years ago by kostko

  • Keywords digitemp, temperatura removed
  • Component changed from točke to firmware
  • Milestone set to 3.0b

comment:2 Changed 9 years ago by mitar

Kakšna skripta te to je? To je binary. Prosim, če lahko poveš kje se lahko dobi izvorna koda ali še boljše že narejen OpenWrt paket.

Ne bomo mi kopirali nobenih binaryev kar tako v firmware. Mi imamo celoten sistem za buildanje narejen in vse stvari gredo kot paketi noter. Ker potem imaš takoj podporo tudi na drugih platformah za to.

comment:3 Changed 9 years ago by mitar

  • Blocking set to 661

Changed 9 years ago by Musti

digitemp serial paketek

comment:4 Changed 9 years ago by Musti

Se opravičujem, binary je. V priponki je narejen openwrt paketek. Potrebno je samo popraviti verzijo firmwara v paketku, tako da ga bo mogoče instalirati.

comment:5 Changed 9 years ago by mitar

Daj no, kako ti bereš stvari. Binary paketek nam prav nič ne koristi. Pri odprtokodnih programih je popolnoma nesmiselno uporabljati te, ker je potem to zelo težko vzdrževati. Kaj ko bomo šli na novo verzijo operacijskega sistema, na novo verzijo kakšne knjižnice, ki jo paketek uporablja, kaj če se odkrije kakšna napaka in bomo želeli dodati kakšen svoj patch? Predvsem pa, ta paketek ti ne bo delal na Foneri.

Tako da prosim, povej kje se lahko dobi izvorna koda (ni ti je potrebno pripenjati) oziroma še bolje, kje se dobi OpenWrt paket zanjo. (Aha, vidim, da se je dalo mogoče to, kar sem napisal prej narobe razumeti. Torej ne binary OpenWrt paket, ampak (meta)koda (Makefile z morebitnimi dodatnimi datotekami in patchi) OpenWrt paketa, ki potem zgenerira binary paket (iz izvorne kode programa). To mislim z OpenWrt paket, ne že narejenega paketa.)

comment:6 Changed 9 years ago by Musti

Narobe sva se razumela...

Makefile sem našel presenetljivo tukaj: http://wlan-lj.net/svn/branches/openwrt/packages/utils/digitemp/Makefile

comment:7 Changed 9 years ago by mitar

  • Status changed from new to assigned
  • Owner changed from Musti to kostko
  • Milestone changed from 3.0b to 2.0b

Preberi si TracLinks kako se dela povezava na kodo v našem repozitoriju.

Torej to pomeni, da mora Kostko le vklopiti ta paket in bo na voljo za vse sisteme. To ne izgleda pretirano.

Ti pa, če želiš, da sporoča to nodewatcherju, naredi patch za njegovo skripto. Poglej kako je recimo narejeno za solar paket. Verjetno ti za ta senzor ni potrebno delati cachea, ampak naj kar prebere in vrne vrednost.

comment:8 Changed 9 years ago by Musti

Bom poizkusil, nisem pa prepričan v uspeh.

comment:9 Changed 9 years ago by kostko

Z revizijama [1218] in [1219] dodan paket digitemp. Ko se paketi za vse platforme prevedejo, ga bom dodal med opcijske pakete.

Dodati to v nodewatcher pa ne bi smelo biti pretirano težavno. Poglej obstoječe primere in v kolikor kaj ni jasno vprašaj.

comment:10 Changed 9 years ago by Musti

Bom preizkusil paket digitemp.

Bom pogledal obstoječe primere, pa da vidimo če kaj skup spravim. Drugače se bom raje lotil hardware vmesnika za fonero za 1-wire naprave in posledično digitemp.

comment:11 Changed 9 years ago by kostko

  • Owner changed from kostko to Musti

Paket dodan med opcijske z revizijo [1223]. Sedaj se lahko paket izbere pri konfiguraciji točke.

comment:12 Changed 9 years ago by Musti

  • Blocked by set to 676

comment:13 Changed 9 years ago by mitar

  • Blocked by 676 deleted

comment:14 Changed 9 years ago by mitar

  • Blocked by set to 132

comment:15 Changed 9 years ago by Musti

Paket deluje. Napisana navodila za uporabo paketa Podrobnosti/MerjenjeTemperature?.

Nekaj popravkov, dodatkov v paket bi bilo dobrodošlih, potrebni so za avtomatsko merjenje temperature in povezavo v nodewatcher.

  • digitemp se inicializira ob prvem bootu oz. installu. Nemogoče je to doseži že v image generatorju, saj se .digitemprc (config) ustvari šele, ko digitemp prebere ID posameznih senzorjev.
  • digitemp ob bootu prične logirati podatke v datoteko

Kako lahko to izvedem sedaj z vnosom v init.d ? Sem poizkusil pa ni uspelo.

comment:16 Changed 9 years ago by mitar

Torej jaz bi to naredil drugače, kot deluje digitemp po privzetem. Torej napiši skripto, ki zgenerira ustrezno config datoteko. To lahko potem nastavimo, da se ob vsakem zagonu ustvari. Ta datoteka se avtomatsko naredi?

Potem naredi drugo skripto, ki opravi natančno eno meritev in to izpiše na zaslon. To bomo uporabili potem za nodewatcher.

comment:17 Changed 9 years ago by mitar

  • Milestone changed from 2.0b to 3.0b

comment:18 Changed 9 years ago by mitar

  • Description modified (diff)

comment:19 Changed 9 years ago by Musti

  • Blocking changed from 661 to 661, 733

comment:20 Changed 9 years ago by Musti

  • Blocking changed from 661, 733 to 661
  • Blocked by changed from 132 to 132, 733

comment:21 Changed 9 years ago by Musti

Na WRT54GL se sistemska konzola na portu tts/0 izklopi tako, da zakomentiraš:

#tts/0::askfirst:/bin/ash –login
#ttyS0::askfirst:/bin/ash –login

v /etc/inittab

comment:22 Changed 9 years ago by Musti

+ reboot routerja

comment:23 Changed 9 years ago by Musti

  • Owner changed from Musti to mitar

Hardware za merjenje temperature na WRT54GL je pripravljen, sedaj se lahko nadaljuje programiranje.

comment:24 Changed 9 years ago by mitar

  • Owner changed from mitar to kostko

S [1411] dodal v nodewatcher skripto sporočanje temperature.

Sedaj je potrebno dodati risanje grafov iz tega.

Pred 3.0b to ne more biti uradno podprto, saj je potrebno za polno uporabo dati na voljo onemogočanje konzole na serijskem portu (tako da se lahko priklopi senzor) kot tudi popraviti sploh program, da dela na vseh routerjih. Trenutno recimo ne dela na Foneri. Ampak sporočanje in risanje grafov pa bi lahko bilo že sedaj.

comment:25 Changed 9 years ago by mitar

  • Status changed from assigned to needs_rebuild

comment:26 Changed 9 years ago by Musti

Torej bo opcijski paket to v image generatorju? Označen eksperimental?

Fonere se bom loto zdaj, vendar ne vem če je mogoče to brez OWFS.

comment:27 Changed 9 years ago by mitar

Saj paket je že sedaj? nodewatcher skripta pa je itak povsod. Edino stvari ne bodo delale, če si priključil na serijski port, ki je že v uporabi zaradi konzole. To moraš sam popraviti/izključiti.

Glede Fonere ti naj zgenerara Kostko kakšen testni firmare, ki nima konzole v kernel ukazu.

comment:28 Changed 9 years ago by Musti

  • Blocked by changed from 132, 733 to 132, 733, 761

comment:29 Changed 9 years ago by kostko

  • Status changed from needs_rebuild to reopened

Paketi in image builderji posodobljeni. Monitoring del je potrebno še narediti.

comment:30 Changed 9 years ago by mitar

Za firmware je odprt #761.

comment:31 Changed 9 years ago by kostko

  • Owner changed from kostko to Musti
  • Status changed from reopened to assigned

Monitoring del implementiran z revizijo [1415].

comment:32 Changed 9 years ago by Musti

  • Blocking changed from 661 to 661, 823

comment:33 Changed 8 years ago by Musti

  • Effort set to normal

digitemp_DS9097 deluje pravilno s senzorji DS18B20, DS1820

  • za senzor tipa DS18S20 se izpiše temperatura 85 C

85C je temperatura, ki se izpiše ob napakah.
http://www.filewatcher.com/p/digitemp_3.5.0ds1-1_powerpc.deb.132970/usr/share/doc/digitemp/README.gz.html

  • za senzor tipa DS1822 se izpiše temperatura 85 C, ob priklopu se router reboota zaradi preveliki momentarne porabe.
  • read time za posamezen senzor mora biti daljši od 750ms
  • napaka CRC Failed se zgodi, če senzor beremo prepogosto, torej večkrat v manj kot 750ms

digitemp je zastarel. Potrebno bo narediti prehod na OWFS protokol za branje 1-wire naprav. Le tako je namreč mogoče uporabiti še druge 1-wire senzorje na routerjih.

Changed 8 years ago by Musti

Changed 8 years ago by Musti

comment:34 Changed 8 years ago by Musti

bolj primerno je uporabiti owcapi

skonstruirano vezje za 1-wire line driver, kar omogoča priklop vseh 1-wire naprav na routerje preko serijskega porta, tudi na 3.3V

Potrebno je napajanje 5V zato je dodan regulator iz vhodne napetosti na 5V. Bolj učinkovita rešitev je uporaba step up pretvornika iz 3.3V na 5V. V delu.

comment:35 Changed 8 years ago by Musti

  • Blocked by changed from 132, 733, 761 to 132, 733, 761, 872

comment:36 Changed 8 years ago by Musti

Digitemp digitemp_DS9097 se uporablja z modifikacijo, ki ne vsebuje DS2450 1-wire master čipa/line driverja.
Digitemp digitemp_DS9097U se uporablja z modifikacijo, ki ima DS2450 1-wire master čip.

Potrebujemo dve različni verziji nodewatcher paketa.

Changed 7 years ago by matak

SMD varjanta za TP-LINK

Changed 7 years ago by matak

Changed 7 years ago by matak

Changed 7 years ago by matak

SMD varjanta za TP-LINK

Changed 7 years ago by kablek

Finished SMD variant

comment:37 Changed 6 years ago by kostko

  • Milestone changed from 3.0b to Next milestone
Note: See TracTickets for help on using tickets.