Arduino Schaltserver

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

    • Arduino Schaltserver

      Wie schon mehrmals erwähnt wird es ab Version 2.2 auch die Möglichkeit geben einen Arduino als Schaltserver zu verwenden.
      Ziel des ganze ist es günstige und Stromsparende Schaltserver zu bauen. Wird ein Raspberry Pi nur als Schaltserver verwendet ist das an sich Verschwendung, nicht nur die höheren Anschaffungskosten sondern auch der Stromverbrauch. Zudem ist es auch von Vorteil die umfangreichen Möglichkeiten eines Arduino mit dem SHC zu verbinden, wer z.B.: viele GPIOs als Ausgänge benötigt kann einen Arduino Mega mit 54 I/Os verwenden wovon dann 48 frei verwendbar sind (nach Anschluss von Netzwerk Chip und 433MHz Sender).

      Heute habe ich den ersten Prototyp fertig gestellt, daher noch einmal ein paar nähere Informationen. Der Prototyp besteht aus einem Arduino Nano mit 433MHz Sender und ENC28J60 Netzwerkchip. Wer etwas Geduld hat kann diese Komponenten für ca.10€ aus Fernost bestellen. Der Schaltserver hat 7 frei verwendbare I/Os und verbraucht nur etwa 100mA. Wie beim Raspberry Pi Schaltserver lassen sich Funksteckdosen, Pins als Ausgang und Pins als Eingang verwenden (wobei Pins als Eingang noch nicht funktioniert).

      Der Schaltserver kann aber erst ab Version 2.2 verwendet werden da für den Arduino Schaltserver eine eigene Schnittstelle implementiert werden muss. Würde ich die Standard Schnittstelle verwenden würde das Programm leider nicht auf den Atmega 328ern laufen und damit wäre der große Vorteil das ein solcher Schaltserver günstig ist dahin.

      Was die Unterstützung von Funksteckdosen angeht, die ist mit rcswitch-pi ident. Rcswitch-pi ist die Portierung von RCSwitch für Arduino auf den Raspberry Pi, daher ist die Logik die das Senden steuert identisch.

      Geplant ist noch eine Version des Schaltservers für Arduinos mit dem W5100 Netzwerkchip der auf dem Arduino Ethernet Sheld verwendet wird und falls es Funktioniert auch eine Variante die mit dem ESP8266 WLan Chip (kostet etwas 3 - 10€ bei eBay) arbeitet.
      Verwenden könnt ihr alle Arduinos die Uno kompatibel sind, also u.a.: Uno, Nano, Pro Mini ... aber auch den Mega oder Due (wobei man bei Due beachten muss das der mit 3,3V läuft).

      Zum Respository
      Images
      • IMG_2026.JPG

        320 kB, 2,000×1,702, viewed 191 times
      • IMG_2027.JPG

        414.13 kB, 2,000×2,273, viewed 175 times
    • Arduino Schaltserver

      Das hört sich gut an. Sobald ich die Zeit finde werde ich das gleich mal ausprobieren. Zum Glück habe ich von den arduinos noch einen Haufen liegen.


      Sent from my iPhone using Tapatalk
      Gruß

      Matthias
      1x RasPi b, 3x RasPi b+, 1x RasPi 2, 2x RasPi 3, 1x BananaPi M1, 1x BananaPi R1, 1x BananaPi M3, 2x OrangePi Zero, 1x OrangePi One

      BTC: 1AJgWX9SXzH6wpoQ9d5HpkLcct6kAuatvJ
      NMC: N9fF4858aVWpY3Zu5xSxBV4XLvZ73D8eKV
    • RE: Arduino Schaltserver

      Ist bei dem Arduino speziell etwas zu beachten.

      Mich wundert die Preisspanne von knapp 15 Euro bis knapp 50 Euro, habe mich aber auch noch nicht weiter damit beschäftigt.

      Habe in Ebay diesen mit Versand aus Deutschland gefunden.

      http://www.ebay.de/itm/SainSmart-MEGA2560-ATMEGA-AVR-Board-mit-USB-Kabel-compatible-Arduino-DE-Lager-/380630867046?pt=Wissenschaftliche_Ger%C3%A4te&hash=item589f5e1c66

      Interessant finde ich die vielen GPIO's und das, wenn er einmal geflasht ist ohne murren laufen sollte.
      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.
    • RE: Arduino Schaltserver

      Mit den SainSmart Arduinos kannst du nicht viel falsch machen, die Kaufe ich auch meistens. Nur die Pro Mini und Nano kaufe ich in China, da die dort einfach nur billig sind (25 Pro Mini für nur 45€ ist einfach unschlagbar).
      Die Original Arduinos sind teuer, da koste schon ein Uno R3 um die 25€, dievArduino kmpatiblen sind teils wesentlich günstiger.

      Wie gesagt diese Form der Schaltserver geht erst ab 2.2. In der angekündigten Testversion wird die unterstützung dafür mit dabei sein.

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

    • RE: Arduino Schaltserver

      bei den arduinos die man sich besorgt sollte man auf den Chip achten der verbaut ist. die nachbauten haben des öfteren einen ch340 Chip für die Kommunikation verbaut und bei mir haben die apple Geräte Probleme damit einen Sketch zu flashen. unter windoof gibt es damit keine Probleme.
      Gruß

      Matthias
      1x RasPi b, 3x RasPi b+, 1x RasPi 2, 2x RasPi 3, 1x BananaPi M1, 1x BananaPi R1, 1x BananaPi M3, 2x OrangePi Zero, 1x OrangePi One

      BTC: 1AJgWX9SXzH6wpoQ9d5HpkLcct6kAuatvJ
      NMC: N9fF4858aVWpY3Zu5xSxBV4XLvZ73D8eKV
    • RE: Arduino Schaltserver

      adm1n wrote:


      bei den arduinos die man sich besorgt sollte man auf den Chip achten der verbaut ist. die nachbauten haben des öfteren einen ch340 Chip für die Kommunikation verbaut und bei mir haben die apple Geräte Probleme damit einen Sketch zu flashen. unter windoof gibt es damit keine Probleme.


      (adm1n: nicht persönlich nehmen)
      Komisch alle wettern immer über Windows. Kann ich nicht verstehen. Ich muss hier mal eine Lanze für Microsoft brechen. Auch wenn MS nicht immer die allerbesten Entscheidungen trifft und getroffen hat, so ist doch so, dass man sehr selten für ein Gerät keine Treiber findet oder man mit Treiber echte Probleme hat, dass es für so ziemlich alles eine Software gibt, und dass es auch einer sehr breiten Masse an PC's läuft.
      Sicherlich hat Apple OS und auch Linux ihre Vorteile gegenüber Windows, aber eben nicht nur. In mancher Hinsicht ist Windows dann wieder überlegen. Ich will das hier nicht zum Thema machen, aber bei Windows von Windoof zu sprechen halte ich für völlig unzutreffend. Denn wenn man mal hinter die Kulissen schaut, was MS sowohl im Peer-to-Peer als auch im Client-Server-Betrieb im Laufe der Jahre geschaffen hat, muss man erst mal so hinkriegen. Und wer meint, dass das alles Pippifax ist, der muss es erst mal besser machen.
      Gruß Dieter
      --------------
      Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.

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

    • RE: Arduino Schaltserver

      Ich habe noch ein CC3000 wie diesen hier liegen. Es sollte doch möglich sein, damit einen nicht ans Kabel gebundenen Arduino zum laufen zu bekommen, oder habe ich etwas übersehen? Die lib müsste ausgetauscht werden und die Einstellungen für Wlan ergänzt werden, simpel ausgedrückt.
      Gruß

      Matthias
      1x RasPi b, 3x RasPi b+, 1x RasPi 2, 2x RasPi 3, 1x BananaPi M1, 1x BananaPi R1, 1x BananaPi M3, 2x OrangePi Zero, 1x OrangePi One

      BTC: 1AJgWX9SXzH6wpoQ9d5HpkLcct6kAuatvJ
      NMC: N9fF4858aVWpY3Zu5xSxBV4XLvZ73D8eKV

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

    • RE: Arduino Schaltserver

      Kurze Frage.
      Bin gerade etwas am Basteln. Wenn ich die Arduino Geschichte ausprobieren möchte, muss ich die Dev Version installieren, oder sehe ich das falsch? Steht schon irgendwo beschrieben wie das mit dem Redis funktioniert?
      Gruß

      Matthias
      1x RasPi b, 3x RasPi b+, 1x RasPi 2, 2x RasPi 3, 1x BananaPi M1, 1x BananaPi R1, 1x BananaPi M3, 2x OrangePi Zero, 1x OrangePi One

      BTC: 1AJgWX9SXzH6wpoQ9d5HpkLcct6kAuatvJ
      NMC: N9fF4858aVWpY3Zu5xSxBV4XLvZ73D8eKV
    • RE: Arduino Schaltserver

      Ja, du benötigst die aktuelle Development Version. Eine Anleitung zur Redis Installation von mir gibt es noch nicht, du kannst aber die originale von den jeweiligen Projekten verwenden.

      Redis selbst kannst du mit

      Source Code

      1. sudo apt-get install redis-server

      installieren.

      Die PHP Erweiterung kannst du nach der Anleitung unter https://github.com/phpredis/phpredis#installation installieren.
    • RE: Arduino Schaltserver

      hmmm

      scheinbar hab ich etwas falsch gemacht. Ich bekomme diesen Fehler einfach nicht weg, hat einer einen tip wie ich diesen Fehler abschalten kann?

      Source Code

      1. PHP Warning
      2. Redis::connect(): php_network_getaddresses: getaddrinfo failed: Name or service not known
      3. File: /var/www/shc/shc/lib/database/nosql/redis.class.php
      4. Line: 34
      5. Code: 2
      6. Stack:
      7. #0 @ Line: 0
      8. RWF\Error\Error->handlePhpError(2, 'Redis::connect(): php_network_getaddresses: getaddrinfo failed: Name or service not known', '/var/www/shc/shc/lib/database/nosql/redis.class.php', 34, Array(5))
      9. #1 /var/www/shc/shc/lib/database/nosql/redis.class.php @ Line: 34
      10. Redis->connect('...', 0, 0)
      11. #2 /var/www/shc/shc/lib/core/shc.class.php @ Line: 155
      12. SHC\Database\NoSQL\Redis->connect()
      13. #3 /var/www/shc/shc/lib/core/shc.class.php @ Line: 121
      14. SHC\Core\SHC->initDatabase()
      15. #4 /var/www/shc/index.php @ Line: 22
      16. SHC\Core\SHC->__construct()
      17. #5 {main}
      Display All
      Gruß

      Matthias
      1x RasPi b, 3x RasPi b+, 1x RasPi 2, 2x RasPi 3, 1x BananaPi M1, 1x BananaPi R1, 1x BananaPi M3, 2x OrangePi Zero, 1x OrangePi One

      BTC: 1AJgWX9SXzH6wpoQ9d5HpkLcct6kAuatvJ
      NMC: N9fF4858aVWpY3Zu5xSxBV4XLvZ73D8eKV
    • RE: Arduino Schaltserver

      Du musst in der settings.xml noch folgende Zeilen Hinzufügen:

      Source Code

      1. <setting name="shc.redis.host" value="127.0.0.1" type="string"/>            <!-- Redis Host -->
      2.    <setting name="shc.redis.port" value="6379" type="int"/>                    <!-- Redis Port -->
      3.    <setting name="shc.redis.timeout" value="1" type="int"/>                    <!-- Redis Timeout -->
      4.    <setting name="shc.redis.db" value="0" type="int"/>                         <!-- Redis Datenbank Index -->
      5.    <setting name="shc.redis.pass" value="" type="string"/>                     <!-- Redis Passwort -->

      Wenn du an der Redis Installation nichts verändert hast kannst du auch die Werte so lassen.
    • RE: Arduino Schaltserver

      Ich denke ich muss auf die nächste Testing warten, ein Problem Gelöst, ist das nächste da.
      In die konfig und der gleichen komme ich schon mal, nur wenn ich auf Datenbank klicke bekomme ich diese Meldung.

      Source Code

      1. PHP Notice
      2. Undefined index: rdb_last_save_time
      3. File: /var/www/shc/shc/data/commands/web/acp/database/databaseajax.class.php
      4. Line: 56
      5. Code: 8
      6. Stack:
      7. #0 /var/www/shc/shc/data/commands/web/acp/database/databaseajax.class.php @ Line: 56
      8. RWF\Error\Error->handlePhpError(8, 'Undefined index: rdb_last_save_time', '/var/www/shc/shc/data/commands/web/acp/database/databaseajax.class.php', 56, Array(3))
      9. #1 lib/request/commands/ajaxcommand.class.php @ Line: 32
      10. SHC\Command\Web\DatabaseAjax->processData()
      11. #2 lib/request/abstractcommand.class.php @ Line: 77
      12. RWF\Request\Commands\AjaxCommand->executeCommand()
      13. #3 lib/request/requesthandler.class.php @ Line: 184
      14. RWF\Request\AbstractCommand->execute(RWF\Request\HttpRequest, RWF\Request\HttpResponse)
      15. #4 lib/request/requesthandler.class.php @ Line: 133
      16. RWF\Request\RequestHandler->handleWebRequest('ajax...', 'database...')
      17. #5 lib/request/requesthandler.class.php @ Line: 99
      18. RWF\Request\RequestHandler->__construct('ajax...', 'database...')
      19. #6 /var/www/shc/index.php @ Line: 25
      20. RWF\Request\RequestHandler::handleRequest()
      21. #7 {main}
      Display All
      Gruß

      Matthias
      1x RasPi b, 3x RasPi b+, 1x RasPi 2, 2x RasPi 3, 1x BananaPi M1, 1x BananaPi R1, 1x BananaPi M3, 2x OrangePi Zero, 1x OrangePi One

      BTC: 1AJgWX9SXzH6wpoQ9d5HpkLcct6kAuatvJ
      NMC: N9fF4858aVWpY3Zu5xSxBV4XLvZ73D8eKV

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

    • RE: Arduino Schaltserver

      Wenn es so weit ist, kannst du ja eben bescheid geben, dann wage ich noch mal einen test auf meinem separaten raspi.
      Gruß

      Matthias
      1x RasPi b, 3x RasPi b+, 1x RasPi 2, 2x RasPi 3, 1x BananaPi M1, 1x BananaPi R1, 1x BananaPi M3, 2x OrangePi Zero, 1x OrangePi One

      BTC: 1AJgWX9SXzH6wpoQ9d5HpkLcct6kAuatvJ
      NMC: N9fF4858aVWpY3Zu5xSxBV4XLvZ73D8eKV
    • RE: Arduino Schaltserver

      so müsste es ausehen



      <?xml version="1.0" encoding="UTF-8"?>
      <settings>
      <setting name="rwf.session.allowLongTimeLogin" value="true" type="bool"/> <!-- Langzeit Login erlauben -->
      <setting name="rwf.date.Timezone" value="Europe%2FBerlin" type="string"/> <!-- Zeitzone -->
      <setting name="rwf.date.defaultDateFormat" value="d.m.Y" type="string"/> <!-- Standard Datums Format -->
      <setting name="rwf.date.defaultTimeFormat" value="H%3Ai%3As" type="string"/> <!-- Standard Zeit Format -->
      <setting name="rwf.date.sunriseOffset" value="0" type="int"/> <!-- Zeitverschiebung Sonnenaufgang -->
      <setting name="rwf.date.sunsetOffset" value="0" type="int"/> <!-- Zeitverschiebung Sonnenuntergang -->
      <setting name="rwf.date.Latitude" value="53.3" type="float"/> <!-- Laengengrad fuer Berechnung Sonnenauf/untergang -->
      <setting name="rwf.date.Longitude" value="7.6" type="float"/> <!-- Breitengrad fuer Berechnung Sonnenauf/untergang -->
      <setting name="rwf.language.defaultLanguage" value="de" type="string"/> <!-- Standardsprache -->
      <setting name="shc.redis.host" value="127.0.0.1" type="string"/> <!-- Redis Host -->
      <setting name="shc.redis.port" value="6379" type="int"/> <!-- Redis Port -->
      <setting name="shc.redis.timeout" value="1" type="int"/> <!-- Redis Timeout -->
      <setting name="shc.redis.db" value="0" type="int"/> <!-- Redis Datenbank Index -->
      <setting name="shc.redis.pass" value="" type="string"/> <!-- Redis Passwort -->
      <setting name="shc.ui.redirectActive" value="true" type="bool"/><setting name="shc.ui.redirectPcTo" value="1" type="int"/><setting name="shc.ui.redirectTabletTo" value="1" type="int"/><setting name="shc.ui.redirectSmartphoneTo" value="3" type="int"/><setting name="shc.ui.index.showUsersAtHome" value="true" type="bool"/><setting name="shc.shedulerDaemon.active" value="true" type="bool"/><setting name="shc.switchServer.active" value="true" type="bool"/><setting name="shc.switchServer.ip" value="127.0.0.1" type="string"/><setting name="shc.switchServer.port" value="9274" type="string"/><setting name="shc.switchServer.senderActive" value="true" type="bool"/><setting name="shc.switchServer.sendCommand" value="/usr/local/bin/pilight-send" type="string"/><setting name="shc.switchServer.gpioCommand" value="/usr/local/bin/gpio" type="string"/><setting name="shc.switchServer.rcswitchPiCommand" value="/opt/rcswitch-pi/send" type="string"/><setting name="shc.switchServer.sendLedPin" value="-1" type="int"/><setting name="shc.switchServer.writeGpio" value="true" type="bool"/><setting name="shc.switchServer.readGpio" value="true" type="bool"/><setting name="shc.arduinoReciver.active" value="false" type="bool"/><setting name="shc.arduinoReciver.interface" value="/dev/ttyAMA0" type="string"/><setting name="shc.arduinoReciver.baudRate" value="9600" type="int"/><setting name="shc.arduinoReciver.ip" value="127.0.0.1" type="string"/><setting name="shc.arduinoReciver.port" value="9275" type="string"/><setting name="shc.sensorReciver.active" value="true" type="bool"/><setting name="shc.sensorReciver.ip" value="127.0.0.1" type="string"/><setting name="shc.sensorReciver.port" value="9275" type="string"/><setting name="shc.sensorTransmitter.active" value="true" type="bool"/><setting name="shc.sensorTransmitter.ip" value="127.0.0.1" type="string"/><setting name="shc.sensorTransmitter.port" value="9275" type="string"/><setting name="shc.sensorTransmitter.pointId" value="10" type="int"/><setting name="shc.title" value="Smarthome" type="string"/><setting name="shc.defaultStyle" value="ui_darkness" type="string"/><setting name="shc.defaultMobileStyle" value="default" type="string"/></settings>
    • Arduino Schaltserver

      So sieht es bei mir aus, vieles funktioniert, einiges jedoch nicht.
      Es ist ja "nur " eine Test System, von daher teste ich weiter. Sind immerhin einige Funktionen die mir sehr wichtig sind.


      Sent from my iPhone using Tapatalk
      Gruß

      Matthias
      1x RasPi b, 3x RasPi b+, 1x RasPi 2, 2x RasPi 3, 1x BananaPi M1, 1x BananaPi R1, 1x BananaPi M3, 2x OrangePi Zero, 1x OrangePi One

      BTC: 1AJgWX9SXzH6wpoQ9d5HpkLcct6kAuatvJ
      NMC: N9fF4858aVWpY3Zu5xSxBV4XLvZ73D8eKV