<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>http://wiki.fhem.de/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Froggy</id>
	<title>FHEMWiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.fhem.de/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Froggy"/>
	<link rel="alternate" type="text/html" href="http://wiki.fhem.de/wiki/Spezial:Beitr%C3%A4ge/Froggy"/>
	<updated>2026-04-13T17:53:19Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=CUN_unter_Windows_7_64_Bit_flashen&amp;diff=37284</id>
		<title>CUN unter Windows 7 64 Bit flashen</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=CUN_unter_Windows_7_64_Bit_flashen&amp;diff=37284"/>
		<updated>2022-03-08T19:35:32Z</updated>

		<summary type="html">&lt;p&gt;Froggy: Geht auch mit Windows 10 und welcher Treiber genau nötig ist&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kurzanleitung zum Flashen eines [[CUN]]/[[CUNO]] unter Windows. Getestet mit&lt;br /&gt;
&lt;br /&gt;
* Windows 7&lt;br /&gt;
* Windows 8&lt;br /&gt;
* Windows 10&lt;br /&gt;
&lt;br /&gt;
== Vorbereitung ==&lt;br /&gt;
# AVRDude ist Teil von WinAVR - download hier: [http://download.savannah.gnu.org/releases/avrdude/ http://download.savannah.gnu.org/releases/avrdude/]&lt;br /&gt;
# Treiber für Windows von Silicon Labs (CP210x VCP) [http://www.silabs.com/products/interface/usbtouart/Pages/usb-to-uart-bridge.aspx http://www.silabs.com/products/interface/usbtouart/Pages/usb-to-uart-bridge.aspx]&lt;br /&gt;
# Aktuelle culfw laden (hier: [http://www.culfw.de/culfw.html http://www.culfw.de/culfw.html])&lt;br /&gt;
# culfw irgendwo hin entpacken&lt;br /&gt;
# CUNO anschließen an PC per USB und dabei den Mikroschalter gedrückt halten -&amp;amp;gt; versetzt den CUNO in den Programmiermodus.&lt;br /&gt;
# Im Geräte-Manager den neuen Treiber einspielen für den Seriellen Port (neuen Treiber suchen und von Laufwerk auswählen) -- war bei mir auf Windows 10 nicht nötig, der Silicon Labs CP210x USB to UART Bridge erschien schon unter Ports (COM &amp;amp; LPT).&lt;br /&gt;
# Bei mir mit Windows 8 war im Geräte-Manager die Baud-Rate auf 9600 voreingestellt. Das habe ich auf 38400 geändert. Ob das nötig war, weiß ich nicht, danach klappte es aber. Bei mir war außerdem ein Neustart erforderlich.&lt;br /&gt;
&lt;br /&gt;
== Das eigentliche Flashen ==&lt;br /&gt;
# CUNO anschließen an PC per USB und dabei den Mikroschalter gedrückt halten -&amp;amp;gt; versetzt den CUNO in den Programmiermodus&lt;br /&gt;
# in den Ordner der die Avrdude.exe enthält die CUNO2.hex aus der culfw reinkopieren&lt;br /&gt;
# Kommandozeilenfenster öffnen und in das Verzeichnis, das die Avrdude.exe enthält wechseln&lt;br /&gt;
# &amp;lt;code&amp;gt;avrdude -p atmega1284p -P /COM9: -b 38400 -c avr109 -U flash:w:CUNO2.hex&amp;lt;/code&amp;gt; ausführen (COM9 ggf. anpassen, siehe Gerätemanager); Anmerkung: Statt &amp;quot;/COM16:&amp;quot; habe ich &amp;quot;com16&amp;quot; geschrieben, denn sonst kam die Fehlermeldung &amp;lt;code&amp;gt;avrdude.exe: ser_open(): can&#039;t open device &amp;quot;/COM16:&amp;quot;: The filename, directory name, or volume label syntax is incorrect.&amp;lt;/code&amp;gt; (Windows 8, avrdude 5.10)&lt;br /&gt;
# (optional) CUNO konfigurieren (siehe hier: [http://culfw.de/commandref.html#cuno_setup http://culfw.de/commandref.html#cuno_setup])&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HOWTOS]]&lt;br /&gt;
[[Kategorie:CUL]]&lt;/div&gt;</summary>
		<author><name>Froggy</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=CUNO&amp;diff=37283</id>
		<title>CUNO</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=CUNO&amp;diff=37283"/>
		<updated>2022-03-08T19:10:19Z</updated>

		<summary type="html">&lt;p&gt;Froggy: /* Links */ Lin in hübsch&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Beschreibung ==&lt;br /&gt;
=== CUNO ===&lt;br /&gt;
Ein CUNO (&#039;&#039;&#039;C&#039;&#039;&#039;C1101 &#039;&#039;&#039;U&#039;&#039;&#039;SB &#039;&#039;&#039;N&#039;&#039;&#039;etwork + OneWire-Anschluss) bietet die gleiche Funktionalität wie ein [[CUL]], wird jedoch nicht als USB-Gerät, sondern mittels LAN-Kabel angeschlossen. Aufgrund der höheren maximalen Kabellänge ist damit eine räumlich getrennte Aufstellung des Funkadapters möglich. Die Kommunikation erfolgt per IP Adresse, die der CUNO per DHCP im Netz automatisch erhält. Der CUNO ist Nachfolger des [[CUN]], jedoch mit einen zusätzlichen One-Wire Anschluss. &lt;br /&gt;
&lt;br /&gt;
=== CUNX ===&lt;br /&gt;
Inzwischen ist der CUNO laut Hersteller &amp;quot;end-of-life&amp;quot; und wird/ist ersetzt durch den [http://www.busware.de/tiki-index.php?page=CUNX CUNX]: einem weitgehend zum CUNO kompatiblen LAN-&amp;quot;CUL&amp;quot;, allerdings &#039;&#039;&#039;ohne eingebaute Onewire-Schnittstelle&#039;&#039;&#039;, dafür &#039;&#039;&#039;mit einem Erweiterungsslot (Pigator-Slot)&#039;&#039;&#039; für diverse [http://www.busware.de/tiki-index.php?page=PIGATOR Module]:&lt;br /&gt;
* CC1101 for FS20/Homematic/MAX!/WMBUS etc. &lt;br /&gt;
* Onewire &lt;br /&gt;
* Z-WAVE &lt;br /&gt;
* EIB/KNX &lt;br /&gt;
* RS485 &lt;br /&gt;
* 2ch S0-meter-interface &lt;br /&gt;
* proprietary Homematic-UART module &lt;br /&gt;
* BLE-Scanner &lt;br /&gt;
* GSM modem &lt;br /&gt;
* CAN &lt;br /&gt;
* wired MBUS &lt;br /&gt;
* DALI &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Hinweise zum Betrieb mit FHEM ==&lt;br /&gt;
Nutzbar, einige Details siehe [[CUL#Hinweise_zum_Betrieb_mit_FHEM]]&lt;br /&gt;
&lt;br /&gt;
== So wird er geflasht (Debian) ==&lt;br /&gt;
=== Übersicht ===&lt;br /&gt;
*AVRDUDE installieren&lt;br /&gt;
*Hex File runterladen [http://sourceforge.net/p/culfw/code/HEAD/tree/trunk/culfw/Devices/CUNO2/CUNO2.hex CUNO2.hex]&lt;br /&gt;
*Vorbereiten CUNO&lt;br /&gt;
*Flashen&lt;br /&gt;
=== Der Reihe nach ===&lt;br /&gt;
 #apt-get install avrdude&lt;br /&gt;
 #wget http://sourceforge.net/p/culfw/code/HEAD/tree/trunk/culfw/Devices/CUNO2/CUNO2.hex?format=raw&lt;br /&gt;
 Jetzt den CUNO mit gedrückter Programmiertaste an den Linux Rechner (mit MiniUSB) verbinden&lt;br /&gt;
 #avrdude -p atmega1284p -P /dev/ttyUSB0 -b 38400 -c avr109 -U flash:w:CUNO2.hex&lt;br /&gt;
&lt;br /&gt;
== Bekannte Probleme ==&lt;br /&gt;
&lt;br /&gt;
Obwohl auf dem CUNO die normale culfw läuft und der CUNO daher auch für HomeMatic eingesetzt werden könnte, ergeben sich aus der Anbindung über TCP/IP zum gegenwärtigen Stand (01.2014) unter Umständen Timingprobleme, die bei HomeMatic eine Rolle spielen können. &lt;br /&gt;
Die genau Ursache der Timingprobleme ist derzeit noch nicht bekannt, vergleiche jedoch diesen&lt;br /&gt;
{{Link2Forum|Topic=17847|Message=119131|LinkText=Forumsbeitrag}}&lt;br /&gt;
&lt;br /&gt;
Daher ist derzeit von einem Einsatz des CUNO als HomeMatic Funkschnittstelle abzuraten. Eine Alternative stellt der [[HM-CFG-LAN LAN Konfigurations-Adapter]] dar.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* Hersteller / Bezugsquelle für CUN: [http://www.busware.de/tiki-index.php?page=CUN busware.de] (EoL)&lt;br /&gt;
* Hersteller / Bezugsquelle für CUNO: [http://www.busware.de/tiki-index.php?page=CUNO busware.de] (EoL)&lt;br /&gt;
* Hersteller / Bezugsquelle für CUNX: [http://www.busware.de/tiki-index.php?page=CUNX busware.de]&lt;br /&gt;
* [https://github.com/tostmann/culfw/tree/culfw-v2.x/Devices/CUNX Firmware (culfw) für CUNX bei busware.de]&lt;br /&gt;
* [[CUN unter Windows 7 64 Bit flashen]] &lt;br /&gt;
* [[CUNO unter OSX flashen]] &lt;br /&gt;
* [[:Kategorie:CUL]] - weitere Seiten rund um CUL und CUN(O) &lt;br /&gt;
* [[CUN Netzwerk einrichten]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Other Components]]&lt;br /&gt;
[[Kategorie:CUL]]&lt;br /&gt;
[[Kategorie:Glossary]]&lt;br /&gt;
[[Kategorie:Interfaces]]&lt;br /&gt;
[[Kategorie:IP Components]]&lt;/div&gt;</summary>
		<author><name>Froggy</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Raspberry_Pi:_GPIOs_schalten&amp;diff=35967</id>
		<title>Raspberry Pi: GPIOs schalten</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Raspberry_Pi:_GPIOs_schalten&amp;diff=35967"/>
		<updated>2021-08-17T20:37:26Z</updated>

		<summary type="html">&lt;p&gt;Froggy: Richtige Überschriften statt fetter Texte&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mit FHEM lassen sich auch die &#039;&#039;&#039;GPIOs&#039;&#039;&#039; des [[Raspberry Pi]] steuern. Generell gibt es einige Möglichkeiten, eine entsprechende Steuerung zu verwirklichen. Als Informationsquelle empfiehlt sich hier die [http://elinux.org/RPi_Low-level_peripherals Low-Level Peripherals Seite des Embedded Linux Wiki]&lt;br /&gt;
&lt;br /&gt;
== Perl-Modul ==&lt;br /&gt;
Das Modul &#039;&#039;&#039;RPI_GPIO&#039;&#039;&#039; für den Zugriff auf die GPIO Pins des Raspberry wird bereits mit FHEM mitgeliefert. Die Ansteuerung der GPIOs erfolgt über das Filesystem (sysFs). Daher werden in den meisten Anwendungsfällen keine weiteren Programme/Treiber benötigt.&amp;lt;br&amp;gt;&lt;br /&gt;
Die [http://wiringpi.com/download-and-install/ WiringPi] Bibliothek wird nur benötigt, wenn die internen Pullups/Pulldowns genutzt werden sollen oder dem FHEM User keine direkten Zugriffsrechte auf das GPIO Verzeichnis gegeben werden können.&amp;lt;br&amp;gt;&lt;br /&gt;
Die GPIOs werden über die BCM GPIO Nummerierung angesprochen und &#039;&#039;&#039;NICHT&#039;&#039;&#039; über die WiringPi Nummerierung.&amp;lt;br&amp;gt;&lt;br /&gt;
Installationsschritte sind in der {{Link2CmdRef}} zu finden. {{Link2Forum|Topic=16519|LinkText=Diskussions Thread im Forum}}&lt;br /&gt;
&lt;br /&gt;
=== Installation ===&lt;br /&gt;
&lt;br /&gt;
Der Benutzer „fhem“ muss Zugriff auf die sysfs dateien haben. Dafür gibt es mehrere Möglichkeiten:&lt;br /&gt;
* Der Benutzer „fhem“ wird der Gruppe „gpio“ hinzugefügt (funktioniert nur unter manchen Distributionen, z.B. Raspbian): &amp;lt;code&amp;gt;sudo adduser fhem gpio&amp;lt;/code&amp;gt;&lt;br /&gt;
* Es werden udev-Regeln erstellt (das macht Raspbian automatisch mit der gpio Gruppe). siehe hierzu https://stackoverflow.com/a/30940526&lt;br /&gt;
* Verwendung vom &amp;quot;WiringPi&amp;quot; tool (s.u.)&lt;br /&gt;
&lt;br /&gt;
==== WiringPi installieren: (normalerweise nicht notwendig) ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo apt-get install git-core&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;git clone git://git.drogon.net/wiringPi&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cd wiringPi&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;./build&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Known issues mit WiringPi =====&lt;br /&gt;
* active_low wird nicht korrekt exportiert, und damit sieht es so aus als wurde das setting ignoriert. Das ist ein Fehler im WiringPi. [https://github.com/blecher-at/WiringPi Gefixte Version]&lt;br /&gt;
&lt;br /&gt;
===== WiringPi für andere Hardware als RaspberryPI =====&lt;br /&gt;
&lt;br /&gt;
[https://github.com/zhaolei/WiringOP Orange PI]&lt;br /&gt;
[https://github.com/blecher-at/WiringOP-Zero Orange PI Zero]&lt;br /&gt;
&lt;br /&gt;
=== FHEM - RPI_GPIO Device erstellen ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;define [Name] RPI_GPIO [port]&amp;lt;/code&amp;gt; z.B.: &amp;lt;code&amp;gt;define GPIO17 RPI_GPIO 17&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um den Port schalten zu können ist es nötig den RPI_GPIO als output zu definieren.&lt;br /&gt;
&amp;lt;code&amp;gt;attr GPIO17 direction output&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&amp;quot;set GPIO17 on&amp;quot; # Pin 17 in High-Zustand versetzen&lt;br /&gt;
&amp;quot;set GPIO17 off&amp;quot; # Pin 17 in Low-Zustand versetzen&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Bash Script ==&lt;br /&gt;
Zum Schalten der GPIOs via Bash kann folgendes Script (fhem-gpio.sh) verwendet werden:&lt;br /&gt;
{{Randnotiz|RNTyp=Info|RNText=Das Script benötigt entsprechende Rechte. Der Benutzer muss dazu in der Gruppe gpio sein! Einfach zum Test kann es auch mit root (z.B. per sudo) aufgerufen werden.}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;#!/bin/bash&lt;br /&gt;
PORT=$1;&lt;br /&gt;
if ! [ -d /sys/class/gpio/gpio$PORT ]&lt;br /&gt;
then&lt;br /&gt;
  echo &amp;quot;$PORT&amp;quot; &amp;gt; /sys/class/gpio/export&lt;br /&gt;
  echo &amp;quot;out&amp;quot; &amp;gt; /sys/class/gpio/gpio$PORT/direction&lt;br /&gt;
fi&lt;br /&gt;
STATE=$2;&lt;br /&gt;
if [ $STATE -ge 1 ]&lt;br /&gt;
then&lt;br /&gt;
  STATE=1&lt;br /&gt;
fi&lt;br /&gt;
echo &amp;quot;$STATE&amp;quot; &amp;gt; /sys/class/gpio/gpio$PORT/value&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Einfachheit halber kann das Script unter /usr/sbin kopiert werden. Für den Aufruf unten muss es ausführbar gemacht werden: &amp;lt;code&amp;gt;sudo chmod +x /usr/sbin/fhem-gpio.sh&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Aufruf des Scripts erfolgt dann mit Angabe der Pinnummer sowie des Zustands des Pins, z.&amp;amp;nbsp;B.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;fhem-gpio.sh 17 1 # Pin 17 in High-Zustand versetzen&lt;br /&gt;
fhem-gpio.sh 17 0 # Pin 17 in Low-Zustand versetzen&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Dummy-Schalter ===&lt;br /&gt;
Über einen Dummy-Schalter kann das Bash-Script dann getriggert werden. (fhem muss in der Grupp gpio sein) &lt;br /&gt;
&lt;br /&gt;
Im Fall von [[FS20 Allgemein|FS20]] sähe eine entsprechende Schalter-Definition beispielsweise so aus:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;perl&amp;quot;&amp;gt;define gpio_17 FS20 [Hauscode] [Devicecode]&lt;br /&gt;
attr gpio_17 dummy 1&lt;br /&gt;
define act_on_gpio_17 notify gpio_17 {\&lt;br /&gt;
 if (&amp;quot;$EVENT&amp;quot; ne &amp;quot;off&amp;quot;) {\&lt;br /&gt;
  system(&amp;quot;fhem-gpio.sh 17 1 &amp;amp;&amp;quot;)\&lt;br /&gt;
 } else {\&lt;br /&gt;
  system(&amp;quot;fhem-gpio.sh 17 0 &amp;amp;&amp;quot;)\&lt;br /&gt;
 }\&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Externe Links ==&lt;br /&gt;
* http://elinux.org/RPi_Low-level_peripherals&lt;br /&gt;
* http://search.cpan.org/~mikem/Device-BCM2835-1.0/lib/Device/BCM2835.pm&lt;br /&gt;
* http://wiringpi.com/download-and-install/&lt;br /&gt;
&lt;br /&gt;
{{SORTIERUNG:GPIOs schalten}}&lt;br /&gt;
[[Kategorie:Raspberry Pi]]&lt;/div&gt;</summary>
		<author><name>Froggy</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Raspberry_Pi:_GPIOs_schalten&amp;diff=35966</id>
		<title>Raspberry Pi: GPIOs schalten</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Raspberry_Pi:_GPIOs_schalten&amp;diff=35966"/>
		<updated>2021-08-17T20:35:27Z</updated>

		<summary type="html">&lt;p&gt;Froggy: Bash-Script und Dummy-Schalter zusammensortiert&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mit FHEM lassen sich auch die &#039;&#039;&#039;GPIOs&#039;&#039;&#039; des [[Raspberry Pi]] steuern. Generell gibt es einige Möglichkeiten, eine entsprechende Steuerung zu verwirklichen. Als Informationsquelle empfiehlt sich hier die [http://elinux.org/RPi_Low-level_peripherals Low-Level Peripherals Seite des Embedded Linux Wiki]&lt;br /&gt;
&lt;br /&gt;
== Perl-Modul ==&lt;br /&gt;
Das Modul &#039;&#039;&#039;RPI_GPIO&#039;&#039;&#039; für den Zugriff auf die GPIO Pins des Raspberry wird bereits mit FHEM mitgeliefert. Die Ansteuerung der GPIOs erfolgt über das Filesystem (sysFs). Daher werden in den meisten Anwendungsfällen keine weiteren Programme/Treiber benötigt.&amp;lt;br&amp;gt;&lt;br /&gt;
Die [http://wiringpi.com/download-and-install/ WiringPi] Bibliothek wird nur benötigt, wenn die internen Pullups/Pulldowns genutzt werden sollen oder dem FHEM User keine direkten Zugriffsrechte auf das GPIO Verzeichnis gegeben werden können.&amp;lt;br&amp;gt;&lt;br /&gt;
Die GPIOs werden über die BCM GPIO Nummerierung angesprochen und &#039;&#039;&#039;NICHT&#039;&#039;&#039; über die WiringPi Nummerierung.&amp;lt;br&amp;gt;&lt;br /&gt;
Installationsschritte sind in der {{Link2CmdRef}} zu finden. {{Link2Forum|Topic=16519|LinkText=Diskussions Thread im Forum}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Installation&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Der Benutzer „fhem“ muss Zugriff auf die sysfs dateien haben. Dafür gibt es mehrere Möglichkeiten:&lt;br /&gt;
* Der Benutzer „fhem“ wird der Gruppe „gpio“ hinzugefügt (funktioniert nur unter manchen Distributionen, z.B. Raspbian): &amp;lt;code&amp;gt;sudo adduser fhem gpio&amp;lt;/code&amp;gt;&lt;br /&gt;
* Es werden udev-Regeln erstellt (das macht Raspbian automatisch mit der gpio Gruppe). siehe hierzu https://stackoverflow.com/a/30940526&lt;br /&gt;
* Verwendung vom &amp;quot;WiringPi&amp;quot; tool (s.u.)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;WiringPi installieren: (normalerweise nicht notwendig)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo apt-get install git-core&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;git clone git://git.drogon.net/wiringPi&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cd wiringPi&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;./build&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Known issues mit WiringPi&#039;&#039;&#039;&lt;br /&gt;
* active_low wird nicht korrekt exportiert, und damit sieht es so aus als wurde das setting ignoriert. Das ist ein Fehler im WiringPi. [https://github.com/blecher-at/WiringPi Gefixte Version]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;WiringPi für andere Hardware als RaspberryPI&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/zhaolei/WiringOP Orange PI]&lt;br /&gt;
[https://github.com/blecher-at/WiringOP-Zero Orange PI Zero]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;FHEM - RPI_GPIO Device erstellen&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;define [Name] RPI_GPIO [port]&amp;lt;/code&amp;gt; z.B.: &amp;lt;code&amp;gt;define GPIO17 RPI_GPIO 17&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um den Port schalten zu können ist es nötig den RPI_GPIO als output zu definieren.&lt;br /&gt;
&amp;lt;code&amp;gt;attr GPIO17 direction output&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&amp;quot;set GPIO17 on&amp;quot; # Pin 17 in High-Zustand versetzen&lt;br /&gt;
&amp;quot;set GPIO17 off&amp;quot; # Pin 17 in Low-Zustand versetzen&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Bash Script ==&lt;br /&gt;
Zum Schalten der GPIOs via Bash kann folgendes Script (fhem-gpio.sh) verwendet werden:&lt;br /&gt;
{{Randnotiz|RNTyp=Info|RNText=Das Script benötigt entsprechende Rechte. Der Benutzer muss dazu in der Gruppe gpio sein! Einfach zum Test kann es auch mit root (z.B. per sudo) aufgerufen werden.}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;#!/bin/bash&lt;br /&gt;
PORT=$1;&lt;br /&gt;
if ! [ -d /sys/class/gpio/gpio$PORT ]&lt;br /&gt;
then&lt;br /&gt;
  echo &amp;quot;$PORT&amp;quot; &amp;gt; /sys/class/gpio/export&lt;br /&gt;
  echo &amp;quot;out&amp;quot; &amp;gt; /sys/class/gpio/gpio$PORT/direction&lt;br /&gt;
fi&lt;br /&gt;
STATE=$2;&lt;br /&gt;
if [ $STATE -ge 1 ]&lt;br /&gt;
then&lt;br /&gt;
  STATE=1&lt;br /&gt;
fi&lt;br /&gt;
echo &amp;quot;$STATE&amp;quot; &amp;gt; /sys/class/gpio/gpio$PORT/value&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Einfachheit halber kann das Script unter /usr/sbin kopiert werden. Für den Aufruf unten muss es ausführbar gemacht werden: &amp;lt;code&amp;gt;sudo chmod +x /usr/sbin/fhem-gpio.sh&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Aufruf des Scripts erfolgt dann mit Angabe der Pinnummer sowie des Zustands des Pins, z.&amp;amp;nbsp;B.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;fhem-gpio.sh 17 1 # Pin 17 in High-Zustand versetzen&lt;br /&gt;
fhem-gpio.sh 17 0 # Pin 17 in Low-Zustand versetzen&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Dummy-Schalter ===&lt;br /&gt;
Über einen Dummy-Schalter kann das Bash-Script dann getriggert werden. (fhem muss in der Grupp gpio sein) &lt;br /&gt;
&lt;br /&gt;
Im Fall von [[FS20 Allgemein|FS20]] sähe eine entsprechende Schalter-Definition beispielsweise so aus:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;perl&amp;quot;&amp;gt;define gpio_17 FS20 [Hauscode] [Devicecode]&lt;br /&gt;
attr gpio_17 dummy 1&lt;br /&gt;
define act_on_gpio_17 notify gpio_17 {\&lt;br /&gt;
 if (&amp;quot;$EVENT&amp;quot; ne &amp;quot;off&amp;quot;) {\&lt;br /&gt;
  system(&amp;quot;fhem-gpio.sh 17 1 &amp;amp;&amp;quot;)\&lt;br /&gt;
 } else {\&lt;br /&gt;
  system(&amp;quot;fhem-gpio.sh 17 0 &amp;amp;&amp;quot;)\&lt;br /&gt;
 }\&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Externe Links ==&lt;br /&gt;
* http://elinux.org/RPi_Low-level_peripherals&lt;br /&gt;
* http://search.cpan.org/~mikem/Device-BCM2835-1.0/lib/Device/BCM2835.pm&lt;br /&gt;
* http://wiringpi.com/download-and-install/&lt;br /&gt;
&lt;br /&gt;
{{SORTIERUNG:GPIOs schalten}}&lt;br /&gt;
[[Kategorie:Raspberry Pi]]&lt;/div&gt;</summary>
		<author><name>Froggy</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Raspberry_Pi:_GPIOs_schalten&amp;diff=35965</id>
		<title>Raspberry Pi: GPIOs schalten</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Raspberry_Pi:_GPIOs_schalten&amp;diff=35965"/>
		<updated>2021-08-17T20:09:16Z</updated>

		<summary type="html">&lt;p&gt;Froggy: /* Bash Script */ Rechteänderung mit chmod, chown hat bei meiner Standard-Installation nicht funktioniert&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mit FHEM lassen sich auch die &#039;&#039;&#039;GPIOs&#039;&#039;&#039; des [[Raspberry Pi]] steuern. Generell gibt es einige Möglichkeiten, eine entsprechende Steuerung zu verwirklichen. Als Informationsquelle empfiehlt sich hier die [http://elinux.org/RPi_Low-level_peripherals Low-Level Peripherals Seite des Embedded Linux Wiki]&lt;br /&gt;
&lt;br /&gt;
== Bash Script ==&lt;br /&gt;
Zum schalten der GPIOs via Bash kann folgendes Script (fhem-gpio.sh) verwendet werden:&lt;br /&gt;
{{Randnotiz|RNTyp=Info|RNText=Das Script benötigt entsprechende Rechte. Der Benutzer muss dazu in der Gruppe gpio sein! Einfach zum Test kann es auch mit root (z.B. per sudo) aufgerufen werden.}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;#!/bin/bash&lt;br /&gt;
PORT=$1;&lt;br /&gt;
if ! [ -d /sys/class/gpio/gpio$PORT ]&lt;br /&gt;
then&lt;br /&gt;
  echo &amp;quot;$PORT&amp;quot; &amp;gt; /sys/class/gpio/export&lt;br /&gt;
  echo &amp;quot;out&amp;quot; &amp;gt; /sys/class/gpio/gpio$PORT/direction&lt;br /&gt;
fi&lt;br /&gt;
STATE=$2;&lt;br /&gt;
if [ $STATE -ge 1 ]&lt;br /&gt;
then&lt;br /&gt;
  STATE=1&lt;br /&gt;
fi&lt;br /&gt;
echo &amp;quot;$STATE&amp;quot; &amp;gt; /sys/class/gpio/gpio$PORT/value&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Einfachheit halber kann das Script unter /usr/sbin kopiert werden. Für den Aufruf unten muss es ausführbar gemacht werden: &amp;lt;code&amp;gt;sudo chmod +x /usr/sbin/fhem-gpio.sh&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Aufruf des Scripts erfolgt dann mit Angabe der Pinnummer sowie des Zustands des Pins, z.&amp;amp;nbsp;B.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;fhem-gpio.sh 17 1 # Pin 17 in High-Zustand versetzen&lt;br /&gt;
fhem-gpio.sh 17 0 # Pin 17 in Low-Zustand versetzen&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Perl-Modul ==&lt;br /&gt;
Das Modul &#039;&#039;&#039;RPI_GPIO&#039;&#039;&#039; für den Zugriff auf die GPIO Pins des Raspberry wird bereits mit FHEM mitgeliefert. Die Ansteuerung der GPIOs erfolgt über das Filesystem (sysFs). Daher werden in den meisten Anwendungsfällen keine weiteren Programme/Treiber benötigt.&amp;lt;br&amp;gt;&lt;br /&gt;
Die [http://wiringpi.com/download-and-install/ WiringPi] Bibliothek wird nur benötigt, wenn die internen Pullups/Pulldowns genutzt werden sollen oder dem FHEM User keine direkten Zugriffsrechte auf das GPIO Verzeichnis gegeben werden können.&amp;lt;br&amp;gt;&lt;br /&gt;
Die GPIOs werden über die BCM GPIO Nummerierung angesprochen und &#039;&#039;&#039;NICHT&#039;&#039;&#039; über die WiringPi Nummerierung.&amp;lt;br&amp;gt;&lt;br /&gt;
Installationsschritte sind in der {{Link2CmdRef}} zu finden. {{Link2Forum|Topic=16519|LinkText=Diskussions Thread im Forum}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Installation&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Der Benutzer „fhem“ muss Zugriff auf die sysfs dateien haben. Dafür gibt es mehrere Möglichkeiten:&lt;br /&gt;
* Der Benutzer „fhem“ wird der Gruppe „gpio“ hinzugefügt (funktioniert nur unter manchen Distributionen, z.B. Raspbian): &amp;lt;code&amp;gt;sudo adduser fhem gpio&amp;lt;/code&amp;gt;&lt;br /&gt;
* Es werden udev-Regeln erstellt (das macht Raspbian automatisch mit der gpio Gruppe). siehe hierzu https://stackoverflow.com/a/30940526&lt;br /&gt;
* Verwendung vom &amp;quot;WiringPi&amp;quot; tool (s.u.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;WiringPi installieren: (normalerweise nicht notwendig)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo apt-get install git-core&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;git clone git://git.drogon.net/wiringPi&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cd wiringPi&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;./build&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Known issues mit WiringPi&#039;&#039;&#039;&lt;br /&gt;
* active_low wird nicht korrekt exportiert, und damit sieht es so aus als wurde das setting ignoriert. Das ist ein Fehler im WiringPi. [https://github.com/blecher-at/WiringPi Gefixte Version]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;WiringPi für andere Hardware als RaspberryPI&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[https://github.com/zhaolei/WiringOP Orange PI]&lt;br /&gt;
[https://github.com/blecher-at/WiringOP-Zero Orange PI Zero]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;FHEM - RPI_GPIO Device erstellen&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;define [Name] RPI_GPIO [port]&amp;lt;/code&amp;gt; z.B.: &amp;lt;code&amp;gt;define GPIO17 RPI_GPIO 17&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um den Port schalten zu können ist es nötig den RPI_GPIO als output zu definieren.&lt;br /&gt;
&amp;lt;code&amp;gt;attr GPIO17 direction output&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&amp;quot;set GPIO17 on&amp;quot; # Pin 17 in High-Zustand versetzen&lt;br /&gt;
&amp;quot;set GPIO17 off&amp;quot; # Pin 17 in Low-Zustand versetzen&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Dummy-Schalter ==&lt;br /&gt;
Über einen Dummy-Schalter kann das Bash-Script dann getriggert werden. (fhem muss in der Grupp gpio sein) &lt;br /&gt;
&lt;br /&gt;
Im Fall von [[FS20 Allgemein|FS20]] sähe eine entsprechende Schalter-Definition beispielsweise so aus:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;perl&amp;quot;&amp;gt;define gpio_17 FS20 [Hauscode] [Devicecode]&lt;br /&gt;
attr gpio_17 dummy 1&lt;br /&gt;
define act_on_gpio_17 notify gpio_17 {\&lt;br /&gt;
 if (&amp;quot;$EVENT&amp;quot; ne &amp;quot;off&amp;quot;) {\&lt;br /&gt;
  system(&amp;quot;fhem-gpio.sh 17 1 &amp;amp;&amp;quot;)\&lt;br /&gt;
 } else {\&lt;br /&gt;
  system(&amp;quot;fhem-gpio.sh 17 0 &amp;amp;&amp;quot;)\&lt;br /&gt;
 }\&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Externe Links ==&lt;br /&gt;
* http://elinux.org/RPi_Low-level_peripherals&lt;br /&gt;
* http://search.cpan.org/~mikem/Device-BCM2835-1.0/lib/Device/BCM2835.pm&lt;br /&gt;
* http://wiringpi.com/download-and-install/&lt;br /&gt;
&lt;br /&gt;
{{SORTIERUNG:GPIOs schalten}}&lt;br /&gt;
[[Kategorie:Raspberry Pi]]&lt;/div&gt;</summary>
		<author><name>Froggy</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Raspberry_Pi&amp;diff=35964</id>
		<title>Raspberry Pi</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Raspberry_Pi&amp;diff=35964"/>
		<updated>2021-08-17T18:38:27Z</updated>

		<summary type="html">&lt;p&gt;Froggy: /* Der einfache Weg zum aktuellen System */ Key über SSL abrufen, um Man-in-the-Middle-Attacke zu verhindern&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Beim [[Raspberry Pi]] handelt es sich um einen postkartengroßen Einplatinen-Computer, der von der Raspberry Pi Foundation entwickelt wird. Die Hardware basiert auf dem BCM 283x SoC (System-on-Chip) von Broadcom, einem ARM-Prozessor. Zu Hardwaredetails und den verschiedenen Modellen sowie Produktentwicklungen siehe [http://de.wikipedia.org/wiki/Raspberry_Pi#Hardware Wikipedia].&lt;br /&gt;
Dank der kleinen Abmessungen, dem recht geringen Energieverbrauch (bis ca. 4 Watt) sowie der günstigen Anschaffungskosten (ca. 30€) ist der Raspberry Pi eine attraktive Hardware für die Heimautomatisierung mit FHEM. Er ist dank dem Linux-Betriebssystem vollständig kompatibel zur aktuell vorhandenen und von FHEM unterstützen Hardware. Das derzeit empfohlene Standard-Image zum Betrieb des Raspberry Pi ist die auf Debian basierende Raspberry Pi OS Distribution (ab Mitte 2019 &#039;&#039;Buster&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
== Installation / Setup ==&lt;br /&gt;
=== Betriebssystem ===&lt;br /&gt;
====Vorbemerkung====&lt;br /&gt;
Raspberry Pi OS ist direkt bei raspberrybi.org unter https://www.raspberrypi.org/downloads/raspberry-pi-os/ herunterladbar. Die folgende Anleitung gilt für die lite-Version ohne grafischen Desktop und für die Modelle für B, B+, B2, B3, B3+, Zero W. (Stand Juni 2018)&lt;br /&gt;
&lt;br /&gt;
Alle in diesem Abschnitt verwendeten Code Blöcke benötigen root Rechte. Deshalb bitte immer am Besten im Kontext &amp;lt;code&amp;gt;sudo su&amp;lt;/code&amp;gt; ausführen. Man kann auch einzelne Befehle mit sudo davor ausführen, allerdings wird die Berechtigung bei Pipe Befehlen nicht durchgereicht. &lt;br /&gt;
&lt;br /&gt;
Alle Dateien müssen im Linux-Format (nur LF als Zeilenende) erzeugt/editiert werden! Unbedingt einen geeigneten Editor verwenden und auf das Format beim Speichern achten!&lt;br /&gt;
&lt;br /&gt;
====SD-Karte vorbereiten====&lt;br /&gt;
Die heruntergeladene Datei muss entpackt und auf die Speicherkarte geschrieben werden. Es gibt dazu verschiedene Tools je nach Betriebssystem. Für Windows ist windisk32imager zu empfehlen, Projektseite [https://sourceforge.net/projects/win32diskimager/]. Für Mac OS gibt es den Pi Filler.&lt;br /&gt;
&lt;br /&gt;
Detaillierte Anleitungen zur Vorgehensweise finden sich für die Betriebssysteme Linux, Mac OS und Windows unter [https://www.raspberrypi.org/documentation/installation/installing-images/README.md Writing an image to the SD card]&lt;br /&gt;
&lt;br /&gt;
Die SD Card enthält nun zwei Partitionen/Laufwerke, wobei das erste Laufwerk unter alle Betriebssystemen lesbar ist. In diesem Laufwerk (/boot) müssen jetzt noch zwei Dateien erzeugt werden:&lt;br /&gt;
* eine leere Datei mit dem Namen ssh, um den (headless) Zugriff per ssh zu ermöglichen (Pi Filler macht dies automatisch). Hinweis: Eine spätere Aktivierung von SSH ist mit &amp;lt;code&amp;gt;sudo raspi-config&amp;lt;/code&amp;gt; (Punkt 5 &amp;quot;Interfacing Options&amp;quot;, dann Punkt 2 SSH) möglich, erfordert dann aber Tastatur und Monitor am RPi.&lt;br /&gt;
* eine Textdatei im Linux Format mit Namen wpa_supplicant.conf und folgendem Inhalt, wenn der Pi sofort mit WLAN starten soll.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;country=DE&lt;br /&gt;
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev&lt;br /&gt;
update_config=1&lt;br /&gt;
network={&lt;br /&gt;
        ssid=&amp;quot;FRITZ!Box 7490&amp;quot;&lt;br /&gt;
        psk=&amp;quot;12345678901234567890&amp;quot; &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* SD Karte auswerfen.&lt;br /&gt;
* SD Karte in Raspberry Pi stecken und booten.&lt;br /&gt;
&lt;br /&gt;
Alternativ kann auch Monitor und Tastatur verwendet werden.&lt;br /&gt;
&lt;br /&gt;
====Anmeldung und Grundkonfiguration====&lt;br /&gt;
Default raspberrypi-os: Host raspberrypi, User pi, Passwort raspberry &lt;br /&gt;
&lt;br /&gt;
Default ubuntu: Host ubuntu, User ubuntu, Passwort ubuntu&lt;br /&gt;
&lt;br /&gt;
Anmeldung entweder lokal oder mit dem Befehl: ssh &amp;lt;user&amp;gt;@&amp;lt;hostname&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Passwort sollte geändert werden, dazu dem Sicherheitshinweis folgen und &amp;lt;code&amp;gt;passwd&amp;lt;/code&amp;gt; eingeben.&lt;br /&gt;
&lt;br /&gt;
Alle unten genannten Befehle müssen mit erhöhten Rechten ausgeführt werden (z. B. sudo)!&lt;br /&gt;
&lt;br /&gt;
Als Erstes sollte: Zeitzone, Sprache und  Hostname angepasst werden. &lt;br /&gt;
Entweder Menügeführt mit &amp;lt;code&amp;gt;sudo raspi-config&amp;lt;/code&amp;gt; &lt;br /&gt;
oder per Script / Shell Befehle:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;# Zeitzone einstellen &amp;amp; Zeitsynchronisierung über das Internet aktivieren&lt;br /&gt;
timedatectl set-timezone Europe/Berlin&lt;br /&gt;
timedatectl set-ntp true&lt;br /&gt;
&lt;br /&gt;
# Konfigurieren lokale Sprache deutsch&lt;br /&gt;
sed -i -e &#039;s/# de_DE.UTF-8 UTF-8/de_DE.UTF-8 UTF-8/&#039; /etc/locale.gen&lt;br /&gt;
locale-gen&lt;br /&gt;
localectl set-locale LANG=de_DE.UTF-8 LANGUAGE=de_DE&lt;br /&gt;
&lt;br /&gt;
# Hostname &lt;br /&gt;
hostnamectl set-hostname mymachine&lt;br /&gt;
&lt;br /&gt;
# System aktualisieren &lt;br /&gt;
apt-get update&lt;br /&gt;
apt-get upgrade&lt;br /&gt;
&lt;br /&gt;
#Neustart&lt;br /&gt;
reboot&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Am Anfang sollte man Befehle nicht verketten, sondern immer auf die Ausgabe warten (es sei denn, man hat Erfahrung): also kein &amp;lt;code&amp;gt;apt-get update &amp;amp;&amp;amp; apt-get upgrade &amp;lt;/code&amp;gt;. Ebenso sollte man nicht mit automatischen Bestätigungen arbeiten, also kein upgrade mit &amp;quot;-y&amp;quot;. Nach einer Installation ist ein aufräumen immer gut, also:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
apt-get autoremove&lt;br /&gt;
apt-get clean&lt;br /&gt;
apt-get purge $(dpkg --get-selections | grep deinstall | cut -f1 | xargs)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Verwendung UART für Zusatzmodule====&lt;br /&gt;
Einige Aufsteckmodule (z.B. HM-MOD-RPI-PCB) für den GPIO Port verwenden die serielle Schnittstelle UART. Der Zugriff auf diese serielle Schnittstelle erfordert eine modellabhängige Konfiguration.&lt;br /&gt;
&lt;br /&gt;
Bei allen Modellen muss die Verwendung der seriellen Linux console an ttyAMA0 deaktiviert werden:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;# seriell-getty Dienst für ttyAMA0 dauerhaft deaktivieren&lt;br /&gt;
systemctl stop serial-getty@ttyAMA0.service&lt;br /&gt;
systemctl disable serial-getty@ttyAMA0.service&lt;br /&gt;
systemctl mask serial-getty@ttyAMA0.service&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Bei den Modellen mit Bluetooth muss die UART aktiviert und umkonfiguriert werden. Hier ein bash Script, welches die Originaldatei entsprechend modifiziert:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# serielle Schnittstelle aktivieren und mit BT Schnittstelle tauschen&lt;br /&gt;
# für Raspberry Pi OS&lt;br /&gt;
config=&amp;quot;/boot/config.txt&amp;quot;&lt;br /&gt;
# für Ubuntu&lt;br /&gt;
#config=&amp;quot;/boot/firmware/usercfg.txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
bash -c &amp;quot;cat &amp;lt;&amp;lt;EOF &amp;gt;&amp;gt; $config&lt;br /&gt;
enable_uart=1&lt;br /&gt;
dtoverlay=miniuart-bt&lt;br /&gt;
core_freq=250&lt;br /&gt;
EOF&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Wer dem nicht traut, der editiert die Datei von Hand (Linux Editor!) und fügt am Ende die drei Zeilen aus dem Script ein, die vor EOF stehen.&lt;br /&gt;
&lt;br /&gt;
Die config Datei von ubuntu verwendet den Befehl include usercfg.txt. Mit Erscheinen des Pi 4 wurden die overlay Dateien umbenannt (Start mit Pi3- entfernt) die alten Namen funktionieren aber noch.&lt;br /&gt;
&lt;br /&gt;
Um die Konfiguration abzuschließen ist ein Neustart erforderlich&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;#Neustart erforderlich &lt;br /&gt;
reboot&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Troubleshooting====&lt;br /&gt;
&#039;&#039;&#039;Kontrolle der seriellen Schnittstelle&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Der Befehl &amp;lt;code&amp;gt;ls -l /dev/ttyAMA0&amp;lt;/code&amp;gt; muss folgende Ausgabe liefern.&lt;br /&gt;
  crw-rw---- 1 root dialout 204, 64 Jun  7 22:56 /dev/ttyAMA0&lt;br /&gt;
Sollte dies nicht der Fall sein, muss der Dienst serial-getty@ttyAMA0.service deaktiviert werden!&lt;br /&gt;
&lt;br /&gt;
Kontrolle der Verlinkung von /dev/serial*&lt;br /&gt;
&lt;br /&gt;
Der Befehl &amp;lt;code&amp;gt;ls -l /dev/serial*&amp;lt;/code&amp;gt; muss folgende Ausgabe liefern.&lt;br /&gt;
* Bei Modellen mit BT und richtiger Konfiguration (funktioniert nur unter Raspberry Pi OS)&lt;br /&gt;
  lrwxrwxrwx 1 root root 7 Jun  7 22:55 /dev/serial0 -&amp;gt; ttyAMA0&lt;br /&gt;
  lrwxrwxrwx 1 root root 5 Jun  7 22:55 /dev/serial1 -&amp;gt; ttyS0&lt;br /&gt;
* Bei den Modellen ohne BT und richtiger Konfiguration&lt;br /&gt;
  lrwxrwxrwx 1 root root 7 Jun  8 18:30 /dev/serial0 -&amp;gt; ttyAMA0&lt;br /&gt;
Sollte das nicht der Fall sein, sind die Einträge in der /boot/config.txt fehlerhaft. &lt;br /&gt;
&lt;br /&gt;
Sollte die serielle Schnittstelle unerwartet nicht funktionieren, kann auch andere Software daran Schuld sein, weil diese einfach versucht, alle Schnittstellen abzufragen / zu initialisieren. Für die Fehlersuche ist es also wichtig zu wissen, welche Software so installiert wurde, speziell wenn diese serielle Schnitttstellen (USB) verwendet / verwenden will. Ein Beispiel (deconz/conbee) wird in {{Link2Forum|Topic=116428|Message=1107317|LinkText=diesem Forenbeitrag}} behandelt. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kontrolle Bluetooth&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Die Funktion von Bluetooth kann mit dem hcitool überprüft werden. Mit &amp;lt;code&amp;gt;hcitool dev&amp;lt;/code&amp;gt; wird das interne BT Gerät mit MAC Adresse angezeigt. Mit &amp;lt;code&amp;gt;hcitool scan&amp;lt;/code&amp;gt; bzw. &amp;lt;code&amp;gt;hcitool lescan&amp;lt;/code&amp;gt; kann nach sichtbaren Geräten gesucht werden.&lt;br /&gt;
&lt;br /&gt;
Weitergehende Informationen zur Anpassung der Konfiguration von Raspberry Pi OS sind nachzulesen auf https://www.raspberrypi.org/documentation/configuration/.&lt;br /&gt;
&lt;br /&gt;
Sollte die Bluetooth Schnittstelle nach der Installation von FHEM nicht funktionieren, hilft es den Dienst abhängig zu starten, siehe diesen Wiki Artikel [[Fhem.service (systemd unit file)]] &lt;br /&gt;
&lt;br /&gt;
=== FHEM ===&lt;br /&gt;
Die Installation von FHEM kann nach der Raspberry Pi OS Installation sehr einfach über das Debian-Repository [http://debian.fhem.de] erfolgen. &lt;br /&gt;
* Es wird unbedingt empfohlen zur Grundinstallation zunächst keine Module, USB Sticks oder ähnliche Zusatzbaugruppen an den IO Ports des Raspberry gesteckt zu haben. &lt;br /&gt;
* Dieser Abschnitt beschreibt nur die Grundinstallation von FHEM auf einem Raspberry Pi mit Raspberry Pi OS! &lt;br /&gt;
* Weitere Installationsschritte sind je nach verwendeten FHEM-Modulen notwendig. &lt;br /&gt;
** Informationen hierzu liefert üblicherweise die {{Link2CmdRef}} zum jeweiligen Modul.&lt;br /&gt;
** Den weiteren Einstieg in FHEM findet man im Artikel [[Quick-Start]]&lt;br /&gt;
&lt;br /&gt;
==== Der einfache Weg zum aktuellen System ====&lt;br /&gt;
Der folgende Befehlsblock ist die praktische Umsetzung der Beschreibung auf http://debian.fhem.de. Bitte unbedingt vor Installation rückversichern, ob es dort (insbesondere unter &#039;&#039;The easy way: use apt-get&#039;&#039;) Aktualisierungen gab. &lt;br /&gt;
* Dieser Befehlsblock erfordert erhöhte Rechte, also bitte als Erstes &amp;lt;code&amp;gt;sudo su&amp;lt;/code&amp;gt; ausführen!&lt;br /&gt;
* Beim Kopieren aufpassen! Jede Zeile muss einzeln ausgeführt werden!&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;# von debian.fhem.de installieren - siehe aktuelle Anleitung dort https://debian.fhem.de/&lt;br /&gt;
wget -qO - https://debian.fhem.de/archive.key | apt-key add -&lt;br /&gt;
echo &amp;quot;deb http://debian.fhem.de/nightly/ /&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
apt-get update&lt;br /&gt;
apt-get install fhem&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Das offizielle Release ====&lt;br /&gt;
Man kann FHEM mit dem Debian-Paket von [https://fhem.de/#Installation fhem.de] installieren. Dieser Weg führt zu einem offiziellen Release, welches aber unter Umständen erheblich vom aktuellen Versions- und Diskussionsstand im Forum abweicht. &lt;br /&gt;
&lt;br /&gt;
Alternativ kann man auch den manuellen Weg von https://debian.fhem.de/ wählen.&lt;br /&gt;
&lt;br /&gt;
==== Empfohlener Patch ====&lt;br /&gt;
Da gerade auf dem Raspberry die automatische Erkennung der USB Schnittstellen zu 100% CPU Last führt (FHEM träge und reagiert nicht), wird empfohlen sofort nach der Installation noch diesen &amp;quot;Patch&amp;quot; auszuführen: FHEM starten, wenn alle USB-Geräte ausgesteckt sind. Dann &amp;lt;code&amp;gt;attr initialUsbCheck disable 1&amp;lt;/code&amp;gt; in der Kommandozeile in FHEMWEB eingeben, &amp;lt;code&amp;gt;save&amp;lt;/code&amp;gt; ausführen und FHEM anschließen wieder mit eingesteckten USB-Geräten neu starten.&lt;br /&gt;
&lt;br /&gt;
==== Deinstallation ====&lt;br /&gt;
Man kann FHEM auch wieder spurlos vom System entfernen und ganz von vorn beginnen. Allerdings sollte man sich im Klaren sein, damit ensteht kein jungfräuliches System!&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;sudo apt-get purge fhem&lt;br /&gt;
sudo apt-get autoremove&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Zusatzpakete bei FHEM-Erst- und Zweitinstallation ===&lt;br /&gt;
Nachdem der RPi eingerichtet ist, können weitere Pakete installiert werden. Keines davon ist zwingend erforderlich, um das Grundgerüst von FHEM betreiben zu können. Einige Pakete erhöhen aber den Bedienungskomfort, andere sind zur Nutzung bestimmter weiterer FHEM-Module (siehe {{Link2CmdRef}}) erforderlich. &lt;br /&gt;
&lt;br /&gt;
Hierzu wurden in letzter Zeit mehrere Hilfsmodule entwickelt, die insbesondere bei Wiederinstallation (etwa nach Absturz) wichtig sein können. So zeigt das Modul Installer die installierten Perl-Module an, siehe dazu {{Link2Forum|Topic=98381|LinkText=diesen Thread}}.&lt;br /&gt;
&lt;br /&gt;
Wenn man eine frühere Installation auf einer anderen SD-Karte installieren möchte und nicht mehr weiß, welche Zusatzpakete man auf der alten Karte installiert hatte, hilft (diese und nachfolgende Hinweise sind aus dem Blog [https://heinz-otto.blogspot.com/2019/07/infos-zur-installation-von-modulen-und.html])&lt;br /&gt;
 zcat $(ls -tr /var/log/apt/history.log.*.gz)|grep -A1 Start-Date&lt;br /&gt;
weiter. Hier werden frühere Eingaben der Kommandozeile wiedergegeben. Es gibt einen analogen Befehl, um die mit CPAN installierten Pakete anzuzeigen. Dazu muss man das debian Paket perl-doc installiert haben und gibt dann ein&lt;br /&gt;
 for M in `perldoc -t perllocal|grep Module |sed -e &#039;s/^.*&amp;quot; //&#039;`; do V=`perldoc -t perllocal|awk &amp;quot;/$M/{y=1;next}y&amp;quot; |grep VERSION |head -n 1`; printf &amp;quot;%30s %s\n&amp;quot; &amp;quot;$M&amp;quot; &amp;quot;$V&amp;quot;; done |sort&lt;br /&gt;
Ebenso kann man herausfinden, ob und durch welches debian-Paket das Perl-Paket installiert wurde. Die zweite Version sucht nur in Paketen die -perl im Namen tragen und läuft damit wesentlich schneller:&lt;br /&gt;
 s=&#039;Device::SerialPort&#039; ## zu diesem Paket wird gesucht&lt;br /&gt;
 perl -M$s -e &#039;&#039; 2&amp;gt;/dev/null &amp;amp;&amp;amp;echo &amp;quot;Modul $s ist vorhanden&amp;quot;&#039;&#039;&lt;br /&gt;
 for i in $(dpkg -l |grep ^ii| awk &#039;{ print $2 }&#039;|tr -d &amp;quot;\r&amp;quot;|tr &amp;quot;\n&amp;quot; &amp;quot; &amp;quot;);do if dpkg -L $i|grep $s &amp;amp;&amp;gt; /dev/null;then echo $i enthält $s;fi;done&lt;br /&gt;
 for i in $(dpkg -l |grep ^ii|grep &#039;\-perl&#039;| awk &#039;{ print $2 }&#039;|tr -d &amp;quot;\r&amp;quot;|tr &amp;quot;\n&amp;quot; &amp;quot; &amp;quot;);do if dpkg -L $i|grep $s &amp;amp;&amp;gt; /dev/null;then echo $i enthält $s;fi;done&lt;br /&gt;
&lt;br /&gt;
Es gibt gute Gründe, die Installation von Perl Modulen über debian-Pakete der Installation über cpan zu bevorzugen. Dazu zählt die Updatefähigkeit und die Geschwindigkeit. Man kann im Internet nach den Paketen suchen, man kann aber auch einfach die Verfügbarkeit für das lokale System testen. Dazu braucht man das Tool apt-file, welches man zuerst installieren muss. Der letzte Befehl lädt den Infocache lokal und dauert etwas:&lt;br /&gt;
 sudo apt-get update&lt;br /&gt;
 sudo apt-get install apt-file&lt;br /&gt;
 sudo apt-file update&lt;br /&gt;
Die folgende Suche nutzt den Umstand, dass in der im Paket enthaltenen Liste der Dateien auch die Doku in der Form &amp;quot;/usr/share/man/man3/IO::File.3perl.gz&amp;quot; enthalten ist. Der search Befehl unten akzeptiert mehrere Modulnamen durch Zeilenumbruch getrennt. In dem Beispiel sind die Modulnamen in einem String durch Leerzeichen getrennt, die Trennung wird in Zeilenumbruch geändert, jede Zeile ergänzt und über stdin an den search Befehl von apt-file übergeben. Die Option -l bewirkt das nur die gefunden Pakete gelistet werden, werden mehrere der abgefragten Modulnamen in einem Paket gefunden, wird es nur einmal gelistet:&lt;br /&gt;
 s=&amp;quot;IO::File Digest::MD5&amp;quot; ##Such-String&lt;br /&gt;
 echo $s|tr &amp;quot; &amp;quot; &amp;quot;\n&amp;quot;|sed &#039;s/$/./;s/^/\//&#039;|apt-file search -l -f -&lt;br /&gt;
&lt;br /&gt;
Zuletzt eine Übersicht diverser Zusatzpakete.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:10%&amp;quot; | Beschreibung&lt;br /&gt;
! style=&amp;quot;width:10%&amp;quot; | Paketname&lt;br /&gt;
! style=&amp;quot;width:50%&amp;quot; | Kontext&lt;br /&gt;
! style=&amp;quot;width:30%&amp;quot; | Installieren&lt;br /&gt;
|-&lt;br /&gt;
|Zeitserver&lt;br /&gt;
|ntpdate&lt;br /&gt;
|Setzt die Systemzeit bei Start des RPi. Wird für FHEM benötigt, da es sonst nicht startet.&lt;br /&gt;
|&amp;lt;code&amp;gt;sudo apt-get install ntpdate&lt;br /&gt;
sudo ntpdate -u de.pool.ntp.org&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Perl JSON&lt;br /&gt;
|JSON&lt;br /&gt;
|Wird von einigen Modulen benötigt, z.B. harmony, iTunes&lt;br /&gt;
|&amp;lt;code&amp;gt;sudo apt-get install libjson-perl&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Samba-Server&lt;br /&gt;
|samba&lt;br /&gt;
|Mittels Samba kann man z.B. den Ordner /opt/fhem als Share freigeben. Dieser Share kann z.B. im Windows-Explorer als Laufwerk verbunden werden, so dass die Bearbeitung von config- und Programmdateien bequem möglich ist. Hier eine hilfreiche [https://www.elektronik-kompendium.de/sites/raspberry-pi/2007071.htm Kurzanleitung] aus der (wenn man auf einen speziellen user verzichtet) nur die Einträge für smb.conf gesetzt werden müssen.&lt;br /&gt;
|&amp;lt;code&amp;gt;sudo apt-get install samba cifs-utils&amp;lt;/code&amp;gt;&lt;br /&gt;
Danach muss der share definiert werden mittels&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/samba/smb.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Mailversand&lt;br /&gt;
|sendemail (alt: sendEmail)&lt;br /&gt;
|Wird benötigt, um Mails versenden zu können, bspw. für Alarm-Benachrichtigungen.&lt;br /&gt;
Nach Installation des Paketes benötigt man noch eine Routine in FHEM gemäß [[E-Mail senden#Raspberry Pi]]&lt;br /&gt;
|&amp;lt;code&amp;gt;sudo apt-get install sendemail&amp;lt;/code&amp;gt; bzw. &amp;lt;code&amp;gt;sudo apt-get install sendEmail&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Wake-on-LAN&lt;br /&gt;
|etherwake&lt;br /&gt;
|Wird z.B. für das Modul WOL benötigt.&lt;br /&gt;
|&amp;lt;code&amp;gt;sudo apt-get install etherwake&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Perl Telnet&lt;br /&gt;
|telnet&lt;br /&gt;
|Wurde vor Fritz!OS 6.2x z.B. für das Modul [[FRITZBOX]] benötigt, da es eine im Netzwerk vorhandene Fritzbox über deren Telnet-Port ansprach. Mittlerweile wird TR-64 und SOAP verwendet.&lt;br /&gt;
|&amp;lt;code&amp;gt;sudo apt-get install libnet-telnet-perl&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Socat&lt;br /&gt;
|socat&lt;br /&gt;
|Kann verwendet werden, um auf anderen Rechnern im Netzwerk Linux-Befehle oder Skripts auszuführen. Auch können auf Slave-FHEM-Installationen Befehl ausgeführt werden, z.B. mit &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;system(&amp;quot;echo &#039;set lampe on&#039; | /usr/bin/socat - TCP:1.2.3.4:7072&amp;quot;);&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.2.3.4 muss natürlich durch die IP-Adresse des Zielrechners ersetzt werden.&lt;br /&gt;
|&amp;lt;code&amp;gt;sudo apt-get install socat&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Libcrypt&lt;br /&gt;
|Libcrypt&lt;br /&gt;
|Perl libcrypt, erforderlich falls Homematic-devices mit AES verwendet werden sollen.&lt;br /&gt;
|&amp;lt;code&amp;gt;sudo apt-get install libcrypt-rijndael-perl&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|libdatetime&lt;br /&gt;
|libdatetime&lt;br /&gt;
|Perl libdatetime, erforderlich für das Weather-Modul.&lt;br /&gt;
|&amp;lt;code&amp;gt;sudo apt-get install libdatetime-format-strptime-perl&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|EnOcean XML functions&lt;br /&gt;
|libxml simple&lt;br /&gt;
|Perl XML::SIMPLE, erforderlich für die XML Funktionen des ENOCEAN Moduls.&lt;br /&gt;
|&amp;lt;code&amp;gt;sudo apt-get install libxml-simple-perl&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|EnOcean Cryptographic functions&lt;br /&gt;
|libcrypt-random-source-perl&lt;br /&gt;
|Perl Crypt::Random, erforderlich für die Cryptographic Funktionen des ENOCEAN Moduls.&lt;br /&gt;
|&amp;lt;code&amp;gt;sudo /usr/bin/perl -MCPAN -e &#039;install Crypt::Random&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Bekannte Probleme ==&lt;br /&gt;
=== Netzteil ===&lt;br /&gt;
Der RPi verwendet ein USB Netzteil als Spannungsversorgung. Gemessen kann der RPi allein bereits um die 900mA Strom fordern. Das bringt kleine Netzteile, besonders wenn noch CULs oder WLAN Sticks an USB hängen schnell an die Grenze. Die Fehler die daraus resultieren sind Abstürze, Netzwerkprobleme uvm. Daher bitte ein ausreichend starkes Netzteil mit mind. 2000mA oder einen aktiven USB-HUB für die Periperie verwenden.&lt;br /&gt;
&lt;br /&gt;
=== Echtzeituhr ===&lt;br /&gt;
Der RPi hat keine [http://de.wikipedia.org/wiki/Echtzeituhr Real-Time-Clock] (RTC), das heißt, dass er nach einem Neustart keine gültige (im Sinne von aktuell) Systemzeit hat, sondern ein Datum in der Vergangenheit. Dieses Problem wird sinnvollerweise mit einer [http://de.wikipedia.org/wiki/Network_Time_Protocol NTP-Konfiguration] oder durch [[Raspberry Pi: RTC Hat|Installation einer Echtzeituhr]] umgangen.&lt;br /&gt;
&lt;br /&gt;
Dabei muss Sorge getragen werden, dass der [http://wiki.debian.org/NTP ntpd] schon einen Datums-/Zeitabgleich gemacht hat, bevor FHEM gestartet wird. Geschieht der Abgleich nicht vorher, sondern erst nachdem FHEM schon läuft, stellt FHEM die Logs zwar auf das nun aktuelle Datum um (die &amp;quot;alten&amp;quot; Logs mit dem eigentlich ungültigen Datum werden natürlich behalten), aber irgendetwas scheint FHEM dabei so zu belasten, dass es eine Last von über 0.8 bis 0.9 erzeugt. Diese Last besteht auf Dauer und verschwindet erst, wenn man das Ganze sauber durchkonfiguriert und FHEM neu gestartet hat. Die hohe Systemauslastung zeigt sich auch in einem sehr trägen Laden der FHEM-Webseiten in einem beliebigen Browser. (siehe {{Link2Forum|Topic=70741}})&lt;br /&gt;
&lt;br /&gt;
=== Last durch Backup (während update) ===&lt;br /&gt;
Bei einen [[Update]] von FHEM durch den Befehl &amp;lt;code&amp;gt;update&amp;lt;/code&amp;gt; kann durch Setzen des Attributs &amp;quot;&amp;lt;code&amp;gt;attr global backup_before_update 1&amp;lt;/code&amp;gt;&amp;quot; automatisch vorab ein [[Backup]] durchgeführt werden. Die (ggf. großen) Log-Dateien werden dabei ebenfalls archiviert. Während der Archivierung ist FHEM blockiert. Durch die beschränkte Leistungsfähigkeit des Raspberry Pi kann das Backup zudem lange dauern. Durch ein &amp;quot;&amp;lt;code&amp;gt;attr global updateInBackground 1&amp;lt;/code&amp;gt;&amp;quot; wird ein Backup im Hintergrund ausgeführt (Quelle: {{Link2Forum|Topic=15729}}). &lt;br /&gt;
&lt;br /&gt;
Alternative Möglichkeiten: &lt;br /&gt;
* Backup ausschalten und manuell durchführen &lt;br /&gt;
* Backup-Befehl anpassen und so große Dateien bzw. Verzeichnisse (log/) nicht archivieren&lt;br /&gt;
&lt;br /&gt;
== Watchdog einrichten ==&lt;br /&gt;
Man kann den RPi regelmäßig prüfen lassen, ob FHEM noch läuft und gegebenenfalls einen Neustart durchführen lassen. Eine mögliche Vorgehensweise ist in diesem {{Link2Forum|Topic=20553|LinkText=Forumsthema}} beschrieben.&lt;br /&gt;
{{Hinweis|Statt des Einsatzes derartiger Methoden ist zu empfehlen, nach der eigentliche Fehlerursache zu forschen und diese abzustellen. Haben Sie dennoch einen solchen Watchdog eingerichtet, sollten Sie bei Fragen zu Ihnen seltsam erscheinenden Phänomänen im Forum darauf hinweisen, auch wenn die Symptome scheinbar nichts mit dem Watchdog zu tun haben sollten.}}&lt;br /&gt;
&lt;br /&gt;
== Interne Links ==&lt;br /&gt;
* [[CUL am Raspberry Pi flashen]]&lt;br /&gt;
* [[Raspberry Pi und 1-Wire]]&lt;br /&gt;
&lt;br /&gt;
== Externe Links ==&lt;br /&gt;
* {{Link2Forum|Topic=33460|Message=264679}} zum Umzug von Raspberry B auf Raspberry Pi 2&lt;br /&gt;
* [http://www.raspberrypi.org/ Offizielle Webseite der Raspberry Pi Foundation]&lt;br /&gt;
* [http://www.raspberrypi.org/downloads Offizielle Downloads der Raspberry Pi Foundation]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Raspberry Pi]]&lt;br /&gt;
[[Kategorie:HOWTOS]]&lt;/div&gt;</summary>
		<author><name>Froggy</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Synology_Diskstation&amp;diff=13117</id>
		<title>Synology Diskstation</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Synology_Diskstation&amp;diff=13117"/>
		<updated>2015-12-02T13:43:41Z</updated>

		<summary type="html">&lt;p&gt;Froggy: /* CUL zum laufen bringen | IPKG installieren */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Fhem Installation auf der Synology Diskstation (ab DSM 5)==&lt;br /&gt;
&lt;br /&gt;
Fhem auf einer Synology Diskstation (DS) zu installieren ist grundsätzlich nicht schwierig. Wichtig ist zunächst eine aktuelle DSM - also Systemupdates auf der DS installieren).&lt;br /&gt;
Zunächst installiert ihr Euch über das Paket-Zentrum der DS das Programm &amp;quot;Perl&amp;quot;. Dann besorgt ihr Euch von Martin Fischer ein kompiliertes Fhem 5.3 - dort gibt es zwei Versionen:&lt;br /&gt;
Wenn Eure DS einen Marvell 6281 oder 9282 Prozessor hat, nehmt die fhem-5.3-mfr-1.1-syno-88f628x.spk (http://www.fischer-net.de/hausautomation/downloads/file/23-fhem-5-3-mfr-1-1-syno-88f628x-spk.html) ansonsten die fhem-5.3-mfr-1.1-syno-noarch.spk (http://www.fischer-net.de/hausautomation/downloads/file/24-fhem-5-3-mfr-1-1-syno-noarch-spk.html).&lt;br /&gt;
&lt;br /&gt;
Dann wieder den Paket-Zentrum der DS aufrufen und &amp;quot;Manuelle Installation&amp;quot; -&amp;gt; entsprechende Datei auswählen -&amp;gt; weiter. Wenn es Mecker gibt wegen Signierung o.ä., dann Paket-Zentrum -&amp;gt; Einstellungen -&amp;gt; Vertrauensebene auf &amp;quot;Jeder Herausgeber&amp;quot;.&lt;br /&gt;
Danach ist Fhem installiert und ihr könnt es über das Paket-Zentrum starten. Dann einfach Fhem aufrufen und als erstes mal ein Update durchführen. &lt;br /&gt;
Nach dem Update die Datei 99_update.pm löschen, siehe [http://forum.fhem.de/index.php/topic,36249.msg285521.html#msg285521 hier]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Um einen CUL damit zu betreiben oder HUEs anzusteuern müssen noch weitere Schritte unternommen werden. (siehe weiter unten)&lt;br /&gt;
&lt;br /&gt;
Hier noch Links zu Wiki-Einträgen für ältere DSM-Versionen / Modelle:&lt;br /&gt;
&lt;br /&gt;
http://www.fhemwiki.de/wiki/Synology_409:_Update_auf_4.0&lt;br /&gt;
&lt;br /&gt;
http://www.fhemwiki.de/wiki/FHEM_auf_dem_Synology_DS408&lt;br /&gt;
&lt;br /&gt;
== CUL zum laufen bringen | IPKG installieren ==&lt;br /&gt;
A.) Zunächst braucht ihr die USB-Treiber: http://forum.synology.com/enu/viewtopic.php?f=155&amp;amp;t=82843&amp;amp;hilit=usbserial - diese einfach über das Paket-Zentrum installieren. Die Zusatzkonfigurationen, die vom Wizard nach der Installation gefragt werden, müssen nicht ausgewählt werden.&lt;br /&gt;
&lt;br /&gt;
B.) Dann braucht ihr das IPKG, damit ihr verschiedene Programme nachladen könnt, die ihr für den Betrieb des CUL benötigt:&lt;br /&gt;
1. Prozessor (CPU) Architektur heraussuchen - http://forum.synology.com/wiki/index.php/What_kind_of_CPU_does_my_NAS_have&lt;br /&gt;
2. Der Prozessor (CPU) Architektur entsprechendes Shell-Script herunterladen und in einem beliebigen Ordner auf der DiskStation speichern - http://forum.synology.com/wiki/index.php/Overview_on_modifying_the_Synology_Server,_bootstrap,_ipkg_etc#Bootstrap&lt;br /&gt;
Wenn ihr den Prozessor Marvel Armada XP oder Marvel Armada 370 habt (z.B. DS 214+), dann schaut hier: https://gist.github.com/marlun78/9349792&lt;br /&gt;
3. Dieses How-to durch arbeiten - http://forum.synology.com/wiki/index.php/How_to_Install_Bootstrap (für den Armada nicht - da steht alles im o.g. Link)&lt;br /&gt;
4. DiskStation neustarten&lt;br /&gt;
&lt;br /&gt;
C) Jetzt braucht ihr die SerialPort Modul.&lt;br /&gt;
Das kann funktionieren mit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;quot;ipkg install gcc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;/usr/local/perl/bin/perl -MCPAN -e shell&amp;quot;) / je nachdem wo Eure perl Installation liegt - bei mir war es &amp;quot;/usr/bin/perl -MCPAN -e shell&amp;quot; &lt;br /&gt;
&lt;br /&gt;
&amp;quot;cpan install Device::SerialPort&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hat es bei mir nicht - ich habe es so geschafft:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;quot;ipkg install perl-device-serialport&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;cp /opt/lib/perl5/site_perl/5.10.0/arm-linux/Device/SerialPort.pm /volume1/@appstore/Perl/lib/perl5/site_perl/Device/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;cp /opt/lib/perl5/site_perl/5.10.0/arm-linux/auto/Device/SerialPort/SerialPort.bs /volume1/@appstore/Perl/lib/perl5/site_perl/auto/Device/SerialPort/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;cp /opt/lib/perl5/site_perl/5.10.0/arm-linux/auto/Device/SerialPort/SerialPort.so /volume1/@appstore/Perl/lib/perl5/site_perl/auto/Device/SerialPort/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Keine der beiden Varianten funktioniert für DS213+ (Stand: Juni 2015). Alternative für DS213+ siehe [[Synology Diskstation DS213+|hier]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
D) ganz wichtig - sonst schmiert Euch der CUL immer wieder ab - synousbmdemd deaktivieren - das habe ich wie folgt gemacht:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mv /usr/syno/sbin/synousbmodemd /usr/syno/sbin/synousbmodemd_bkp&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Bei einem DSM update wird dieser Dienst vermutlich wieder installiert - daher nach einem Update same procedure as every year.&lt;br /&gt;
&lt;br /&gt;
Der &amp;quot;Security Advisor&amp;quot; erkennt diese Änderung und glaubt, dass sich eine Malware auf dem NAS breitgemacht hätte. Man erhält deswegen eine entsprechende Warnung.&lt;br /&gt;
&lt;br /&gt;
== Wichtig: Logfile auf USB auslagern ==&lt;br /&gt;
Damit die DS auch ab und zu mal die Platten zum schlafen schicken kann, solltet ihr die Logfiles auf ein USB-Laufwerk auslagern. Dazu einfach eines an die DS anschließen und im File-Explorer nachschauen, wie das Laufwerk benannt wurde (z.B. volumeUSB1). Dann Fhem runterfahren (&amp;quot;shutdown&amp;quot;), anschließend als root über z.B. putty mit der DS verbinden, das Log-Verzeichnis auf den Stick verschieben und einen Link anlegen - z.B. so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mv /usr/local/FHEM/var/log /volumeUSB1/usbshare/fhem/log&lt;br /&gt;
&lt;br /&gt;
ln -s /volumeUSB1/usbshare/fhem/log /usr/local/FHEM/var/log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dann Fhem wieder starten und es sollte klappen.&lt;br /&gt;
&lt;br /&gt;
== Inhalt von Fhem-Verzeichnissen aus Windows direkt bearbeiten ==&lt;br /&gt;
Hier gibt es mehrere Möglichkeiten. Entweder ihr verbindet Euch über WinSCP mit der DS. Oder aber ihr verschiebt und verknüpft noch weitere Teile der Fhem Installation auf den Stick (siehe Logfile auf USB auslagern). Hier wäre ich allerdings vorsichtig, da kann Fhem zickig werden. Ich persönlich habe mir die fhem.cfg auf diese Weise noch auf den Stick geschoben - also das /usr/local/FHEM/etc Verzeichnis analog obiger Beschreibung zum Logfile. Darüber hinaus könnt ihr auch einfach Dateien auf Eurem Stick ablegen und im entsprechenden Fhem-Verzeichnis einen Link dazu erstellen - so habe ich das z.B. mit meinen pm-Files gemacht - z.B.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ln -s /volumeUSB1/usbshare/fhem/99_myUtils.pm /usr/local/FHEM/share/fhem/FHEM/99_myUtils.pm&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== HUE auf der Synology Diskstation ==&lt;br /&gt;
Da auf der DS standardmäßig kein JSON installiert ist, muss dies nachinstalliert werden (Danke an Patlinger für die Anleitung). Wichtig - ihr braucht IPKG (siehe CUL zum Laufen bringen):&lt;br /&gt;
&lt;br /&gt;
1. Per SSH verbinden (Befehl &amp;quot;ssh &amp;lt;ip-adresse&amp;gt; -l root&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
2. Superuser aktivieren (Befehl &amp;quot;su&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
3. &amp;quot;make&amp;quot; installieren (Befehl &amp;quot;ipkg install make&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
4. PERL und CPAN starten (Befehl &amp;quot;/usr/local/perl/bin/perl -MCPAN -e shell&amp;quot;) / je nachdem wo Eure perl Installation liegt - bei mir war es &amp;quot;/usr/bin/perl -MCPAN -e shell&amp;quot;&lt;br /&gt;
&lt;br /&gt;
5. CPAN updaten (Befehl &amp;quot;install CPAN&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
6. JSON installieren (Befehl &amp;quot;install JSON&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
7. Per telnet verbinden (Befehl &amp;quot;telnet &amp;lt;ip-adresse&amp;gt; &amp;lt;port (7072)&amp;gt;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
8. FHEM Update durchführen (Befehl &amp;quot;update&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
9. FHEM Neustart (Befehl &amp;quot;shutdown restart&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
10. Hue Bridge hinzufügen (Befehl &amp;quot;define &amp;lt;Name-für-die-Bridge&amp;gt; HUEBridge &amp;lt;ip-adresse-der-Hue-Bridge&amp;gt;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
11. Taste an der Hue Bridge drücken um das &amp;quot;Pairing&amp;quot; zu bestätigen.&lt;br /&gt;
&lt;br /&gt;
12. GANZ WICHTIG - Wenn&#039;s jetzt einmal läuft, dann nicht vergessen die Konfiguration zu speichern! (Befehl &amp;quot;save&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
== Net::Telnet installieren ==&lt;br /&gt;
Net::Telnet benötigt ihr beispielsweises für das geniale Modul FRITZBOX, dass Euch viele Möglichkeiten eröffnet, wenn ihr einen solchen Router besitzt.&lt;br /&gt;
&lt;br /&gt;
Los gehts wie üblich mit &lt;br /&gt;
&amp;lt;code&amp;gt;&amp;quot;/usr/bin/perl -MCPAN -e shell&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
Der Pfad zu perl kann bei Euch auch anders lauten, siehe oben. Dann seid ihr fast fertig, nur noch folgendes eingeben - und fertig:&lt;br /&gt;
&amp;lt;code&amp;gt;install Net::Telnet&amp;lt;/code&amp;gt;&lt;br /&gt;
[[Kategorie:HOWTOS]]&lt;br /&gt;
[[Kategorie:Synology]]&lt;/div&gt;</summary>
		<author><name>Froggy</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Synology_Diskstation&amp;diff=13116</id>
		<title>Synology Diskstation</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Synology_Diskstation&amp;diff=13116"/>
		<updated>2015-12-02T13:38:55Z</updated>

		<summary type="html">&lt;p&gt;Froggy: /* CUL zum laufen bringen | IPKG installieren */ Unnötige Zusatzoptionen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Fhem Installation auf der Synology Diskstation (ab DSM 5)==&lt;br /&gt;
&lt;br /&gt;
Fhem auf einer Synology Diskstation (DS) zu installieren ist grundsätzlich nicht schwierig. Wichtig ist zunächst eine aktuelle DSM - also Systemupdates auf der DS installieren).&lt;br /&gt;
Zunächst installiert ihr Euch über das Paket-Zentrum der DS das Programm &amp;quot;Perl&amp;quot;. Dann besorgt ihr Euch von Martin Fischer ein kompiliertes Fhem 5.3 - dort gibt es zwei Versionen:&lt;br /&gt;
Wenn Eure DS einen Marvell 6281 oder 9282 Prozessor hat, nehmt die fhem-5.3-mfr-1.1-syno-88f628x.spk (http://www.fischer-net.de/hausautomation/downloads/file/23-fhem-5-3-mfr-1-1-syno-88f628x-spk.html) ansonsten die fhem-5.3-mfr-1.1-syno-noarch.spk (http://www.fischer-net.de/hausautomation/downloads/file/24-fhem-5-3-mfr-1-1-syno-noarch-spk.html).&lt;br /&gt;
&lt;br /&gt;
Dann wieder den Paket-Zentrum der DS aufrufen und &amp;quot;Manuelle Installation&amp;quot; -&amp;gt; entsprechende Datei auswählen -&amp;gt; weiter. Wenn es Mecker gibt wegen Signierung o.ä., dann Paket-Zentrum -&amp;gt; Einstellungen -&amp;gt; Vertrauensebene auf &amp;quot;Jeder Herausgeber&amp;quot;.&lt;br /&gt;
Danach ist Fhem installiert und ihr könnt es über das Paket-Zentrum starten. Dann einfach Fhem aufrufen und als erstes mal ein Update durchführen. &lt;br /&gt;
Nach dem Update die Datei 99_update.pm löschen, siehe [http://forum.fhem.de/index.php/topic,36249.msg285521.html#msg285521 hier]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Um einen CUL damit zu betreiben oder HUEs anzusteuern müssen noch weitere Schritte unternommen werden. (siehe weiter unten)&lt;br /&gt;
&lt;br /&gt;
Hier noch Links zu Wiki-Einträgen für ältere DSM-Versionen / Modelle:&lt;br /&gt;
&lt;br /&gt;
http://www.fhemwiki.de/wiki/Synology_409:_Update_auf_4.0&lt;br /&gt;
&lt;br /&gt;
http://www.fhemwiki.de/wiki/FHEM_auf_dem_Synology_DS408&lt;br /&gt;
&lt;br /&gt;
== CUL zum laufen bringen | IPKG installieren ==&lt;br /&gt;
A.) Zunächst braucht ihr die USB-Treiber: http://forum.synology.com/enu/viewtopic.php?f=155&amp;amp;t=82843&amp;amp;hilit=usbserial - diese einfach über das Paket-Zentrum installieren. Die Zusatzkonfigurationen, die vom Wizard nach der Installation gefragt werden, müssen nicht ausgewählt werden.&lt;br /&gt;
&lt;br /&gt;
B.) Dann braucht ihr das IPKG, damit ihr verschiedene Programme nachladen könnt, die ihr für den Betrieb des CUL benötigt:&lt;br /&gt;
1. Prozessor (CPU) Architektur heraussuchen - http://forum.synology.com/wiki/index.php/What_kind_of_CPU_does_my_NAS_have&lt;br /&gt;
2. Der Prozessor (CPU) Architektur entsprechendes Shell-Script herunterladen und in einem beliebigen Ordner auf der DiskStation speichern - http://forum.synology.com/wiki/index.php/Overview_on_modifying_the_Synology_Server,_bootstrap,_ipkg_etc#Bootstrap&lt;br /&gt;
Wenn ihr den Prozessor Marvel Armada XP oder Marvel Armada 370 habt (z.B. DS 214+), dann schaut hier: https://gist.github.com/marlun78/9349792&lt;br /&gt;
3. Dieses How-to durch arbeiten - http://forum.synology.com/wiki/index.php/How_to_Install_Bootstrap (für den Armada nicht - da steht alles im o.g. Link)&lt;br /&gt;
4. DiskStation neustarten&lt;br /&gt;
&lt;br /&gt;
C) Jetzt braucht ihr die SerialPort Modul.&lt;br /&gt;
Das kann funktionieren mit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;quot;ipkg install gcc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;/usr/local/perl/bin/perl -MCPAN -e shell&amp;quot;) / je nachdem wo Eure perl Installation liegt - bei mir war es &amp;quot;/usr/bin/perl -MCPAN -e shell&amp;quot; &lt;br /&gt;
&lt;br /&gt;
&amp;quot;cpan install Device::SerialPort&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hat es bei mir nicht - ich habe es so geschafft:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;quot;ipkg install perl-device-serialport&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;cp /opt/lib/perl5/site_perl/5.10.0/arm-linux/Device/SerialPort.pm /volume1/@appstore/Perl/lib/perl5/site_perl/Device/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;cp /opt/lib/perl5/site_perl/5.10.0/arm-linux/auto/Device/SerialPort/SerialPort.bs /volume1/@appstore/Perl/lib/perl5/site_perl/auto/Device/SerialPort/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;cp /opt/lib/perl5/site_perl/5.10.0/arm-linux/auto/Device/SerialPort/SerialPort.so /volume1/@appstore/Perl/lib/perl5/site_perl/auto/Device/SerialPort/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Keine der beiden Varianten funktioniert für DS213+ (Stand: Juni 2015). Alternative für DS213+ siehe [[Synology Diskstation DS213+|hier]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
D) ganz wichtig - sonst schmiert Euch der CUL immer wieder ab - synousbmdemd deaktivieren - das habe ich wie folgt gemacht:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mv /usr/syno/sbin/synousbmodemd /usr/syno/sbin/synousbmodemd_bkp&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Bei einem DSM update wird dieser Dienst vermutlich wieder installiert - daher nach einem Update same procedure as every year.&lt;br /&gt;
&lt;br /&gt;
== Wichtig: Logfile auf USB auslagern ==&lt;br /&gt;
Damit die DS auch ab und zu mal die Platten zum schlafen schicken kann, solltet ihr die Logfiles auf ein USB-Laufwerk auslagern. Dazu einfach eines an die DS anschließen und im File-Explorer nachschauen, wie das Laufwerk benannt wurde (z.B. volumeUSB1). Dann Fhem runterfahren (&amp;quot;shutdown&amp;quot;), anschließend als root über z.B. putty mit der DS verbinden, das Log-Verzeichnis auf den Stick verschieben und einen Link anlegen - z.B. so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mv /usr/local/FHEM/var/log /volumeUSB1/usbshare/fhem/log&lt;br /&gt;
&lt;br /&gt;
ln -s /volumeUSB1/usbshare/fhem/log /usr/local/FHEM/var/log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dann Fhem wieder starten und es sollte klappen.&lt;br /&gt;
&lt;br /&gt;
== Inhalt von Fhem-Verzeichnissen aus Windows direkt bearbeiten ==&lt;br /&gt;
Hier gibt es mehrere Möglichkeiten. Entweder ihr verbindet Euch über WinSCP mit der DS. Oder aber ihr verschiebt und verknüpft noch weitere Teile der Fhem Installation auf den Stick (siehe Logfile auf USB auslagern). Hier wäre ich allerdings vorsichtig, da kann Fhem zickig werden. Ich persönlich habe mir die fhem.cfg auf diese Weise noch auf den Stick geschoben - also das /usr/local/FHEM/etc Verzeichnis analog obiger Beschreibung zum Logfile. Darüber hinaus könnt ihr auch einfach Dateien auf Eurem Stick ablegen und im entsprechenden Fhem-Verzeichnis einen Link dazu erstellen - so habe ich das z.B. mit meinen pm-Files gemacht - z.B.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ln -s /volumeUSB1/usbshare/fhem/99_myUtils.pm /usr/local/FHEM/share/fhem/FHEM/99_myUtils.pm&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== HUE auf der Synology Diskstation ==&lt;br /&gt;
Da auf der DS standardmäßig kein JSON installiert ist, muss dies nachinstalliert werden (Danke an Patlinger für die Anleitung). Wichtig - ihr braucht IPKG (siehe CUL zum Laufen bringen):&lt;br /&gt;
&lt;br /&gt;
1. Per SSH verbinden (Befehl &amp;quot;ssh &amp;lt;ip-adresse&amp;gt; -l root&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
2. Superuser aktivieren (Befehl &amp;quot;su&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
3. &amp;quot;make&amp;quot; installieren (Befehl &amp;quot;ipkg install make&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
4. PERL und CPAN starten (Befehl &amp;quot;/usr/local/perl/bin/perl -MCPAN -e shell&amp;quot;) / je nachdem wo Eure perl Installation liegt - bei mir war es &amp;quot;/usr/bin/perl -MCPAN -e shell&amp;quot;&lt;br /&gt;
&lt;br /&gt;
5. CPAN updaten (Befehl &amp;quot;install CPAN&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
6. JSON installieren (Befehl &amp;quot;install JSON&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
7. Per telnet verbinden (Befehl &amp;quot;telnet &amp;lt;ip-adresse&amp;gt; &amp;lt;port (7072)&amp;gt;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
8. FHEM Update durchführen (Befehl &amp;quot;update&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
9. FHEM Neustart (Befehl &amp;quot;shutdown restart&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
10. Hue Bridge hinzufügen (Befehl &amp;quot;define &amp;lt;Name-für-die-Bridge&amp;gt; HUEBridge &amp;lt;ip-adresse-der-Hue-Bridge&amp;gt;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
11. Taste an der Hue Bridge drücken um das &amp;quot;Pairing&amp;quot; zu bestätigen.&lt;br /&gt;
&lt;br /&gt;
12. GANZ WICHTIG - Wenn&#039;s jetzt einmal läuft, dann nicht vergessen die Konfiguration zu speichern! (Befehl &amp;quot;save&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
== Net::Telnet installieren ==&lt;br /&gt;
Net::Telnet benötigt ihr beispielsweises für das geniale Modul FRITZBOX, dass Euch viele Möglichkeiten eröffnet, wenn ihr einen solchen Router besitzt.&lt;br /&gt;
&lt;br /&gt;
Los gehts wie üblich mit &lt;br /&gt;
&amp;lt;code&amp;gt;&amp;quot;/usr/bin/perl -MCPAN -e shell&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
Der Pfad zu perl kann bei Euch auch anders lauten, siehe oben. Dann seid ihr fast fertig, nur noch folgendes eingeben - und fertig:&lt;br /&gt;
&amp;lt;code&amp;gt;install Net::Telnet&amp;lt;/code&amp;gt;&lt;br /&gt;
[[Kategorie:HOWTOS]]&lt;br /&gt;
[[Kategorie:Synology]]&lt;/div&gt;</summary>
		<author><name>Froggy</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Synology_Diskstation&amp;diff=13040</id>
		<title>Synology Diskstation</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Synology_Diskstation&amp;diff=13040"/>
		<updated>2015-11-26T21:39:18Z</updated>

		<summary type="html">&lt;p&gt;Froggy: /* CUL zum laufen bringen | IPKG installieren */ Für den Marvel Armada 370 gibt es auch kein Bootstrap-Skript&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Fhem Installation auf der Synology Diskstation (ab DSM 5)==&lt;br /&gt;
&lt;br /&gt;
Fhem auf einer Synology Diskstation (DS) zu installieren ist grundsätzlich nicht schwierig. Wichtig ist zunächst eine aktuelle DSM - also Systemupdates auf der DS installieren).&lt;br /&gt;
Zunächst installiert ihr Euch über das Paket-Zentrum der DS das Programm &amp;quot;Perl&amp;quot;. Dann besorgt ihr Euch von Martin Fischer ein kompiliertes Fhem 5.3 - dort gibt es zwei Versionen:&lt;br /&gt;
Wenn Eure DS einen Marvell 6281 oder 9282 Prozessor hat, nehmt die fhem-5.3-mfr-1.1-syno-88f628x.spk (http://www.fischer-net.de/hausautomation/downloads/file/23-fhem-5-3-mfr-1-1-syno-88f628x-spk.html) ansonsten die fhem-5.3-mfr-1.1-syno-noarch.spk (http://www.fischer-net.de/hausautomation/downloads/file/24-fhem-5-3-mfr-1-1-syno-noarch-spk.html).&lt;br /&gt;
&lt;br /&gt;
Dann wieder den Paket-Zentrum der DS aufrufen und &amp;quot;Manuelle Installation&amp;quot; -&amp;gt; entsprechende Datei auswählen -&amp;gt; weiter. Wenn es Mecker gibt wegen Signierung o.ä., dann Paket-Zentrum -&amp;gt; Einstellungen -&amp;gt; Vertrauensebene auf &amp;quot;Jeder Herausgeber&amp;quot;.&lt;br /&gt;
Danach ist Fhem installiert und ihr könnt es über das Paket-Zentrum starten. Dann einfach Fhem aufrufen und als erstes mal ein Update durchführen. &lt;br /&gt;
Nach dem Update die Datei 99_update.pm löschen, siehe [http://forum.fhem.de/index.php/topic,36249.msg285521.html#msg285521 hier]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Um einen CUL damit zu betreiben oder HUEs anzusteuern müssen noch weitere Schritte unternommen werden. (siehe weiter unten)&lt;br /&gt;
&lt;br /&gt;
Hier noch Links zu Wiki-Einträgen für ältere DSM-Versionen / Modelle:&lt;br /&gt;
&lt;br /&gt;
http://www.fhemwiki.de/wiki/Synology_409:_Update_auf_4.0&lt;br /&gt;
&lt;br /&gt;
http://www.fhemwiki.de/wiki/FHEM_auf_dem_Synology_DS408&lt;br /&gt;
&lt;br /&gt;
== CUL zum laufen bringen | IPKG installieren ==&lt;br /&gt;
A.) Zunächst braucht ihr die USB-Treiber: http://forum.synology.com/enu/viewtopic.php?f=155&amp;amp;t=82843&amp;amp;hilit=usbserial - diese einfach über das Paket-Zentrum installieren.&lt;br /&gt;
&lt;br /&gt;
B.) Dann braucht ihr das IPKG, damit ihr verschiedene Programme nachladen könnt, die ihr für den Betrieb des CUL benötigt:&lt;br /&gt;
1. Prozessor (CPU) Architektur heraussuchen - http://forum.synology.com/wiki/index.php/What_kind_of_CPU_does_my_NAS_have&lt;br /&gt;
2. Der Prozessor (CPU) Architektur entsprechendes Shell-Script herunterladen und in einem beliebigen Ordner auf der DiskStation speichern - http://forum.synology.com/wiki/index.php/Overview_on_modifying_the_Synology_Server,_bootstrap,_ipkg_etc#Bootstrap&lt;br /&gt;
Wenn ihr den Prozessor Marvel Armada XP oder Marvel Armada 370 habt (z.B. DS 214+), dann schaut hier: https://gist.github.com/marlun78/9349792&lt;br /&gt;
3. Dieses How-to durch arbeiten - http://forum.synology.com/wiki/index.php/How_to_Install_Bootstrap (für den Armada nicht - da steht alles im o.g. Link)&lt;br /&gt;
4. DiskStation neustarten&lt;br /&gt;
&lt;br /&gt;
C) Jetzt braucht ihr die SerialPort Modul.&lt;br /&gt;
Das kann funktionieren mit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;quot;ipkg install gcc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;/usr/local/perl/bin/perl -MCPAN -e shell&amp;quot;) / je nachdem wo Eure perl Installation liegt - bei mir war es &amp;quot;/usr/bin/perl -MCPAN -e shell&amp;quot; &lt;br /&gt;
&lt;br /&gt;
&amp;quot;cpan install Device::SerialPort&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hat es bei mir nicht - ich habe es so geschafft:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;quot;ipkg install perl-device-serialport&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;cp /opt/lib/perl5/site_perl/5.10.0/arm-linux/Device/SerialPort.pm /volume1/@appstore/Perl/lib/perl5/site_perl/Device/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;cp /opt/lib/perl5/site_perl/5.10.0/arm-linux/auto/Device/SerialPort/SerialPort.bs /volume1/@appstore/Perl/lib/perl5/site_perl/auto/Device/SerialPort/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;cp /opt/lib/perl5/site_perl/5.10.0/arm-linux/auto/Device/SerialPort/SerialPort.so /volume1/@appstore/Perl/lib/perl5/site_perl/auto/Device/SerialPort/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Keine der beiden Varianten funktioniert für DS213+ (Stand: Juni 2015). Alternative für DS213+ siehe [[Synology Diskstation DS213+|hier]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
D) ganz wichtig - sonst schmiert Euch der CUL immer wieder ab - synousbmdemd deaktivieren - das habe ich wie folgt gemacht:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mv /usr/syno/sbin/synousbmodemd /usr/syno/sbin/synousbmodemd_bkp&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Bei einem DSM update wird dieser Dienst vermutlich wieder installiert - daher nach einem Update same procedure as every year.&lt;br /&gt;
&lt;br /&gt;
== Wichtig: Logfile auf USB auslagern ==&lt;br /&gt;
Damit die DS auch ab und zu mal die Platten zum schlafen schicken kann, solltet ihr die Logfiles auf ein USB-Laufwerk auslagern. Dazu einfach eines an die DS anschließen und im File-Explorer nachschauen, wie das Laufwerk benannt wurde (z.B. volumeUSB1). Dann Fhem runterfahren (&amp;quot;shutdown&amp;quot;), anschließend als root über z.B. putty mit der DS verbinden, das Log-Verzeichnis auf den Stick verschieben und einen Link anlegen - z.B. so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mv /usr/local/FHEM/var/log /volumeUSB1/usbshare/fhem/log&lt;br /&gt;
&lt;br /&gt;
ln -s /volumeUSB1/usbshare/fhem/log /usr/local/FHEM/var/log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dann Fhem wieder starten und es sollte klappen.&lt;br /&gt;
&lt;br /&gt;
== Inhalt von Fhem-Verzeichnissen aus Windows direkt bearbeiten ==&lt;br /&gt;
Hier gibt es mehrere Möglichkeiten. Entweder ihr verbindet Euch über WinSCP mit der DS. Oder aber ihr verschiebt und verknüpft noch weitere Teile der Fhem Installation auf den Stick (siehe Logfile auf USB auslagern). Hier wäre ich allerdings vorsichtig, da kann Fhem zickig werden. Ich persönlich habe mir die fhem.cfg auf diese Weise noch auf den Stick geschoben - also das /usr/local/FHEM/etc Verzeichnis analog obiger Beschreibung zum Logfile. Darüber hinaus könnt ihr auch einfach Dateien auf Eurem Stick ablegen und im entsprechenden Fhem-Verzeichnis einen Link dazu erstellen - so habe ich das z.B. mit meinen pm-Files gemacht - z.B.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ln -s /volumeUSB1/usbshare/fhem/99_myUtils.pm /usr/local/FHEM/share/fhem/FHEM/99_myUtils.pm&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== HUE auf der Synology Diskstation ==&lt;br /&gt;
Da auf der DS standardmäßig kein JSON installiert ist, muss dies nachinstalliert werden (Danke an Patlinger für die Anleitung). Wichtig - ihr braucht IPKG (siehe CUL zum Laufen bringen):&lt;br /&gt;
&lt;br /&gt;
1. Per SSH verbinden (Befehl &amp;quot;ssh &amp;lt;ip-adresse&amp;gt; -l root&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
2. Superuser aktivieren (Befehl &amp;quot;su&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
3. &amp;quot;make&amp;quot; installieren (Befehl &amp;quot;ipkg install make&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
4. PERL und CPAN starten (Befehl &amp;quot;/usr/local/perl/bin/perl -MCPAN -e shell&amp;quot;) / je nachdem wo Eure perl Installation liegt - bei mir war es &amp;quot;/usr/bin/perl -MCPAN -e shell&amp;quot;&lt;br /&gt;
&lt;br /&gt;
5. CPAN updaten (Befehl &amp;quot;install CPAN&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
6. JSON installieren (Befehl &amp;quot;install JSON&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
7. Per telnet verbinden (Befehl &amp;quot;telnet &amp;lt;ip-adresse&amp;gt; &amp;lt;port (7072)&amp;gt;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
8. FHEM Update durchführen (Befehl &amp;quot;update&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
9. FHEM Neustart (Befehl &amp;quot;shutdown restart&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
10. Hue Bridge hinzufügen (Befehl &amp;quot;define &amp;lt;Name-für-die-Bridge&amp;gt; HUEBridge &amp;lt;ip-adresse-der-Hue-Bridge&amp;gt;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
11. Taste an der Hue Bridge drücken um das &amp;quot;Pairing&amp;quot; zu bestätigen.&lt;br /&gt;
&lt;br /&gt;
12. GANZ WICHTIG - Wenn&#039;s jetzt einmal läuft, dann nicht vergessen die Konfiguration zu speichern! (Befehl &amp;quot;save&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
== Net::Telnet installieren ==&lt;br /&gt;
Net::Telnet benötigt ihr beispielsweises für das geniale Modul FRITZBOX, dass Euch viele Möglichkeiten eröffnet, wenn ihr einen solchen Router besitzt.&lt;br /&gt;
&lt;br /&gt;
Los gehts wie üblich mit &lt;br /&gt;
&amp;lt;code&amp;gt;&amp;quot;/usr/bin/perl -MCPAN -e shell&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
Der Pfad zu perl kann bei Euch auch anders lauten, siehe oben. Dann seid ihr fast fertig, nur noch folgendes eingeben - und fertig:&lt;br /&gt;
&amp;lt;code&amp;gt;install Net::Telnet&amp;lt;/code&amp;gt;&lt;br /&gt;
[[Kategorie:HOWTOS]]&lt;br /&gt;
[[Kategorie:Synology]]&lt;/div&gt;</summary>
		<author><name>Froggy</name></author>
	</entry>
</feed>