script
Re: script
om det ska starta vid uppstart skriver du in kommandon sist i /etc/rc.local
samma som du skriver i terminalen fast med hela sökvägen till exefilen.
googla på "autostart raspberry pi rc.local"
samma som du skriver i terminalen fast med hela sökvägen till exefilen.
googla på "autostart raspberry pi rc.local"
Re: script
Vid uppstart eller crontab?
Vid uppstart och crontab är olika saker.
Vid uppstart betyder en gång i samband med uppstart.
crontab är tänkt för att utföra något på förutbestämda datum eller kolckslag, gärna med upprepning, t.ex. ett visst klockslag varje dag eller vissa dagar.
/Pi
Vid uppstart och crontab är olika saker.
Vid uppstart betyder en gång i samband med uppstart.
crontab är tänkt för att utföra något på förutbestämda datum eller kolckslag, gärna med upprepning, t.ex. ett visst klockslag varje dag eller vissa dagar.
/Pi
Re: script
Vill du verkligen starta en terminalemulator först? Jag gissar att du bara vill att ditt program skall köra?
Re: script
Tack alla !
Jag har försökt i flera timmar med rc.local. Jag får det inte att fungera.
Jag har följande i crontab: @reboot /home/pi/stugan.sh. Det är stugan.sh jag vill ha hjälp med
Jag har testat följande utan framgång:
command = "xterm -e"
command = "cd /home/pi/stugan/Release"
command = "./stugan"
Och ja jag har gjort ett program i C som jag vill starta i terminal
Jag har haft följande i /etc/xdg/lxsession/LXDE/autostart:
@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
@xscreensaver -no-splash
@lxterminal --command "/home/pi/stugan/bin/Release/./stugan"
point-rpi
Då startade programmet i två upplagor men bara i ett terminalfönster. Jag fick mystiska fel som det tog dagar att hitta.
Jag har skrivit programmet i codeblocks och när jag kör det därifrån skickas följande kommando:
Executing: xterm -T stugan -e /usr/bin/cb_console_runner LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. /home/pi/stugan/bin/Release/stugan (in /home/pi/stugan/.)
Jag har försökt i flera timmar med rc.local. Jag får det inte att fungera.
Jag har följande i crontab: @reboot /home/pi/stugan.sh. Det är stugan.sh jag vill ha hjälp med
Jag har testat följande utan framgång:
command = "xterm -e"
command = "cd /home/pi/stugan/Release"
command = "./stugan"
Och ja jag har gjort ett program i C som jag vill starta i terminal
Jag har haft följande i /etc/xdg/lxsession/LXDE/autostart:
@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
@xscreensaver -no-splash
@lxterminal --command "/home/pi/stugan/bin/Release/./stugan"
point-rpi
Då startade programmet i två upplagor men bara i ett terminalfönster. Jag fick mystiska fel som det tog dagar att hitta.
Jag har skrivit programmet i codeblocks och när jag kör det därifrån skickas följande kommando:
Executing: xterm -T stugan -e /usr/bin/cb_console_runner LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. /home/pi/stugan/bin/Release/stugan (in /home/pi/stugan/.)
Re: script
Man kan inte starta en x-applikation (som xterm) utan att det
finns en DISPLAY att ansluta till. Och det finns det inte om du
inte specifikt anger det när du startar via tex crontab.
finns en DISPLAY att ansluta till. Och det finns det inte om du
inte specifikt anger det när du startar via tex crontab.
Re: script
Vad ska hända när skriptet körs? Kanske du kan göra ett shellskript istället som exekverar utan xterminal?
Re: script
Jag har i 20 års tid kört ett program i en Windowsdator som mäter och styr värmen i huset och reglerar mina solpaneler. Nu vill jag göra detta i en Rasperry pi.
Fördelen med detta är att den skall starta automatiskt efter ett strömavbrott. Om den inmte startar är det risk att solpanelerna förstörs.
Jag vill alltså starta programmet, och helst på skärmen se vad som händer i realtid. Jag är öppen för alla lösningar som fungerar. Det var tydligen inte så lätt som jag trodde
Jag har alltid både tangentbord, mus och display anslutna.
Fördelen med detta är att den skall starta automatiskt efter ett strömavbrott. Om den inmte startar är det risk att solpanelerna förstörs.
Jag vill alltså starta programmet, och helst på skärmen se vad som händer i realtid. Jag är öppen för alla lösningar som fungerar. Det var tydligen inte så lätt som jag trodde
Jag har alltid både tangentbord, mus och display anslutna.
Re: script
Hur visualiserar du vad som händer? Via X eller text?
Rekommendationen är annars, speciellt för kritiska saker,
att hålla isär funktionen och visualiseringen. Se till att
ditt "kritiska" program kör, och ha sedan ett annat som
man kan följa vad den gör. Kanske handlar det bara
om att skriva och läsa en textfil?
Är det riktigt viktigt att din applikation kör i alla lägen
och startar om vid krasch osv, så rekommenderar jag
DJ Bernsteins DaemonTools, men det är kanske lite
overkill för detta.
https://cr.yp.to/daemontools.html
Rekommendationen är annars, speciellt för kritiska saker,
att hålla isär funktionen och visualiseringen. Se till att
ditt "kritiska" program kör, och ha sedan ett annat som
man kan följa vad den gör. Kanske handlar det bara
om att skriva och läsa en textfil?
Är det riktigt viktigt att din applikation kör i alla lägen
och startar om vid krasch osv, så rekommenderar jag
DJ Bernsteins DaemonTools, men det är kanske lite
overkill för detta.
https://cr.yp.to/daemontools.html
Re: script
Jag skulle rekommendera att du tittar på homeassistant istället. Det borde kunna lösa alla dina behov och är ganska enkelt för linux-ovana att jobba med.
Re: script
Annars om du absolut vill ha en X-applikation autostartad så får du leta reda på var X i sig startas bland startscripten och där klämma in starten av programmet.
Miljövariablen DISPLAY måste peka på X-servern, och idag så måste man också ha nån slags magigrej (tror det normalt bor i ytterligare en miljövariabel) för att få ansluta till servern. På stenåldern kunde alla ansluta, inklusive hackers från andra datorer som kunde avlyssna tangentbord+mus och liknande elände, därav den där magigrejen. Dock om X-servern först startas och därefter fönsterhanterare osv från ett script så bör allt detta redan vara korrekt satt i det scriptet eftersom det måste vara korrekt för att fönsterhanterare osv ska kunna startas, så tryck in dina grejer i slutet på det scriptet. Eller helst, se om scriptet har stöd för att autostarta et användarscript och lägg saker där i så fall, så är det större chans att allt funkar efter ev uppdatering av operativsystemet.
Miljövariablen DISPLAY måste peka på X-servern, och idag så måste man också ha nån slags magigrej (tror det normalt bor i ytterligare en miljövariabel) för att få ansluta till servern. På stenåldern kunde alla ansluta, inklusive hackers från andra datorer som kunde avlyssna tangentbord+mus och liknande elände, därav den där magigrejen. Dock om X-servern först startas och därefter fönsterhanterare osv från ett script så bör allt detta redan vara korrekt satt i det scriptet eftersom det måste vara korrekt för att fönsterhanterare osv ska kunna startas, så tryck in dina grejer i slutet på det scriptet. Eller helst, se om scriptet har stöd för att autostarta et användarscript och lägg saker där i så fall, så är det större chans att allt funkar efter ev uppdatering av operativsystemet.
Re: script
> Jag har i 20 års tid kört ett program i en Windowsdator...
Fortsätt med det, om det nu är en så väldigt kritisk funktion.
Fortsätt med det, om det nu är en så väldigt kritisk funktion.
Re: script
Hur är systemet uppbyggt? Är det alltså solpaneler som genererar varmvatten? Varför kan de gå sönder om inte styrsystemet fungerar, är det pga. överhettning eller frysrisk?
I första hand borde du ha en rent mekanisk enhet som skyddar, exempelvis en bimetalltermostat som styr en pump, eller en SYR-ventil som släpper ut varmvatten.
I andra hand skulle du kunna ha en enkel driftsäker PLC från exempelvis Siemens.
När väl det är klart och fungerar utan risk för några skador så kan man börja bygga ett HMI med raspberry pi, Windows eller något annat.
HMI-enheten kommunicerar med PLC för att göra inställningar och övervakning.
Re: script
Är det en X-applikation så fungerar det nog inte att starta den i de vanliga uppstartscripten just eftersom X-servern behöver vara igång för att den ska fungera.
Det är då vettigare att antingen låta X-servern starta applikationen istället för fönsterhanterare (men då har man ingen fönsterhanterare igång), eller låta fönsterhanteraren starta den.
Den senare lösningen körde jag på mina MythTV frontends, jag satt upp fönsterhanteraren med auto-login för användaren mythtv och vill minnas att den enklaste lösningen var att ställa in fönsterhanteraren så den startade en sparad session. (Minns inte vilken fönsterhanterare jag körde, det var nån enkelt med liten footprint.)
Det är ju relativt enkelt att skapa en separat användare för detta, som kan ha begränsad behörighet (som jag gjorde med användaren mythtv), auto-login går att sätta en fördröjning på så att man kan avbryta den och logga in som vanlig användare. Jag tror jag körde 3 sekunder eller nåt sånt.
En relativt stor fördel med denna lösning är att man slipper peta in en massa specialscript som man kanske glömmer bort var de ligger. Man konfigurerar bara fönsterhanteraren för autologin.
Det är då vettigare att antingen låta X-servern starta applikationen istället för fönsterhanterare (men då har man ingen fönsterhanterare igång), eller låta fönsterhanteraren starta den.
Den senare lösningen körde jag på mina MythTV frontends, jag satt upp fönsterhanteraren med auto-login för användaren mythtv och vill minnas att den enklaste lösningen var att ställa in fönsterhanteraren så den startade en sparad session. (Minns inte vilken fönsterhanterare jag körde, det var nån enkelt med liten footprint.)
Det är ju relativt enkelt att skapa en separat användare för detta, som kan ha begränsad behörighet (som jag gjorde med användaren mythtv), auto-login går att sätta en fördröjning på så att man kan avbryta den och logga in som vanlig användare. Jag tror jag körde 3 sekunder eller nåt sånt.
En relativt stor fördel med denna lösning är att man slipper peta in en massa specialscript som man kanske glömmer bort var de ligger. Man konfigurerar bara fönsterhanteraren för autologin.