Installation SHC 2.2.0 von Grund auf

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • Installation SHC 2.2.0 von Grund auf

      Anbei ein Tutorial welches ich für mich nutze. Ich setze voraus, das die SD Karte frisch formatiert wurde.
      Die Wandlung von DHCP in eine statische IP nehme ich direkt am Raspberry vor, da es mir schon passiert ist, wenn ich es über das Terminal mache mir das Image zerschossen wurde. Der Grund ist mir nicht bekannt. Als Terminal um auf den Raspi zuzugreifen benutze ich einen Imac.

      Die Anleitung soll als Checkliste bzw. als Ergänzung zur SHC Wiki verstanden werden. Ich kann nicht garantieren, dass sie Fehlerfrei ist. Anregungen und Verbesserungen bitte posten. Ich werde dann Angleichungen vornehmen. Die Liste ist auch als PDF im Anhang.

      Letztes Update 19.06.15

      Source Code

      1. Image auf SD
      2. diskutil list
      3. sudo diskutil unmount /dev/disk2s1
      4. sudo dd bs=1m if=2015-05-05-raspbian-wheezy.img of=/dev/disk2
      5. sudo diskutil eject /dev/rdisk2
      6. SD Karte im Raspi booten
      7. raspi-config     ausführen
      8. ————————————————————————————————————————————————————————————————
      9. Static IP
      10. Hier hat sich einiges mit Wheezy vom 05.05.2015 geändert. So das es mehrere Wege gibt. Bitte google benutzen. Mittlerweile verändere ich nichts mehr in der /etc/network/interfaces und lege die IP in der Fritzbox anhand der MÄC Adresse fest.
      11. netstat -r -n
      12. sudo nano /etc/network/interfaces  
      13. iface eth0 inet static
      14. address 192.168.200.120
      15. netmask 255.255.255.0
      16. gateway 192.168.200.1
      17. dns-nameservers 192.168.200.1
      18. sudo /etc/init.d/networking restart
      19. Ab wheezy vom 05.05.2015 und den Raspi Modellen 2 und B+ muss noch zusätzlich
      20. sudo update-rc.d dhcpcd disable
      21. eingegeben werden. Ansonsten bezieht der Raspi noch eine zusätzliche IP über DHCP.
      22. Rückgängig kann man das mit:
      23. sudo update-rc.d dhcpcd enable
      24. ——————————————————————————————————————————————————————————————————————————
      25. Weiter mit dem Terminal vom Imac
      26. sudo nano /boot/config.txt
      27. dtoverlay=w1-gpio         am Ende einfügen
      28. sudo nano /etc/modules
      29. w1-gpio pullup=1  
      30. w1-therm
      31. Installation
      32. ~ $ sudo apt-get update
      33. ~ $ sudo apt-get upgrade -y
      34. ~ $ sudo apt-get install git-core
      35. ~ $ sudo apt-get install php5-common php5-cgi php5-cli php-apc
      36. ~ $ sudo apt-get install apache2 libapache2-mod-php5
      37. ———————————————————————————————————————————————————-
      38. Pilight Installieren wenn benötigt!
      39. sudo su
      40. sudo nano /etc/apt/sources.list
      41. Einfügen
      42. deb http://apt.pilight.org/ stable main
      43. root@pilight:~# wget -O - http://apt.pilight.org/pilight.key | apt-key add -
      44. root@pilight:~# apt-get update
      45. root@pilight:~# apt-get install pilight
      46. root@pilight:~# service pilight start
      47. root@pilight:~# service pilight stop
      48. root@pilight:~# su pi
      49. Pilight Webserver disable
      50. Zusätzlich kann in der /etc/pilight/config.json Datei die Weboberfläche von Pilight deaktiviert werden, dieser wird vom SHC geliefert.
      51. "webserver-enable": 0
      52. ————————————————————————————————————————————————————————————————————————
      53. Installation Reds und PHPRedis
      54. ~ $ sudo apt-get install redis-server
      55. PHPRedis muss von GitHub geholt und kompiliert werden.
      56. ~ $ sudo apt-get install php5-dev
      57. ~ $ cd /opt
      58. /opt $ sudo git clone https://github.com/phpredis/phpredis.git
      59. /opt $ cd phpredis/
      60. /opt/phpredis $ sudo phpize
      61. /opt/phpredis $ sudo ./configure
      62. /opt/phpredis $ sudo make && sudo make install
      63. /opt/phpredis & sudo touch /etc/php5/conf.d/500-redis.ini
      64. /opt/phpredis & sudo chmod 0777 /etc/php5/conf.d/500-redis.ini
      65. /opt/phpredis & echo "extension=redis.so" >> /etc/php5/conf.d/500-redis.ini
      66. [b]Es hat sich für mich gezeigt, dass es besser ist den fstab Eintrag erst dann vorzunehmen, wenn alles läuft.
      67. [u][/u][/b]
      68. Folgende Zeile in die /etc/fstab Datei eingetragen:
      69. Achtung: Will man den shc Folder einmal mit: sudo rm -R shc löschen, muss die Zeile vorher in der fstab auskommentiert werden! Sonst ist kein vollständiges löschen möglich!
      70. sudo nano /etc/fstab
      71. tmpfs         /var/www/shc/rwf/data/cache      tmpfs   nosuid,size=5M         0       0
      72. Letzte Zeile Leerzeile
      73. Neustart!!
      74. cd /var/www
      75. /var/www $ sudo git clone https://github.com/agent4788/SHC_Framework
      76. /var/www $ sudo mv SHC_Framework/ shc/
      77. /var/www $ sudo chmod 0777 -R shc/
      78. /var/www $ cd shc/
      79. /var/www/shc $ php shc_install.php  Achtung: Ab Version 2.2.4 :   php install.php
      80. /var/www/shc $ sudo chmod 0777 -R ./
      81. Wer zusätzlich das PCC installieren möchte muss noch folgende Befehle ausführen:
      82. /var/www/shc $ php pcc_install.php
      83. /var/www/shc $ sudo chmod 0777 -R ./
      84. Nach diesen Schritten ist die Weboberfläche einsatzbereit und sollte unter http://localhost/shc?app=shc erreichbar sein. Doppelpunkt Port nicht vergessen, wenn er geändert wurde!
      85. Mit dem Benutzernamen "admin" und dem Passwort "admin" kann man sich am SHC anmelden.
      86. /var/www/shc $ php index.php app=shc -sh
      87. /var/www/shc $ php index.php app=shc -ss -c
      88. Dienste anzeigen
      89. php index.php app=shc -ds
      90. sudo service shcd stop
      91. sudo service shcd start
      92. wiringPi Installieren
      93. ~ $
      94. ~ $ git clone git://git.drogon.net/wiringPi
      95. ~ $ cd wiringPi
      96. ~ $ git pull origin
      97. ~ $ ./build
      98. rcswitch-Pi installieren
      99. ~ $ cd /opt
      100. /opt $ sudo git clone https://github.com/r10r/rcswitch-pi.git
      101. /opt $ cd rcswitch-pi
      102. /opt/rcswitch-pi $ sudo make
      103. Test
      104. Beispiel: Hauscode 10001 Lampe 1 An
      105. $ sudo /opt/rcswitch-pi/send 10001 1 1
      106. sudo visudo
      107. Nur die benutzten Anwendungen eintragen!
      108. www-data ALL = NOPASSWD:  /opt/rcswitch-pi/send
      109. www-data ALL = NOPASSWD:  /sbin/reboot, /sbin/halt
      110. www-data ALL = NOPASSWD:  /var/www/shc/shc/lib/external/python/dht.py
      111. www-data ALL = NOPASSWD:  /var/www/shc/shc/lib/external/python/bmp.py
      112. www-data ALL = NOPASSWD:  /usr/local/bin/pilight-send
      113. Test
      114. ~ $ cd /var/www/shc
      115. /var/www/shc $ php index.php app=shc -ss
      116. Autostart der Dienste einrichten
      117. /var/www/shc $ sudo mv shcd.sh /etc/init.d/shcd
      118. /var/www/shc $ sudo update-rc.d shcd defaults
      119. Sensoren in /etc/modules eintragen
      120. DS18x20
      121. sudo nano /etc/modules
      122. w1-gpio
      123. w1-therm
      124. Auslesen siehe SHC Wiki Troubleshooting
      125. BMP085
      126. In der raspi-config I2C Bus einschalten!!!!
      127. git clone https://github.com/adafruit/Adafruit_Python_BMP
      128. cd Adafruit_Python_BMP
      129. $ sudo python setup.py install
      130. sudo nano /etc/modules
      131. i2c-bcm2708
      132. i2c-dev
      133. In /etc/modprobe.d/raspi-blacklist.conf sind die blacklist Einträge zu entfernen oder auszukommentieren:
      134. #blacklist spi-bcm2708
      135. #blacklist i2c-bcm2708
      136. sudo apt-get install python-smbus i2c-tools
      137. sudo adduser pi i2c
      138. i2cdetect -y 1
      139. Address 77 sollte jetzt angezeigt werden
      140. BMP auslesen
      141. sudo python /var/www/shc/shc/lib/external/python/bmp.py
      142. DHT22 Installieren
      143. ~ $ sudo apt-get install build-essential python-dev
      144. ~ $ git clone https://github.com/adafruit/Adafruit_Python_DHT
      145. ~ $ cd Adafruit_Python_DHT
      146. ~/Adafruit_Python_DHT $ sudo python setup.py install
      147. /var/www/shc $ php index.php app=shc -ss -c
      148. DHT22 anmelden
      149. /var/www/shc $ php index.php app=shc -st -addDHT <id (0-999)> <typ (11|22|2302)> <pin (BCM Pin Nummer)>
      150. Beispiel 2 DHT22 einer mit Id22 und einer mit Id 23 Pin 22 und Pin 4
      151. cd /var/www/shc
      152. php index.php app=shc -st -addDHT 22 22 22
      153. php index.php app=shc -st -addDHT 23 22 4
      154. php index.php app=shc -st -listDHT
      155. ID
      156. php index.php app=shc -st -removeDHT XX
      157. DHT22 auslesen
      158. Beispiel wenn als Id 22 und Pin 4 gewählt wurde Typ Pin
      159. sudo python /var/www/shc/shc/lib/external/python/dht.py 22 4
      160. Restore vom SHC Backup hat sich mit der SHC Vers 2.2 geändert und vereinfacht.
      161. Dies wird jetzt im Terminal mit der restore.php gemacht.
      162. Restore SHC Vers. 2.0
      163. pi@SHC2 /var/www/shc/shc/backup $ unzip shc_2014_12_28.zip
      164. Zum Beispiel die swichables.xml
      165. pi@SHC2 /var/www/shc/shc/backup/shc/data/storage $ cp -f switchables.xml /var/www/shc/shc/data/storage
      166. oder
      167. pi@ShcMaster /var/www/shc/shc/backup $ sudo cp -r rwf  /var/www/shc
      168. pi@ShcMaster /var/www/shc/shc/backup $ sudo cp -r shc  /var/www/shc
      169. Backup SD Karte
      170. diskutil list device checken, hier dev disk2
      171. sudo dd if=/dev/rdisk2 of=~/Backups/Raspberry-Pi/RaspiTest.img bs=1m
      172. sudo dd if=/dev/rdisk2 of=~/Backups/Raspberry-Pi/SHC220_Master_1.img bs=1m
      173. sudo dd if=/dev/rdisk2 of=~/Backups/Raspberry-Pi/SHC220_Slave_Wintergarten.img bs=1m
      174. sudo dd if=/dev/rdisk2 of=~/Backups/Raspberry-Pi/SHC220_Slave_Flur.img bs=1m
      175. sudo dd if=/dev/rdisk2 of=~/Backups/Raspberry-Pi/SHC203.img bs=1m
      176. sudo diskutil eject /dev/rdisk2
      177. Restore
      178. sudo diskutil unmount /dev/disk2s1
      179. sudo dd bs=1m if=~/Backups/Raspberry-Pi/RaspiTest.img of=/dev/disk2
      180. sudo dd bs=1m if=~/Backups/Raspberry-Pi/SHC220_Master_11_6_15.img of=/dev/disk2
      181. sudo dd bs=1m if=~/Backups/Raspberry-Pi/SHC220_Slave_Wintergarten.img of=/dev/disk2
      182. sudo dd bs=1m if=~/Backups/Raspberry-Pi/SHC220_Slave_Flur.img of=/dev/disk2
      183. sudo dd bs=1m if=~/Backups/Raspberry-Pi/SHC203.img of=/dev/disk2
      184. sudo diskutil eject /dev/rdisk2
      185. Fehlermeldung:= Normal
      186. pi@SHC2 /var/www/shc $ sudo mv shcd.sh /etc/init.d/shcd
      187. pi@SHC2 /var/www/shc $ sudo update-rc.d shcd defaults
      188. update-rc.d: using dependency based boot sequencing
      189. update-rc.d: warning: default stop runlevel arguments (0 1 6) do not match shcd Default-Stop values (none)
      190. „TASTER“ Countdown weniger als 30 Sekunden
      191. sudo nano /var/www/shc/shc/lib/form/forms/countdownform.class.php
      192. Zeile 69 suchen und mit folgendem Code ersetzen:
      193. Code: Alles markieren
      194. $interval = new IntegerInputField('interval', ($countdown instanceof Countdown ? $countdown->getInterval() : 0), array('min' => 0, 'max' => 14400, 'step' => 1));
      195. Habe mal ein Countdown mit 1 Sekunde erstellt. Sind bei mir aber paar Sekunden länger als eine.
      Display All
      Files
      SHC Master B2+ WLAN sowie 1 Slave B2+, 2 Slave B+ und 2 Slave Raspi B. 5x Pi Cam; Imac mit OSX El Capitan; Iphone 6 plus; Ipad mini; Lenovo Android Tablet.

      The post was edited 1 time, last by rmjspa ().