Hallo zusammen!
FHEM habe ich ohne größere Schwierigkeiten mithilfe des pdf/wiki/forums einrichten können - an sich funktioniert es wunderbar.
(FB 7240/CUL 886 V3/ FHEM Community Image für FB7170/7270)
Leider verzweifle ich seit Tagen an einem Problem das ich auch durch Suchen im Forum & Google nicht lösen konnte:
- Ich starte FHEM via Telnet
- Ich bekomme folgende Ausgabe
# /var/media/ftp/Generic-FlashDisk-01/fhem/startfhem
swapfile already present ...
Setting up swapspace version 1, size = 33550336 bytes
UUID=fdbf2cba-4bc4-4690-84b6-3c470e167b1a
swapon: ../swapfile: Device or resource busy
additional swap was activated
- Danach funktioniert FHEM einwandfrei über http://fritz.box:8083/fhem (http://fritz.box:8083/fhem)
Wenn ich dann aber die Telnet-Verbindung trenne, wird auch die WEB-Verbindung getrennt "
Connection lost, reconnecting in 5 seconds..." und ich kann FHEM nicht mehr benutzen.
Was mache ich falsch? Oder habe ich alles falsch verstanden und es muss immer eine aktive TELNET-Verbindung stehen? Ich verzweifle hier echt langsam...
Hier noch meine Daten:
fhem.cfg:
attr global autoload_undefined_devices 1
attr global logfile ./log/fhem-%Y-%m.log
attr global modpath .
attr global motd none
attr global nofork 1
attr global statefile ./log/fhem.save
attr global updateInBackground 1
attr global userattr devStateIcon devStateStyle fp_Home icon room_map setList sortby structexclude webCmd
attr global verbose 3
define telnetPort telnet 7072 global
define WEB FHEMWEB 8083 global
define WEBphone FHEMWEB 8084 global
attr WEBphone stylesheetPrefix smallscreen
define WEBtablet FHEMWEB 8085 global
attr WEBtablet stylesheetPrefix touchpad
# Fake FileLog entry, to access the fhem log from FHEMWEB
define Logfile FileLog ./log/fhem-%Y-%m.log fakelog
define autocreate autocreate
attr autocreate filelog ./log/%NAME-%Y.log
define eventTypes eventTypes ./log/eventTypes.txt
# Disable this to avoid looking for new USB devices on startup
# define initialUsbCheck notify global:INITIALIZED usb create
define CUL CUL /dev/ttyACM0@9600 0809
define sz_Kronleuchter FS20 11121112 1111 gm ff
attr sz_Kronleuchter alias Schlafzimmer Licht
attr sz_Kronleuchter eventMap /on:Ein/off:Aus/
attr sz_Kronleuchter model fs20su
attr sz_Kronleuchter room Schlafzimmer
define Home FLOORPLAN
attr Home fp_arrange 1
define fl_Licht FS20 11121112 1112 gm ff
attr fl_Licht alias Flur Licht
attr fl_Licht fp_Home 360,620,2,
attr fl_Licht model fs20di
attr fl_Licht room Flur
attr fl_Licht setList on off
das startfhem-skript
#!/bin/sh
# On the Fritzbox 7270 V1/V2 with missing df replace home with the hardcoded
# path.
#root=`df | sed -n -e '/ftp\//s/.*ftp\///p'`
#home=/var/media/ftp/Generic-FlashDisk-01/fhem
home=/var/media/ftp/Generic-FlashDisk-01/fhem
cd $home
trap "" SIGHUP
modprobe kernel/cdc_acm
modprobe ftdi_sio
sleep 2
# FritzBox 7170, 7270 V1/V2 needs additional swap
# busybox from http://www.busybox.net/downloads/binaries/1.16.1/busybox-mipsel
# should be present on your Box.
# On FritzBox 7170 swap file size 32M is sufficient -> 1024 * 32768
# FritzBox 7170, 7270 V1/V2 needs additional swap
# busybox from http://www.busybox.net/downloads/binaries/1.16.1/busybox-mipsel
# should be present on your Box.
# On FritzBox 7170 swap file size 32M is sufficient -> 1024 * 32768
# test if swapfile already present in fhem directory
if [ -f ../swapfile ]; then
echo "swapfile already present ..."
else
echo "swapfile will be built, please wait ..."
dd if=/dev/zero of=../swapfile bs=1024 count=32768
fi
../busybox/busybox-mipsel mkswap ../swapfile
../busybox/busybox-mipsel swapon ../swapfile
echo "additional swap was activated"
ln -sf $home/FHEM/fhemcmd.sh /var/fhemcmd
PATH=$home:$PATH
export PATH
export LD_LIBRARY_PATH=$home/lib
export PERL5LIB=$home/lib/perl:$home/lib/perl/arch
#export PERL5LIB=$home/lib/perl5/5.10
#stty -echo -echok -echoke -echoe -echonl < /dev/ttyACM0
perl fhem.pl fhem.cfg &>/dev/null
Vielen Dank schonmal für alle die helfen!
Gruß
Ben
Hi,
ich kenne die Fritzbox-Umgebung nicht, aber müsstest Du den
FHEM-Prozess nicht im Hintergrund starten, damit er die Trennung
der Telnet-Session überlebt?
sprich:
/var/media/ftp/Generic-FlashDisk-01/fhem/startfhem &
//sw
Oh, danke, das werde ich gleich mal probieren.
Habe ich denn die gesamte Vorgehensweise zum einrichten von Fhem nicht verstanden oder ist mein Vorgehen s.o. der richtige Weg?
Und wenn ja, habe ich etwas in den Anleitungen übersehen? Das mit dem Hintergrundstarten lese ich nämlich wirklich grad zum ersten Mal!
Schönen Sonntag noch!
Gruß
Ben
Hallo,
also das Connection lost kommt bei mir auch immer mal wieder. Das bedeutet aber nicht, das Fhem nicht mehr läuft. Einfach den Browser mal reloaden lassen. Das mit dem Swapfile macht mir mehr Sorgen. Ohne zusätzlichen swap wird Fhem auf der 7240 nicht vernünftig laufen. Die Kiste hat "nur" 64 MB und die werden schon von AVM gut belegt.
Ich hatte das zunächst auch auf einer 7240 laufen und immer wieder Abstürze, die ich auf Speichermangel zurückgeführt habe - das Ganze mit 64 MB zusätzlichem Swap. Wenn Du ein stabiles System brauchst halte ich die Box für zu klein. Ich würde zu einer größeren raten oder auf Raspberry oder BBB setzen.
Hier: http://www.wehavemorefun.de/fritzbox/FRITZ!Box-Familie#FRITZ.21Box_Fon_WLAN kannst Du die technischen Daten der Boxen sehen.
Gruß Christoph
@ SW: Cool, das scheint das Problem gelöst zu haben. Jetzt bin ich mal gespannt wie lange das ganze gutgeht und ob FHEM einen neustart der FB überlebt.
@ Christoph: Danke für den Tipp, ich habe aktuell ein 32 MB Swapfile, erstellt per Anleitung aus dem FHEM Wiki. Sehe ich in der FritzBox Log ob die Box regelmäßig neu startet?
Dann würde ich das mal beobachten und im schlechtesten Falle doch auf ne 7390 umsteigen...
Gruß
Ben