Talologger Muuttujat & Ohjelmointi

  • Viestiketjun aloittaja Viestiketjun aloittaja Ismo67
  • Aloituspäivämäärä Aloituspäivämäärä
Vs: Talologger Muuttujat & Ohjelmointi

Unelmavävy sanoi:
No nyt on ainakin oikeudet kunnossa. Saatko pukattua sinne sarjapiuhaan dataa lähdepäästä? Kokeile lukua ensin komentoriviltä ja sitten kun se toimii niin pitäis toimia taloLoggerikin.

arduino työntää koko ajan dataa ja em. python scriptillä sitä pystyy lukemaan mutta komentoriviltä ei, se tässä nyt mystistä onkin

sama talologgerissakin
Koodi:
31.10.2014 14:30:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /dev/ttyS0
  Command output: /bin/cat: /dev/ttyS0: Permission denied

resetoin kohta koneen, ehkä se auttaa
 
Vs: Talologger Muuttujat & Ohjelmointi

jolla sanoi:
arduino työntää koko ajan dataa ja em. python scriptillä sitä pystyy lukemaan mutta komentoriviltä ei, se tässä nyt mystistä onkin

sama talologgerissakin
Koodi:
31.10.2014 14:30:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /dev/ttyS0
  Command output: /bin/cat: /dev/ttyS0: Permission denied

resetoin kohta koneen, ehkä se auttaa

Mites ne sarjaportin asetukset on? stty < /dev/ttyS0
 
Vs: Talologger Muuttujat & Ohjelmointi

Unelmavävy sanoi:
Mites ne sarjaportin asetukset on? stty < /dev/ttyS0

root@radxa:~# stty < /dev/ttyS0
speed 9600 baud; line = 0;
min = 0; time = 0;
-brkint -icrnl -imaxbel
-opost
-isig -icanon -iexten -echo -echoe -echok -echoctl -echoke
 
Vs: Talologger Muuttujat & Ohjelmointi

Miten olis tälläinen ratkaisu?

Koodi:
# Location of the shell script or executable
SHELL1:LOCATION = /usr/bin/sudo
# Script or executable parameters
SHELL1:PARAMETERS = /bin/cat /dev/ttyS0
# Result value regexp.
SHELL1:REGEXP = ^\s*(?P<rossi_humi>[0-9\.\-]+)\s*,\s*(?P<rossi_temp>[0-9\.\-]+)\s*$
 
Vs: Talologger Muuttujat & Ohjelmointi

laitan radxa pron tuohon mittaamaan perus radxan tilalle, samalla olisi kiva laittaa 'oikein' nuo tiedosto-oikeudet
kun laitan talo hakemistoon tiedoston, mitä laitan chmod (tähän), jotta voin samban/verkon kautta editoida sitä vai onko tuo aiemmin käyttämäni chmod -R 777 hyvä
 
Vs: Talologger Muuttujat & Ohjelmointi

jussip sanoi:
Miten olis tälläinen ratkaisu?

Koodi:
# Location of the shell script or executable
SHELL1:LOCATION = /usr/bin/sudo
# Script or executable parameters
SHELL1:PARAMETERS = /bin/cat /dev/ttyS0
# Result value regexp.
SHELL1:REGEXP = ^\s*(?P<rossi_humi>[0-9\.\-]+)\s*,\s*(?P<rossi_temp>[0-9\.\-]+)\s*$

ei tärpännyt
31.10.2014 21:58:13: ERROR: Error initializing module SHELL1: ShellSource: Unable to find or execute Shell executable: /usr/bin/sudo

oiskohan näissä radxan img ssa joku, muuten kyllä pelittävät
 
Vs: Talologger Muuttujat & Ohjelmointi

sudo on eri hakemistossa

Tällä näet oikean polun
Koodi:
which sudo

Tämä on raspista
Koodi:
/usr/bin/sudo
 
Vs: Talologger Muuttujat & Ohjelmointi

jussip sanoi:
sudo on eri hakemistossa

Tällä näet oikean polun
Koodi:
which sudo

Tämä on raspista
Koodi:
/usr/bin/sudo

Koodi:
root@radxa:/home/talo/log# which sudo
root@radxa:/home/talo/log#

ei tässä ole sudoa, ei tarvitse koskaan

kyllä tää varmaan jotenkin kotikutoinen ongelma on, koska olen olen kokeillut kaikki palstoilta löytämäni olammin antamat resptit

tulee nyt mieleen, voiko tuossa kohdin ylipäätään lukea sarjaporttia suoraan 'SHELL1:PARAMETERS = /bin/cat /dev/ttyS0'
se tuon cat in hyväksyy mutta enempi tuon portin oikeuksia perää

tuossahan olisi yhden uuden modulin paikka, ihan pelkkä serial.py
 
Vs: Talologger Muuttujat & Ohjelmointi

ei onnistu, antaa olla
tässä kuitenkin, jos jollain samainen herja, niin tietää mistä tulee

nähdäkseni nuo oikeudet pitäisi olla kunnossa
Koodi:
root@radxa:/home/talo# ls -l /dev/ttyUSB0
crw-rw---T 1 root dialout 188, 0 Nov  1 12:45 /dev/ttyUSB0

talo@radxa:~$ id
uid=1001(talo) gid=1001(talo) groups=1001(talo),10(uucp),20(dialout),44(video)
Koodi:
File "/usr/lib/python2.7/dist-packages/serial/serialutil.py", line 260, in __init__
    self.open()
  File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 276, in open
    raise SerialException("could not open port %s: %s" % (self._port, msg))
serial.serialutil.SerialException: could not open port /dev/ttyUSB0: [Errno 13] Permission denied: '/dev/ttyUSB0'

ihmettelan, kun owfs toimii noissa samoissa ilman herjoja, mut tää on tätä
 
Vs: Talologger Muuttujat & Ohjelmointi

Ööö, tuossa viimeisessä on /dev/ttyUSB0 ja aiemmin oli /dev/ttyS0 ???
 
Vs: Talologger Muuttujat & Ohjelmointi

Unelmavävy sanoi:
Ööö, tuossa viimeisessä on /dev/ttyUSB0 ja aiemmin oli /dev/ttyS0 ???

minulla on 2 rockia, toinen mittaa ja toisella testailen, molemmista arduino työntää dataa ulos

mutta ihme
kun laittaa taloLoggerin SHELL iin '/bin/cat' siihen ensimmäiseen, elikkä lukee tiedostosta, ei komentorivillä 'cat' käsky enää toimi
se toimii buutin jälkeen niin pitkään kunnes taloLogger tekee ensimmäisen mittauksen, sitten ei enää, ei se edes herjaa mitään

kyllä se käsky, mutta 'cat /dev/ttyS0' ei enää toimi

tämän pystyy muuttamaan mutta ei toiminut silti ja kun käynnistää uudelleen palaa nämä arvot talkaisin
Koodi:
root@radxa:/home/talo# ls -l /dev/ttyS0
crw-rw---T 1 root dialout 4, 64 Nov  2 16:42 /dev/ttyS0

kaikki saa toimimaan komentorivillä mutta automatic ei sitten millään
 
Vs: Talologger Muuttujat & Ohjelmointi

muutama peruskysymys, voiskohan joku valaista lyhyesti
Koodi:
root@radxa:/# users
root root

pitääkö olla muita käyttäjiä, vai onko näin hyvä
miksi listauksessa ei ole 'talo' ?
vaikka
Koodi:
root@radxa:/home/talo# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
messagebus:x:101:103::/var/run/dbus:/bin/false
sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin
rock:x:1000:1000:Rock Radxa,612,(86) 0755-2394-8936,,Shenzhen:/home/rock:/bin/bash
talo:x:1001:1001::/home/talo:/bin/sh
ntp:x:103:110::/home/ntp:/bin/false
täällä[code]
root@radxa:/home/talo# ls -dgils /dev/ttyS0
1832 0 crw-rw---T 1 dialout 4, 64 Nov  2 16:42 /dev/ttyS0
dialoutilla oikeudet ja
täällä
Koodi:
root@radxa:/home/talo# cat /etc/group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
uucp:x:10:talo
man:x:12:
proxy:x:13:
kmem:x:15:
dialout:x:20:talo
fax:x:21:
voice:x:22:
cdrom:x:24:
floppy:x:25:
tape:x:26:
sudo:x:27:rock
audio:x:29:
dip:x:30:
www-data:x:33:
backup:x:34:
operator:x:37:
list:x:38:
irc:x:39:
src:x:40:
gnats:x:41:
shadow:x:42:
utmp:x:43:
video:x:44:talo
sasl:x:45:
plugdev:x:46:
staff:x:50:
games:x:60:
users:x:100:
nogroup:x:65534:
libuuid:x:101:
crontab:x:102:
messagebus:x:103:
netdev:x:104:
ssh:x:105:
rock:x:1000:
i2c:x:106:
ssl-cert:x:107:
fuse:x:108:
talo:x:1001:
sambashare:x:109:
ntp:x:110:
talolla dialoutille oikeudet

voiskohan näistä päätellä missä lisäksi vika(muualla kun minun korvien välissä) kun tämä herja vaan toistuu
31.10.2014 14:30:01: SHELL1: ERROR: Error executing Shell data source command
Command: /bin/cat /dev/ttyS0
Command output: /bin/cat: /dev/ttyS0: Permission denied

eikä crontabin ohjaamana '/dev/ttyS0' sisältämät scripti onnistu

riviltä nuo kaikki menee

TaloLogger on kyllä ihme ohjelma, se vaan loggaa vaikka kaikki muu olisi ihan sekaisin, ainoastaa buutin osalta jää mittaus väliin
 
Vs: Talologger Muuttujat & Ohjelmointi

jussip sanoi:
Olisi pitäny lukea myös aiemmat viestit :)
Mitä ja mistä dataa sarjaporttiin tulee?
pitäisi tutkia nämä koneetkin, mutta kun ei linuxista juuri muuta kun raspi kokemukset, täältä nimittäin löytyi sellainen käyttäjä kuin rock, ja olen koko ajan käyttänyt, asentanut kaikki jne root' ina
onkohan siitä nyt mitään haittaa? helppoa kun ei tarvitse sudoilla
eikö kaikki pitäisi toimia roott'ina, vai olenko ymmärtänyt väärin

@jussip
kyllä sieltä sudo löytyi, se ei vaan roott'ina näy
nyt toimii ylimääräisen .py tiedoston kautta >.txt ja siitä SHELL' lillä, mutta herja tulee yhä
se saattaa häipyä kun buuttaan rockin

pitää joskus tutkia tuota suoraan sarjaportista lukua paremmalla ajalla
 
Vs: Talologger Muuttujat & Ohjelmointi

jolla sanoi:
pitäisi tutkia nämä koneetkin, mutta kun ei linuxista juuri muuta kun raspi kokemukset, täältä nimittäin löytyi sellainen käyttäjä kuin rock, ja olen koko ajan käyttänyt, asentanut kaikki jne root' ina
onkohan siitä nyt mitään haittaa? helppoa kun ei tarvitse sudoilla
eikö kaikki pitäisi toimia roott'ina, vai olenko ymmärtänyt väärin
Oikein ymmärretty, "roottina", kaikki onnistuu. Ei ole rajoituksia, "roottina" olet systeemin "ylipäällikkö" täysin oikeuksin ;D

users ja who näyttää ketä on kirjautuneena sisään järjestelmään, ei kaikkia käyttäjiä. Itselläkin näkyy rockissa root kahteen kertaan, enkä tiedä miksi.

cat /etc/passwd näyttää kaikki käyttäjät. On hieman outoa ettei root (tai muuta) näy listalla. (jos pastesit kaiken viestiin)

Mulla on rockissa ubuntu server 13.04, tässä listaukset samoista komennoista. (kirjauduin sisään ssh:n kautta käyttäjänä "rock")

Koodi:
rock@radxa:~$ users
rock root root
rock@radxa:~$
Koodi:
rock@radxa:~$ who
root     ttyFIQ0      2014-10-31 16:34
root     tty1         2014-10-31 16:34
rock     pts/0        2014-11-02 21:34 (192.168.1.3)
rock@radxa:~$
Koodi:
rock@radxa:~$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
syslog:x:101:103::/home/syslog:/bin/false
rock:x:1001:1002:Rock Radxa,,,:/home/rock:/bin/bash
sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin
statd:x:103:65534::/var/lib/nfs:/bin/false
ntp:x:104:106::/home/ntp:/bin/false
messagebus:x:105:108::/var/run/dbus:/bin/false
usbmux:x:106:46:usbmux daemon,,,:/home/usbmux:/bin/false
mysql:x:107:110:MySQL Server,,,:/nonexistent:/bin/false
debian-deluged:x:108:111::/var/lib/deluged:/bin/false
deluge:x:109:112::/var/lib/deluge:/bin/false
colord:x:110:114:colord colour management daemon,,,:/var/lib/colord:/bin/false
rock@radxa:~$
Koodi:
rock@radxa:~$ cat /etc/group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:rock
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
uucp:x:10:
man:x:12:
proxy:x:13:
kmem:x:15:
dialout:x:20:rock
fax:x:21:
voice:x:22:
cdrom:x:24:rock
floppy:x:25:
tape:x:26:
sudo:x:27:
audio:x:29:rock
dip:x:30:rock
www-data:x:33:
backup:x:34:
operator:x:37:
list:x:38:
irc:x:39:
src:x:40:
gnats:x:41:
shadow:x:42:
utmp:x:43:
video:x:44:rock
sasl:x:45:
plugdev:x:46:rock
staff:x:50:
games:x:60:
users:x:100:
nogroup:x:65534:
libuuid:x:101:
crontab:x:102:
syslog:x:103:
admin:x:1001:rock
rock:x:1002:
ssh:x:104:
netdev:x:105:
ntp:x:106:
fuse:x:107:
messagebus:x:108:
utempter:x:109:
mysql:x:110:
debian-deluged:x:111:
deluge:x:112:rock
scanner:x:113:
colord:x:114:
rock@radxa:~$


Olisko paikallaan uudelleen asennus? ???
 
Vs: Talologger Muuttujat & Ohjelmointi

Taitaa olla niin että talologger ottaa sen sarjaportti-devicen itselleen.. permission denied tulee sitten muille. Se on vähän niinkuin tapana niiden kanssa.

Niitä ohjemia ei kannata varsinaisesti etsiä 'which' -komennolla, se palauttaa nimensä mukaisesti POLULTA ensimmäiseksi löytyneen vaihtoehdon ja sillä onkin tarkoitus katsoa että mitäs ohjelmaa tässä oikeastaan ajellaan.. välillä niitä on samannimisiä vaivaksi asti, kun koneessa on eri versiota vaikka perlistä tai pythonista..

Etsimiseen on kutakuinkin aina tarjolla konento 'find'.. ja jos antaa koneen indeksoida etukäteen niin sitten vaikka 'locate' on nopeampi vaihtoehto.
 
Vs: Talologger Muuttujat & Ohjelmointi

@jussip
kyllä se tuolla sinun
dialout:x:20:rock
ja minulla
dialout:x:20:talo
saattaa olla tuo serial herjan syy koska raspissa on
dialout:x:20:pi, talo
no käyttöoikeuksissa kuitenkin, jatarkemmin minun taidoissa käyttää niitä oikein, löytyi 'rock' käyttäjäkin

@kotte valaisi aiemmin raspiketjussa käyttöoikeuksia koskien crontab' ia ja oikeassa oli, pitää tietää mitä tekee
python scripti (se, mikä sisälsi sarjaportin käyttöä) lähti toimimaan, kun laitoin sen kirjautuneena 'talo'
muut scriptit toimivat, vaikka root' ina asetettu

kiitän kaikkia teitä vinkeistä, ne olivat enemmän kuin tervetulleita,

nyt on rocki pro mittaamassa ihan neitseellisillä juuri asennetuilla softilla, ilman herjoja

satunnaisesti antaa kylläkin seuraavan, mutta mittaa silti, ei vaikutusta
Koodi:
03.11.2014 13:30:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 89.60,7.90
tuo voi johtua kyllä jostain ajoituksista, en tiedä

edit
huomasin, että luettavassa tekstitiedostossa on data ja sitten rivinvaihto. voisikohan tuo olla syy kun siinä on 2 riviä vaikka toisella rivillä ei ole mitään
avaan tiedoston "wb", mutta sekään ei auta. millähän tuon toisen rivin saa pois
sain sen tyhjän pois, aika näyttää onko apua
sekin vielä epäselvä, voiko taloLoggerin SHELL modulilla ylipäätään lukea suoraan portista seuraavasti, onko kokemusta?
/bin/cat /dev/ttyS0
 
Vs: Talologger Muuttujat & Ohjelmointi

Tulostaako jotain konsoliin syötettynä?
Koodi:
/bin/cat  /dev/ttyS0
Jos tulostaa, voi lukea talologgerilla.

Mulla on esim. rivi:
Koodi:
/usr/bin/curl "http://192.168.1.11/meteohtml.cgi?file=talologgerdata"
Tulostaa välilyönnillä erotettuja lukuja.

Toinen rivi:
Koodi:
/bin/cat /home/pi/GPIO.txt
Tulostaa välilyönnillä erotettuja nollia ja ykkösiä.


Sarjaportista ei ole paljoa kokemusta, mutta voisiko olla että se on varattuna toiselle käyttäjälle? Sen takia luku ei onnistu.? (edes roottina.)
En ole utelias mutta kysyn uudelleen ::) Mitä sulla on kiinni siinä sarjaportissa?
 
Vs: Talologger Muuttujat & Ohjelmointi

Ketjun luettuani tässä on nyt epäselvää se, että kun annat komennon cat /dev/ttyS0, niin loppuuko komento "itsekseen". Eli tuleeko sarjaportilta datan jälkeen EOF-merkki, joka lopettaisi cat-komennon? Jos ei, niin logger jää odottelemaan maailman tappiin, että se stream loppuisi. Toinen cat-komento ei välttämättä saa enää nyt avattua sarjaporttia, jos se jää varatuksi tälle ensimmäiselle odottelijalle.

Jos cat ei palaa itsekseen komentoriviltä kehotteeseen ilman esim. CTRL-C:tä, niin tuohon väliin pitäisi tehdä jonkinlainen lisäprosessi tai loggeriin moduuli, joka käsittelee jostain saamaansa dataa rivi kerrallaan. Shell-moduuli toimii siten, että se ajaa komennon ja ottaa sen koko tuloksen käsittelyyn. Intervallin jälkeen ajaa toisen vastaavan komennon ja käsittelee taas koko saamansa vasteen.

Miksi tuo sitten välillä toimii? Loggeri ei odottele streamin loppua maailman tappiin vaan siinä on sisäänrakennettu kovakoodattu 120 sekunnin timeout kaikille yksittäisille datasourceille. Eli yhden datan hakeminen ei koskaan voi kestää 120 sekuntia kauempaa tai haku katsotaan epäonnistuneeksi. Nyt luultavasti tapauksessasi tuo 120 sekunnin timeout realisoituu, siitä tulee virheilmoitus ja siihen mennessä saatu data käsitellään.
 
Vs: Talologger Muuttujat & Ohjelmointi

olammi sanoi:
Ketjun luettuani tässä on nyt epäselvää se, että kun annat komennon cat /dev/ttyS0, niin loppuuko komento "itsekseen". Eli tuleeko sarjaportilta datan jälkeen EOF-merkki, joka lopettaisi cat-komennon? Jos ei, niin logger jää odottelemaan maailman tappiin, että se stream loppuisi. Toinen cat-komento ei välttämättä saa enää nyt avattua sarjaporttia, jos se jää varatuksi tälle ensimmäiselle odottelijalle.
kun koneen käynnistää, cat /dev/ttyS0 toimii niin kauan, kun taloLogger tekee ensimmäisen mittauksen, sen jälkeen ruudulle ei tule mitään, komento menee läpi
talo@radxa:~$ cat /dev/ttyS0
talo@radxa:~$
silloin alussa kun se toimii, rivit tulee allekkain, niinkuin pitääkin, mutta komento ei lopu "itsekseen" vaan vaatii CTRL-C


olammi sanoi:
Jos cat ei palaa itsekseen komentoriviltä kehotteeseen ilman esim. CTRL-C:tä, niin tuohon väliin pitäisi tehdä jonkinlainen lisäprosessi tai loggeriin moduuli, joka käsittelee jostain saamaansa dataa rivi kerrallaan. Shell-moduuli toimii siten, että se ajaa komennon ja ottaa sen koko tuloksen käsittelyyn. Intervallin jälkeen ajaa toisen vastaavan komennon ja käsittelee taas koko saamansa vasteen.
näin ilmeisesti on

olammi sanoi:
Miksi tuo sitten välillä toimii? Loggeri ei odottele streamin loppua maailman tappiin vaan siinä on sisäänrakennettu kovakoodattu 120 sekunnin timeout kaikille yksittäisille datasourceille. Eli yhden datan hakeminen ei koskaan voi kestää 120 sekuntia kauempaa tai haku katsotaan epäonnistuneeksi. Nyt luultavasti tapauksessasi tuo 120 sekunnin timeout realisoituu, siitä tulee virheilmoitus ja siihen mennessä saatu data käsitellään.
tuota sarjaportista lukua en saanut toimimaan ollenkaan, ei edes yhtään onnistunutta lukua, vaan mittaus tapahtuu tällähetkellä näin

arduino sarjaportissa
Koodi:
#include "DHT.h"

#define DHTPIN 2     // what pin we're connected to

#define DHTTYPE DHT22   // DHT 22  (AM2302)

DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600); 
 
  dht.begin();
}

void loop() {
  delay(2000);

  float h = dht.readHumidity();
  float t = dht.readTemperature();
   
  if (isnan(h) || isnan(t)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }

  Serial.print(h);
  Serial.print(",");
  Serial.print(t);
  Serial.println();
}

luen sen .py scriptillä
Koodi:
#!/usr/bin/python
import serial, time
import sys

ser = serial.Serial('/dev/ttyS0', 9600)
f = open("/home/talo/virtual/rossi.txt", "wb")
x = ser.readline()[: - 1 ]
f.write(x)
f.close()
millä sain sen haamurivin myös pois, millä ei kuitenkaan ollut vaikutusta

luen em tiedoston taloLoggerin SHELL
Koodi:
SHELL1:LOCATION = /bin/cat
SHELL1:PARAMETERS = /home/talo/virtual/rossi.txt
SHELL1:REGEXP = ^\s*(?P<rossi_humi>[0-9\.\-]+)\s*,\s*(?P<rossi_temp>[0-9\.\-]+)\s*$
jolla toimii, mutta tuo aiheuttaa ajoittain seuraavan
Koodi:
03.11.2014 22:20:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 88.80,7.90
03.11.2014 22:30:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 88.70,7.90
03.11.2014 22:30:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 88.70,7.90
03.11.2014 23:00:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 89.10,7.90
03.11.2014 23:00:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 89.10,7.90
03.11.2014 23:20:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 89.40,7.90
04.11.2014 00:10:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 90.00,8.00
04.11.2014 00:10:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 90.00,8.00
04.11.2014 00:10:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 90.00,8.00
04.11.2014 00:10:33: TaloLoggerThread: Received none or unknown data for command SHELL1.rossi_temp.
04.11.2014 00:10:33: TaloLoggerThread: Received none or unknown data for command SHELL1.rossi_humi.
04.11.2014 00:20:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 90.20,8.00
04.11.2014 00:20:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 90.20,8.00
04.11.2014 00:50:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 90.70,8.10
04.11.2014 01:00:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 90.80,8.10
04.11.2014 01:00:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 90.80,8.10
04.11.2014 01:20:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 90.70,8.10
04.11.2014 01:30:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 90.80,8.10
04.11.2014 01:30:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 90.80,8.10
04.11.2014 02:00:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.50,8.20
04.11.2014 02:10:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.70,8.20
04.11.2014 02:10:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.70,8.20
04.11.2014 02:30:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.70,8.20
04.11.2014 02:30:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.70,8.20
04.11.2014 02:40:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.60,8.20
04.11.2014 03:20:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.60,8.30
04.11.2014 03:20:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.60,8.30
04.11.2014 03:20:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.60,8.30
04.11.2014 03:20:33: TaloLoggerThread: Received none or unknown data for command SHELL1.rossi_temp.
04.11.2014 03:20:33: TaloLoggerThread: Received none or unknown data for command SHELL1.rossi_humi.
04.11.2014 03:40:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.70,8.30
04.11.2014 04:10:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.60,8.30
04.11.2014 04:10:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.60,8.30
04.11.2014 04:10:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.60,8.30
04.11.2014 04:10:33: TaloLoggerThread: Received none or unknown data for command SHELL1.rossi_temp.
04.11.2014 04:10:33: TaloLoggerThread: Received none or unknown data for command SHELL1.rossi_humi.
04.11.2014 04:20:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.70,8.30
04.11.2014 04:20:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.70,8.30
04.11.2014 04:30:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 92.00,8.30
04.11.2014 04:30:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 92.00,8.30
04.11.2014 04:30:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 92.00,8.30
04.11.2014 04:30:33: TaloLoggerThread: Received none or unknown data for command SHELL1.rossi_temp.
04.11.2014 04:30:33: TaloLoggerThread: Received none or unknown data for command SHELL1.rossi_humi.
04.11.2014 04:40:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 92.20,8.30
04.11.2014 05:00:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 92.00,8.30
04.11.2014 06:10:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.60,8.40
04.11.2014 06:20:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.70,8.40
04.11.2014 06:30:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.80,8.30
04.11.2014 06:30:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.80,8.30
04.11.2014 06:30:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.80,8.30
04.11.2014 06:30:33: TaloLoggerThread: Received none or unknown data for command SHELL1.rossi_temp.
04.11.2014 06:30:33: TaloLoggerThread: Received none or unknown data for command SHELL1.rossi_humi.
04.11.2014 06:40:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.80,8.40
04.11.2014 06:50:32: OWFS: ERROR: Error reading sensor file: /home/talo/owfs/20.AC100C000000/volt.A
04.11.2014 06:50:34: TaloLoggerThread: Received none or unknown data for command OWFS.co2.
04.11.2014 07:00:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 92.00,8.40
04.11.2014 07:00:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 92.00,8.40
04.11.2014 07:00:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 92.00,8.40
04.11.2014 07:00:33: TaloLoggerThread: Received none or unknown data for command SHELL1.rossi_temp.
04.11.2014 07:00:33: TaloLoggerThread: Received none or unknown data for command SHELL1.rossi_humi.
04.11.2014 07:10:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.90,8.40
04.11.2014 07:20:01: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 92.00,8.40
04.11.2014 07:30:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.80,8.40
04.11.2014 07:40:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 91.90,8.40
04.11.2014 08:30:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 92.40,8.40
04.11.2014 08:50:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 92.70,8.50
04.11.2014 09:10:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 92.40,8.50
04.11.2014 09:10:00: SHELL1: ERROR: Error executing Shell data source command
  Command: /bin/cat /home/talo/virtual/rossi.txt
  Command output: 92.40,8.50
käyn poistamassa tuon koodin jossain vaiheessa viemästä tilaa

tavoite on yhä akuperäinen - lukea suoraan sarjaportista ilman näitä väliscriptejä, kun se ilmeisesti on mahdollista koska nuo ylimääräiset, etenkin minun tekemät, voivat aiheuttaa sinänsä lisäongelmia ja päällekkäisyyksiä
 
Vs: Talologger Muuttujat & Ohjelmointi

jolla sanoi:
tavoite on yhä akuperäinen - lukea suoraan sarjaportista ilman näitä väliscriptejä, kun se ilmeisesti on mahdollista koska nuo ylimääräiset, etenkin minun tekemät, voivat aiheuttaa sinänsä lisäongelmia ja päällekkäisyyksiä

cat ei sellaisenaan tule toimimaan taloLoggerin nykyversion kanssa koska se ei palaa ennen EOF, juurikin kuten olammi selitti.

Ideana: Voisitko muuttaa tekemääsi python-skriptiä niin että se kutsuttaessa lukee yhden rivin sarjaportista, tulostaa sen stdout:iin ja palaa normaalisti? Tällöin voisit kutsua python-skriptiäsi taloLoggerista.
 
Vs: Talologger Muuttujat & Ohjelmointi

Unelmavävy sanoi:
cat ei sellaisenaan tule toimimaan taloLoggerin nykyversion kanssa koska se ei palaa ennen EOF, juurikin kuten olammi selitti.

Ideana: Voisitko muuttaa tekemääsi python-skriptiä niin että se kutsuttaessa lukee yhden rivin sarjaportista, tulostaa sen stdout:iin ja palaa normaalisti? Tällöin voisit kutsua python-skriptiäsi taloLoggerista.
On myös monta tapaa tehdä vastaavaa yhdellä yksinkertaisella komennollakin. Esim.

"head -1 /dev/ttyS0"

tekee tuon.
 
Vs: Talologger Muuttujat & Ohjelmointi

Unelmavävy sanoi:
Ideana: Voisitko muuttaa tekemääsi python-skriptiä niin että se kutsuttaessa lukee yhden rivin sarjaportista, tulostaa sen stdout:iin ja palaa normaalisti? Tällöin voisit kutsua python-skriptiäsi taloLoggerista.

scriptien tekeminen on minulle ja vielä tällä iällä aika hapokasta hommaa, mutta eiköhän sekin....

minulla oli raspissa joskus joku python scripti millä luin w1 modulia taloLoggerin SHELL' illä mutta en muista miten sen tein

mihin kohdin tuota minun värssyä tuo "head -1 /dev/ttyS0" upotettaisi?
 
Vs: Talologger Muuttujat & Ohjelmointi

jolla sanoi:
scriptien tekeminen on minulle ja vielä tällä iällä aika hapokasta hommaa, mutta eiköhän sekin....

minulla oli raspissa joskus joku python scripti millä luin w1 modulia taloLoggerin SHELL' illä mutta en muista miten sen tein

mihin kohdin tuota minun värssyä tuo "head -1 /dev/ttyS0" upotettaisi?

Ei tartte tehdä muuta kuin poistaa tuo tiedoston avaaminen ja sulkeminen ja tulostaa vaan print:illä sarjaportista luettu arvo. Voit kokeilla myös noita head:ia ja tail:ia. Tail voisi toimia paremmin koska palauttaa rivejä peräpäästä, head alkupäästä. Eli


# tail -1 /dev/ttyS0
SHELL1:LOCATION = /bin/tail
SHELL1:PARAMETERS = -1 /dev/ttyS0


EDIT: tail kanssa voi kyllä tulla sama EOF ongelma mutta kokeilemalla selviää...
 
Vs: Talologger Muuttujat & Ohjelmointi

Unelmavävy sanoi:
Ei tartte tehdä muuta kuin poistaa tuo tiedoston avaaminen ja sulkeminen ja tulostaa vaan print:illä sarjaportista luettu arvo. Voit kokeilla myös noita head:ia ja tail:ia. Tail voisi toimia paremmin koska palauttaa rivejä peräpäästä, head alkupäästä. Eli


# tail -1 /dev/ttyS0
SHELL1:LOCATION = /bin/tail
SHELL1:PARAMETERS = -1 /dev/ttyS0


EDIT: tail kanssa voi kyllä tulla sama EOF ongelma mutta kokeilemalla selviää...

ei toimi tuollakaan
 
Vs: Talologger Muuttujat & Ohjelmointi

kotte sanoi:
Koititkos "head"is "tail"in sijaan? "tail" jää nimittäin tuolla tavoin käytettynä roikkumaan juuri niin kuin "cat".

jeps, se katkaisee

root@radxa:/home/talo/etc# head /dev/ttyUSB0

92.90,8.60

92.90,8.60

92.90,8.60

93.00,8.60

92.90,8.60
root@radxa:/home/talo/etc#

Koodi:
04.11.2014 17:28:00: SHELL1: ERROR: Error executing Shell data source command
  Command:  head -1 /dev/ttyUSB0
  Command output: head: cannot open `/dev/ttyUSB0' for reading: Permission denied

04.11.2014 17:28:00: TaloLoggerThread: Received none or unknown data for command SHELL1.rossi_temp.
04.11.2014 17:28:00: TaloLoggerThread: Received none or unknown data for command SHELL1.rossi_humi.

en tiedä, liekö merkitystä, ensimmäinen rivi on tyhjä, mutta 'Permission denied' se herjaa
Koodi:
root@radxa:/home/talo/etc# head -1 /dev/ttyUSB0

root@radxa:/home/talo/etc# head -2 /dev/ttyUSB0
93.00,8.60

root@radxa:/home/talo/etc# head -3 /dev/ttyUSB0

93.00,8.60

root@radxa:/home/talo/etc# head -2 /dev/ttyUSB0
93.00,8.60
 
Vs: Talologger Muuttujat & Ohjelmointi

jolla sanoi:
en tiedä, liekö merkitystä, ensimmäinen rivi on tyhjä, mutta 'Permission denied' se herjaa

JOS ajat taloLoggeria jonain muuna käyttäjän kuin roottina niin sitten samat tarkistukset ja korjaukset mitä teit aiemmin sille /dev/ttyS0 portille.

Jos siellä datan seassa on tyhjiä rivejä niin se täytyy ottaa huomioon lukiessa. Muuten tulee tyhjiä mittaustuloksia.
 
Vs: Talologger Muuttujat & Ohjelmointi

Unelmavävy sanoi:
JOS ajat taloLoggeria jonain muuna käyttäjän kuin roottina niin sitten samat tarkistukset ja korjaukset mitä teit aiemmin sille /dev/ttyS0 portille.

Jos siellä datan seassa on tyhjiä rivejä niin se täytyy ottaa huomioon lukiessa. Muuten tulee tyhjiä mittaustuloksia.

tällä toimii niin pitkään kunnes sammuttaa koneen ja käynnistää uudelleen koska 'chmod -R 777 /dev/ttyUSB0' nollautuu käynnistettäessä, mutta näinkin jo hyvä, voiko tuon crontab' iin laittaa?
Koodi:
# Shell module configuration
SHELL1:LOCATION = /usr/bin/head -2
SHELL1:PARAMETERS = /dev/ttyUSB0
SHELL1:REGEXP = ^\s*(?P<rossi_humi>[0-9\.\-]+)\s*,\s*(?P<rossi_temp>[0-9\.\-]+)\s*$

mistähän tuo tyhjä rivi, se siellä myös sotki kokeiluja, mutta nuo oikeudet.....
ei herjaa taloLoggerikaan mitään
 
Vs: Talologger Muuttujat & Ohjelmointi

Listaapa nyt aluksi laitteen "/dev/ttyUSB0" ryhmä (group). Jos tuo on jotakin kuten "dialout" tai vastaavaa ja permissiot ovat "rw" tuolle groupille, niin liitä käyttäjä, jolla sovelmia ajat "/etc/group"-tiedostossa tuolle käyttäjälle. Sen jälkeen pitäisi toimia aina ja suoraan ...
 
Vs: Talologger Muuttujat & Ohjelmointi

jolla sanoi:
Koodi:
# Shell module configuration
SHELL1:LOCATION = /usr/bin/head -2
SHELL1:PARAMETERS = /dev/ttyUSB0
SHELL1:REGEXP = ^\s*(?P<rossi_humi>[0-9\.\-]+)\s*,\s*(?P<rossi_temp>[0-9\.\-]+)\s*$

Tähän huomautuksena, että locationissa pitäisi olla vain "ajettavan" tiedoston polku eli
Koodi:
/usr/bin/head
ja sille annettavat kaikki parametrit kohdassa parameters, eli
Koodi:
-2 /dev/ttyUSB0
 
Vs: Talologger Muuttujat & Ohjelmointi

kotte sanoi:
Listaapa nyt aluksi laitteen "/dev/ttyUSB0" ryhmä (group). Jos tuo on jotakin kuten "dialout" tai vastaavaa ja permissiot ovat "rw" tuolle groupille, niin liitä käyttäjä, jolla sovelmia ajat "/etc/group"-tiedostossa tuolle käyttäjälle. Sen jälkeen pitäisi toimia aina ja suoraan ...

menee kyllä minun täitarhan yli että kohisee, mutta tässä jotain listausta

Koodi:
root@radxa:~# cat /etc/group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
uucp:x:10:talo
man:x:12:
proxy:x:13:
kmem:x:15:
dialout:x:20:talo
fax:x:21:
voice:x:22:
cdrom:x:24:
floppy:x:25:
tape:x:26:
sudo:x:27:rock
audio:x:29:
dip:x:30:
www-data:x:33:
backup:x:34:
operator:x:37:
list:x:38:
irc:x:39:
src:x:40:
gnats:x:41:
shadow:x:42:
utmp:x:43:
video:x:44:talo
sasl:x:45:
plugdev:x:46:
staff:x:50:
games:x:60:
users:x:100:
nogroup:x:65534:
libuuid:x:101:
crontab:x:102:
messagebus:x:103:
netdev:x:104:
ssh:x:105:
rock:x:1000:
ssl-cert:x:106:
fuse:x:107:
i2c:x:108:
talo:x:1001:
sambashare:x:109:
ntp:x:110:
chmod -R 777 /dev/ttyUSB0, niin alkoi toimia mutta ajoittain, kuten tiedostonkin kanssa alkoi antaa virhettä, mutta mittauksiin ei sillä ole vaikutusta
Koodi:
root@radxa:~# ls -dgils /dev/ttyUSB0
3343 0 crwxrwxrwx 1 dialout 188, 0 Nov  4 16:01 /dev/ttyUSB0
bootin jälkeen, elikkä se orig asento, millä ei toimi
Koodi:
root@radxa:~# ls -dgils /dev/ttyUSB0
3624 0 crw-rw---T 1 dialout 188, 0 Nov  4 20:55 /dev/ttyUSB0
Koodi:
root@radxa:~# ls -dgils /home/talo
196751 1 drwxr-xr-x 9 talo 1024 Nov  4 16:00 /home/talo
muutin, mutta ei vaikutusta
Koodi:
# Shell module configuration
SHELL1:LOCATION = /usr/bin/head
SHELL1:PARAMETERS = -2 /dev/ttyUSB0
SHELL1:REGEXP = ^\s*(?P<rossi_humi>[0-9\.\-]+)\s*,\s*(?P<rossi_temp>[0-9\.\-]+)$

kyllä tää on ehkä enää niistä oikeuksista kiinni noihin sarjaportteihin
 
Vs: Talologger Muuttujat & Ohjelmointi

jolla sanoi:
menee kyllä minun täitarhan yli että kohisee, mutta tässä jotain listausta
...
kyllä tää on ehkä enää niistä oikeuksista kiinni noihin sarjaportteihin
Ajatko tuota scriptiä tunnuksella "talo", "rock" vai jollakin muulla käyttäjätunnuksella? Tunnukselle "talo" hoimma vaikuttaisi olevan ok, mutta esim. tunnukselle "rock" pitäisi lisätä oikeudet. Eli pitäisi lisätä "rock" (ilman hipsukoita) pilkulla erotettuna sinne, missä jo lukee "talo" tuonne "/etc/group"-tiedostoon, sen "talo"n perään.

PS. "/etc/group":iin tehdyt muutokset eivät välttämättä näy heti (ulos-sisäänloggaus saa joissakin tilanteissa ja ainakin bootti muutokset kaikkialla voimaan; muitakin tilanteita on -- kuten tässä -- joten suosittelen boottia muutosten jälkeen).
 
Vs: Talologger Muuttujat & Ohjelmointi

kotte sanoi:
Ajatko tuota scriptiä tunnuksella "talo", "rock" vai jollakin muulla käyttäjätunnuksella? Tunnukselle "talo" hoimma vaikuttaisi olevan ok, mutta esim. tunnukselle "rock" pitäisi lisätä oikeudet. Eli pitäisi lisätä "rock" (ilman hipsukoita) pilkulla erotettuna sinne, missä jo lukee "talo" tuonne "/etc/group"-tiedostoon, sen "talo"n perään.
olen aina root, kaikki on asennettu root, en käytä muita, tämän kun saisi pysyväksi
root@radxa:~# ls -dgils /dev/ttyUSB0
3343 0 crwxrwxrwx 1 dialout 188, 0 Nov 4 16:01 /dev/ttyUSB0

niin, se on taloLogger.conf' issa, eikö se ole ole 'talo' silloin kun sehän käynnistyy automatic
 
Vs: Talologger Muuttujat & Ohjelmointi

jolla sanoi:
olen aina root, kaikki on asennettu root, en käytä muita, tämän kun saisi pysyväksi
root@radxa:~# ls -dgils /dev/ttyUSB0
3343 0 crwxrwxrwx 1 dialout 188, 0 Nov 4 16:01 /dev/ttyUSB0

niin, se on taloLogger.conf' issa, eikö se ole ole 'talo' silloin kun sehän käynnistyy automatic
Olennaista on, millä tunnuksella talologger tuon käynnistää ja ajaa. Tunnukselle "talo" homma kumminkin näyttäisi olevan kunnossa. Käynnistyyköhän jokin muu ohjelma, joka käyttää /dev/ttyUSB0:tä? Se nimittäin sotkisi asiat. Sinne voi esim. käynnistyä jonkinlainen modemiyhteys tai sarjalinja sisäänloggausta varten (sitten täytyy muuttaa /etc/inittab'ia tms. ja deaktivoida moinen).

Hiukan ihmettelen tuota flagia "T" "/dev/ttyUSB0":n moodikentässä ...
 
Vs: Talologger Muuttujat & Ohjelmointi

kotte sanoi:
Olennaista on, millä tunnuksella talologger tuon käynnistää ja ajaa. Tunnukselle "talo" homma kumminkin näyttäisi olevan kunnossa.

Ajappa vielä varmuuden vuoksi taloLoggerin ollessa käynnissä komento

# ps -ef|grep -i talo

kotte sanoi:
Käynnistyyköhän jokin muu ohjelma, joka käyttää /dev/ttyUSB0:tä? Se nimittäin sotkisi asiat. Sinne voi esim. käynnistyä jonkinlainen modemiyhteys tai sarjalinja sisäänloggausta varten (sitten täytyy muuttaa /etc/inittab'ia tms. ja deaktivoida moinen).

Aja komento

# grep -i usb /etc/inittab

kotte sanoi:
Hiukan ihmettelen tuota flagia "T" "/dev/ttyUSB0":n moodikentässä ...

Samaa olen ihmetellyt. Ton sticky-bitin tarkoitus voi olla noissa devicefileissä eri kuin normaalisti. Elikkäs jos bitti on asetettu niin udev ei poista devicefileä "remove" actionissa. Eli käyttäjän kannalta ei merkitystä. Tämä on toistaiseksi järkeenkäyvin löytynyt selitys.
 
Vs: Talologger Muuttujat & Ohjelmointi

Unelmavävy sanoi:
Ajappa vielä varmuuden vuoksi taloLoggerin ollessa käynnissä komento

# ps -ef|grep -i talo
root@radxa:~# ps -ef|grep -i talo
root 2105 2102 0 Nov04 ? 00:00:00 supervise taloLogger
root 2106 2104 0 Nov04 ? 00:00:02 /usr/lib/owfs/owfs -c /etc/owfs.conf -C -d /dev/ttyUSB1 -m /home/talo/owfs --foreground --allow_other --error_print 1
talo 2352 2105 0 Nov04 ? 00:00:12 /usr/bin/python /home/talo/bin/taloLogger/taloLogger.py -f /home/talo/etc/taloLogger.conf
root 3843 3830 0 08:58 pts/0 00:00:00 grep -i talo
Unelmavävy sanoi:
Aja komento

# grep -i usb /etc/inittab
tuo ei anna mitään
root@radxa:~# grep -i usb /etc/inittab
root@radxa:~#
Unelmavävy sanoi:
Samaa olen ihmetellyt. Ton sticky-bitin tarkoitus voi olla noissa devicefileissä eri kuin normaalisti. Elikkäs jos bitti on asetettu niin udev ei poista devicefileä "remove" actionissa. Eli käyttäjän kannalta ei merkitystä. Tämä on toistaiseksi järkeenkäyvin löytynyt selitys.

koko yön ollut päällä, eilen ajettu neitseellinen rock' in img, taloLogger scriptillään ja
olammin scriptikorjaus
Koodi:
# Shell module configuration
SHELL1:LOCATION = /usr/bin/head
SHELL1:PARAMETERS = -2 /dev/ttyUSB0
SHELL1:REGEXP = ^\s*(?P<rossi_humi>[0-9\.\-]+)\s*,\s*(?P<rossi_temp>[0-9\.\-]+)\s*$
auttoi kuitenkin - ainuttakaan virheilmoituata ei ole enää tullut, nyt se toimii, paitsi nuo oikeudet pitää muuttaa sitten käynnistyksen jälkeen, se on jo korkeampaa osaamista, sitä ei täältä löydy
kiitos selkeistä valmiista 'check'aus' esimerkeistä
 
Vs: Talologger Muuttujat & Ohjelmointi

Vielä voisi varmistaa reaaliaikaisesti, ettei mikään (muu) prosessi käytä laitetta "/dev/ttyUSB0". Tuon voi tarkistaa kätevästi roottina komennolla "lsof" (joka ei liene oletusarvoisesti asennettuna, mutta senhän saa mukaan komentorivillä "apt-get install lsof" roottina ajettuna).

Sitten vaan komento "lsof | grep /dev/ttyUSB0", niin näkee mahdollisten laitetta käyttävien prosessien nimet, id't, omistajat yms.
 
Vs: Talologger Muuttujat & Ohjelmointi

kotte sanoi:
Vielä voisi varmistaa reaaliaikaisesti, ettei mikään (muu) prosessi käytä laitetta "/dev/ttyUSB0". Tuon voi tarkistaa kätevästi roottina komennolla "lsof" (joka ei liene oletusarvoisesti asennettuna, mutta senhän saa mukaan komentorivillä "apt-get install lsof" roottina ajettuna).

Sitten vaan komento "lsof | grep /dev/ttyUSB0", niin näkee mahdollisten laitetta käyttävien prosessien nimet, id't, omistajat yms.

root@radxa:~# lsof | grep /dev/ttyUSB0
root@radxa:~#

ja
Koodi:
root@radxa:~# cat /etc/inittab
# /etc/inittab: init(8) configuration.
# $Id: inittab,v 1.91 2002/01/25 13:35:21 miquels Exp $

# The default runlevel.
id:2:initdefault:

# Boot-time system configuration/initialization script.
# This is run first except when booting in emergency (-b) mode.
si::sysinit:/etc/init.d/rcS

# What to do in single-user mode.
~~:S:wait:/sbin/sulogin

# /etc/init.d executes the S and K scripts upon change
# of runlevel.
#
# Runlevel 0 is halt.
# Runlevel 1 is single-user.
# Runlevels 2-5 are multi-user.
# Runlevel 6 is reboot.

l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
# Normally not reached, but fallthrough in case of emergency.
z6:6:respawn:/sbin/sulogin

# What to do when CTRL-ALT-DEL is pressed.
ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now

# Action on special keypress (ALT-UpArrow).
#kb::kbrequest:/bin/echo "Keyboard Request--edit /etc/inittab to let this work."

# What to do when the power fails/returns.
pf::powerwait:/etc/init.d/powerfail start
pn::powerfailnow:/etc/init.d/powerfail now
po::powerokwait:/etc/init.d/powerfail stop

# /sbin/getty invocations for the runlevels.
#
# The "id" field MUST be the same as the last
# characters of the device (after "tty").
#
# Format:
#  <id>:<runlevels>:<action>:<process>
#
# Note that on most Debian systems tty7 is used by the X Window System,
# so if you want to add more getty's go ahead but skip tty7 if you run X.
#
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
4:23:respawn:/sbin/getty 38400 tty4
5:23:respawn:/sbin/getty 38400 tty5
6:23:respawn:/sbin/getty 38400 tty6

# Example how to put a getty on a serial line (for a terminal)
#
T0:23:respawn:/sbin/getty -a root -L ttyFIQ0 115200 vt100
#T1:23:respawn:/sbin/getty -L ttyS1 9600 vt100

# Example how to put a getty on a modem line.
#
#T3:23:respawn:/sbin/mgetty -x0 -s 57600 ttyS3

SV:12345:respawn:/usr/bin/svscanboot
root@radxa:~#
 
Vs: Talologger Muuttujat & Ohjelmointi

jolla sanoi:
root@radxa:~# lsof | grep /dev/ttyUSB0
root@radxa:~#

ja
Koodi:
root@radxa:~# cat /etc/inittab
# /etc/inittab: init(8) configuration.
# $Id: inittab,v 1.91 2002/01/25 13:35:21 miquels Exp $

# The default runlevel.
id:2:initdefault:

# Boot-time system configuration/initialization script.
# This is run first except when booting in emergency (-b) mode.
si::sysinit:/etc/init.d/rcS

# What to do in single-user mode.
~~:S:wait:/sbin/sulogin

# /etc/init.d executes the S and K scripts upon change
# of runlevel.
#
# Runlevel 0 is halt.
# Runlevel 1 is single-user.
# Runlevels 2-5 are multi-user.
# Runlevel 6 is reboot.

l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
# Normally not reached, but fallthrough in case of emergency.
z6:6:respawn:/sbin/sulogin

# What to do when CTRL-ALT-DEL is pressed.
ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now

# Action on special keypress (ALT-UpArrow).
#kb::kbrequest:/bin/echo "Keyboard Request--edit /etc/inittab to let this work."

# What to do when the power fails/returns.
pf::powerwait:/etc/init.d/powerfail start
pn::powerfailnow:/etc/init.d/powerfail now
po::powerokwait:/etc/init.d/powerfail stop

# /sbin/getty invocations for the runlevels.
#
# The "id" field MUST be the same as the last
# characters of the device (after "tty").
#
# Format:
#  <id>:<runlevels>:<action>:<process>
#
# Note that on most Debian systems tty7 is used by the X Window System,
# so if you want to add more getty's go ahead but skip tty7 if you run X.
#
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
4:23:respawn:/sbin/getty 38400 tty4
5:23:respawn:/sbin/getty 38400 tty5
6:23:respawn:/sbin/getty 38400 tty6

# Example how to put a getty on a serial line (for a terminal)
#
T0:23:respawn:/sbin/getty -a root -L ttyFIQ0 115200 vt100
#T1:23:respawn:/sbin/getty -L ttyS1 9600 vt100

# Example how to put a getty on a modem line.
#
#T3:23:respawn:/sbin/mgetty -x0 -s 57600 ttyS3

SV:12345:respawn:/usr/bin/svscanboot
root@radxa:~# nano /etc/inittab
root@radxa:~# cat /etc/inittab
# /etc/inittab: init(8) configuration.
# $Id: inittab,v 1.91 2002/01/25 13:35:21 miquels Exp $

# The default runlevel.
id:2:initdefault:

# Boot-time system configuration/initialization script.
# This is run first except when booting in emergency (-b) mode.
si::sysinit:/etc/init.d/rcS

# What to do in single-user mode.
~~:S:wait:/sbin/sulogin

# /etc/init.d executes the S and K scripts upon change
# of runlevel.
#
# Runlevel 0 is halt.
# Runlevel 1 is single-user.
# Runlevels 2-5 are multi-user.
# Runlevel 6 is reboot.

l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
# Normally not reached, but fallthrough in case of emergency.
z6:6:respawn:/sbin/sulogin

# What to do when CTRL-ALT-DEL is pressed.
ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now

# Action on special keypress (ALT-UpArrow).
#kb::kbrequest:/bin/echo "Keyboard Request--edit /etc/inittab to let this work."

# What to do when the power fails/returns.
pf::powerwait:/etc/init.d/powerfail start
pn::powerfailnow:/etc/init.d/powerfail now
po::powerokwait:/etc/init.d/powerfail stop

# /sbin/getty invocations for the runlevels.
#
# The "id" field MUST be the same as the last
# characters of the device (after "tty").
#
# Format:
#  <id>:<runlevels>:<action>:<process>
#
# Note that on most Debian systems tty7 is used by the X Window System,
# so if you want to add more getty's go ahead but skip tty7 if you run X.
#
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
4:23:respawn:/sbin/getty 38400 tty4
5:23:respawn:/sbin/getty 38400 tty5
6:23:respawn:/sbin/getty 38400 tty6

# Example how to put a getty on a serial line (for a terminal)
#
T0:23:respawn:/sbin/getty -a root -L ttyFIQ0 115200 vt100
#T1:23:respawn:/sbin/getty -L ttyS1 9600 vt100

# Example how to put a getty on a modem line.
#
#T3:23:respawn:/sbin/mgetty -x0 -s 57600 ttyS3

SV:12345:respawn:/usr/bin/svscanboot
root@radxa:~#
Nyt rupeaa jo askarruttamaan koneen HW-konfiguraatio. "/dev/ttyUSB1" näkyy olevan jo käytössä ("ps"-komento aikaisemmin), mutta onko tuo "/dev/ttyUSB0" varmasti kytkettynä, se laite josta puhutaan ja päällä ilman jotakin virhetilaa? Mikä tuo palvelu on, joka käyttää "/dev/ttyUSB1":tä?
 
Takaisin
Ylös Bottom