Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie
Toon posts:

IP-Symcon: domoticasoftware met php als scripttaal

Pagina: 1
Acties:

Onderwerpen


  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter

Symcon logo

IP-Symcon is een softwarepakket van Duitse origine waarmee je een groot aantal draadloze en bedrade domoticasystemen kunt verbinderen. Er wordt inmiddels 11 jaar aan het softwarepakket gewerkt door de mannen uit Lübeck. IP-Symcon kan overweg met onder andere FS20, Eaton Xcomfort, z-Wave, ZigBee, knx, dmx, modbus en EnOcean. Een complete lijst vind je hier. Het in Nederland populaire RFXCom wordt niet ondersteund.

Basisfunctionaliteit zoals het koppelen van events aan statuswijzigingen van objecten kan via een grafische interface ingesteld worden. Wat IP-Symcon voor de tweaker leuk maakt is dat je al je apparaten via php-scripts kunt aansturen. Zo'n script kan in de simpelste vorm bestaan uit een aantal commando's die bij het wijzigen van bijvoorbeeld een variabele wordt uitgevoerd, maar je kunt ook een framework bouwen voor je domoticasysteem compleet met dependency injection, service containers, models, controllers, factories, repositories en whatever je nog meer aan programmeer patterns handig vind om mee te werken.

Een alarmsysteem, aanwezigheidssimulatie, verlichting die zich automatisch inschakelt als je van je slaapkamer op weg bent naar de badkamer of een filter tegen onzinnige waarden van een sensor kun je nu helemaal naar eigen wens in elkaar proggen. Een ingebouwde webserver maakt het mogelijk om je domoticasysteem via het web of mobiele apps voor iOS, Android en Appel Watch te bedienen, variabelen te visualiseren en notificaties te ontvangen.


Doelgroep
IP-Symcon is een professioneel automatiseringsplatform dat geschikt is voor zowel thuisgebruikers als integrators die het product willen toepassen in commerciële projecten. De software is degelijk en stabiel. Ik gebruik IP-Symcon nu zo'n drie jaar en mijn ervaring is dat het nooit crasht en ook bijna geen bugs heeft. De betrouwbaarheidsissues die ik in mijn domoticasysteem hebben gehad werden eigenlijk altijd veroorzaakt door de hardware of andere software dan IP-Symcon (zoals Windows).

Als ik de reacties lees in topics over bepaalde open source domoticasoftwareprojecten heb ik de indruk dat de betrouwbaarheid nog wel eens te wensen overlaat of de software zich moeilijk laat configureren. Dat is bij IP-Symcon niet het geval. Waar je wel rekening moet houden is dat je basicly al je logica via php-scripts programmeert. IP-Symcon heeft geen simpele rules-engine waarmee je even snel wat acties bij elkaar klikt. Het scripten in php is echter ook super simpel. Het afvangen van events en deze koppelen aan een script kan wel heel makkelijk vanuit de GUI.

Kun je niets met php dan begin je dus ook weinig in IP-Symcon.


Platformen
IP-Symcon was voorheen alleen beschikbaar voor Windows. Begin 2016 werd de langverwachte versie 4.0 uitgebracht, die ook geschikt is voor Linux (x64 en ARMhf) en macOS.

Naast de software levert Symcon sindskort een kant-en-klare appliance genaamd Symbox. De Symbox is gebaseerd op hardware die vergelijkbaar is met de Raspberry Pi en is geschikt voor montage op een din-rail. De Symbox heeft geen usb. Interfaces naar domoticastandaarden zoals z-wave en knx wordt je geacht aan te sluiten via ethernet. Symcon verkoopt ethernet-interfaces voor 1-Wire, EnOcean, Z-wave en hun eigen IPS-868-systeem.

Persoonlijk vind ik dit een prima keuze. Door ethernet te gebruiken trek je de interface los van de domoticaserver waardoor je veel vrijheid hebt in de plaatsing van de interface (in de meterkast, op de verdieping, in de schuur enz.) en je de mogelijkheid hebt om een high availability setup te bouwen met een failover-server 8) .




Ondersteunde apparaten en protocollen
  • 1-Wire
  • Allnet
  • DigitalStrom
  • Dmx en ArtNet
  • Knx
  • IRTrans (infraroodblaster)
  • LCN
  • Modbus tcp, udp en rtu (bijv. om te communiceren met plc's van Wago, Beckhoff en ABB)
  • Mbus
  • Siemens OZW webserver voor knx
  • Siemens plc's
  • UVR1611
  • Velleman Board
  • W&T
  • EnOcean
  • FHZ1X00PC (interface voor o.a. FS20 draadloze modules)
  • HomeMatic
  • IPS-868
  • Eaton xComfort
  • Z-Wave
  • ELV FS10 weerstations
Apparaten die via een seriële poort of tcp communiceren kunnen verbonden worden door een I/O-instantie toe te voegen en de inkomende data te parsen in een script en vanuit een script commando's naar de I/O-instantie te sturen. De integratie van http api's kan natuurlijk ook vanuit scripts.

IP-Symcon heeft een json-rpc-api om andere apps te laten interfacen met je domoticasysteem. IP-Symcon 4.0 heeft de mogelijkheid via webhooks scripts aan te roepen, zodat je bijvoorbeeld vanuit IFTTT of Geofency makkelijk een script kan aanroepen.

Vanaf versie 4.0 is het mogelijk om PHP modules voor IP-Symcon te schrijven. De module fungeert als een container waarmee je bepaalde functionaliteit of de integratie van een bepaald apparaat makkelijk kunt hergebruiken en via een formulier kunt configureren. Modules worden toegevoegd vanuit git-repositories. Hiermee is ook de deployment van nieuwe code een stuk makkelijker geworden. Je pushed de nieuwe versie van je modules naar je git-repository en kunt de modules daarna via Module Control updaten.

Er zijn onder andere modules beschikbaar voor:
  • BananaPi
  • Elro 433MHz-apparaten via AB600 usb-stick
  • Netatmo weerstation
  • Ubiquity UniFi
  • Xbee
  • Philips Hue
  • MiLight
  • Bose SoundTouch
  • Sonos
  • Pi MusicBox
  • Onkyo av-receivers met lan of rs-232
  • SqueezeBox
  • Yamaha av-receivers
  • Bluetooth aanwezigheidsdetectie via Bluez onder Linux
  • Wunderground

Talen
Er is een Engelstalige versie beschikbaar, hoewel de documentatie nog volledig in het Duits is. Voor hulp kun je terecht op het forum van IP Symcon waar een vrij grote Duitse community actief is. Een beetje kennis van de Duitse taal is dus wel handig.


Versies en prijzen
De software is verkrijgbaar voor prijzen vanaf 99 euro. Daarvoor krijg je de Basic-versie die maximaal 250 variabelen ondersteunt en één WebFront (omgeving voor webinterface of app) heeft. Voor 249 euro heb je de Professional-versie met alle functionaliteit en een beperking van maximaal 1000 variabelen en vijf WebFronts. De Unlimited-versie kost 499 euro.

VersieVariabelenWebfrontsKosten
Basic2501€ 99,99
Professional10005€ 249,99
UnlimitedOnbeperktOnbeperkt€ 499,99

Bekijk alle verschillen op deze pagina.

De Symbox met softwarelicentie kost 350 tot 750 euro afhankelijk van de licentie die je afneemt.

Voor een gemideld huis zul je aan de Professional-versie genoeg hebben. De hoeveelheid variabelen die er per instantie worden gebruikt hangt af van het type apparaat. Een z-wave-apparaat gebruikt vaak wat meer variabelen (maar heeft vaak ook meerdere functies). Een dmx- of modbus-instantie gebruikt maar één variabele. Ga je veel data opslaan, bijvoorbeeld als je weersvoorspellingen via een api binnenhaalt en per uur in een dag opeens 20 variabelen moet opslaan (praktijkvoorbeeld waar ik zelf mee te maken had ;) ) dan kan het opeens snel gaan met je variabelengebruik.


Waarom zou je IP-Symcon willen gebruiken?
  • Stabiele en degelijke software
  • Veel ondersteunde hardware
  • Snel ontwikkelen van custom functionaliteit in php
  • Makkelijk api's verbinden via php-scripts
  • Vrij goede documentatie (weliswaar Duitstalig)
  • Eenvoudig in gebruik als je eenmaal doorhebt hoe het werkt.
  • Multi-platform (IP-Symcon 4.0)

Screenshots
Management console - tree view
Dit is de weergave van de hiërarchische indeling van alle objecten (categorieën, variabelen, instanties, events, media en links).



Management console - message view
Hier zie je wat er gaande is op je systeem. Je kunt hier zelf naartoe loggen in scripts als je bepaalde output in de message view wil laten terugkomen:



Management console - script view
Dit is een view waar je een script kunt bewerken, zoals in dit geval een script om afbeeldingen uit Synology Surveillance Station te trekken (dit script is gebaseerd op iets dat ik van het Domoticz-forum heb gehaald).



Smartphone app
Switches, waarden en subcategorieën in de app:



Temperatuur instellen op circular slider in de app:




Uitproberen?
IP-Symcon kun je uitproberen door de versie voor het gewenste platform te downloaden. De demo-versie heeft de beperking dat de I/O-instanties na een uur ophouden te werken:
https://www.symcon.de/service/ .

Instructies over de installatie onder Linux kun je hier vinden:
https://www.symcon.de/ser...nstallation/installation/

De management console is enkel beschikbaar voor Windows en kan via Wine onder Linux of macOS gedraaid worden. Instructies over de installatie onder macOS vind je hier:
https://www.symcon.de/for...ole-unter-Mac-OS-X-nutzen


IP-Symcon 5.0
Medio 2018 komt er een nieuwe versie van IP-Symcon uit. De belangrijkste nieuwe features:
  • Integratie van PHP 7.0, dus alle voordelen van PHP 7 waaronder betere performance en compatibiliteit met libraries die afhankelijk zijn van PHP 7.0. Daardoor is nu ook betere spraakondersteuning mogelijk via Alexa, Google Assistant en HomeKit.
  • Betere KNX-ondersteuning: ondersteuning van meer dan 370 datatypen in 77 DPT-klassen.
  • Native ondersteuning van de toegangssystemen van eKey.
  • Ondersteuning voor Docker zodat IP-Symcon kan draaien op alle 64-bit Linux-systemen waar Docker op functioneert, waaronder Qnap en Synology netwerkopslag.
  • Verbererde pushnotificaties: je kunt een objectId meegeven waar de notificatie naar toe leidt als je er op klikt. Je kunt bijvoorbeeld een categorie in de app openen of een script starten als er op een notificatie wordt geklikt, zodat je vanuit een deurbelnotificatie kunt doorklikken naar een camerabeeld.
  • Uitbreiding van Location Control, je kunt een offset opgeven zodat je het moment van zonsop- en ondergang kunt bijstellen.
  • Grafieken in WebFront kunnen rauwe data weergeven zonder interpolatie en het wordt mogelijk om multi-grafieken te maken waarin bool- en lijngrafieken worden gecombineerd (bijv. temperatuurverloop in een ruimte versus status van verwarmingsventiel).
  • Er komt een standaard meegeleverde lichte skin voor het WebFront.
  • De managementconsole wordt volledig webbased, zodat er geen Windows-applicatie meer voor nodig is. Er zitten mooie nieuwe features in zoals de weergave van widgets op het homescreen van de managementconsole waarmee je o.a. de status van het systeem kunt inzien.

Femme wijzigde deze reactie 13-02-2018 16:31 (194%)


  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
Symcon heeft vrijdag de nieuwe versie 3.0 vrijgegeven met de volgende wijzigingen:
quote:
Liste der Änderungen

- Komplett für HTML5-Browser neu entwickelt
- Der integrierte WebFront-Editor ersetzt den unbequemen WebFront-Konfigurator
- Eigene Skins können mit den Skin-Manager erstellt oder fertige direkt aus der Community heruntergeladen werden!
- RGB-Slider haben nun zusätzlich einen HSL-Farbkreis
- Audio-Notificatations über WFC_AudioNotification
- MJPEG-Stream können über das neuen Stream-Mediaobjekt angezeigt werden. Medien
- Graphen-Rohdaten können direkt nach CSV exportieren werden
- Graphen im WebFront können für jede Variable deaktiviert werden (trotz aktiviertem Logging)
- Alle Icons und Grafiken sind für Retina-Displays optimiert.
- Das WebFront sieht nun auf dem iPad3+ und hochauflösenden Display einfach toll aus!
- Lädt schneller - besonders bei langsamen Internetleitungen. Die schicke Ladeanimation versüßt die Wartezeit
- Natives Scrolling auf iOS & Android Geräten
- Zusatz Scrollleisten können für ältere Touchscreens alternativ per Skin aktiviert werden (Download)
- Das Editieren von Text-Boxen nutzt nun das integrierte OSK des Touch-Geräts
- DWD-Wetter benötigt keinen Benutzernamen/Passwort mehr
- Inhaltswechsler kommt nun auch mit sehr vielen Objekten zurecht (z.B. Webcam Archiv Funktion)
- Ereignisse werden nun direkt untereinander inklusive Konfiguration und nächster Ausführung angezeigt
- Die neue JSON-RPC API arbeitet direkt im WebServer ohne kostbare PHP-Threads zu belegen
- Über die neue JSON-RPC API können Sie mit wenigen Handgriffen Daten austauschen. Datenaustausch
- Für alle Technikbegeisterten: Das neue WebFront ist mit Google Dart erstellt. Kein Dojo mehr.

Neue Systeme/Module

- Neu: DMX Splitter unterstützt nun ArtNet (Unicast)
- Neu: LCN untersützt die neuen Module mit 12 Variablen
- Neu: Native JSON-RPC Schnittstelle

Neue Funktionen

- Neu: GZIP-Komprimierung für den WebServer
- Neu: X-Forwarded-For wird im WebServer ausgewertet und an PHP weitergeleitet
- Neu: Netzwerkbibliothek aktualisiert. Behebt hoffentlich Probleme mit POP3/IMAP
- Neu: Silent-Eigenschaft für TIPSWebBrowser um alle Javascript Fehler und Popups zu unterdrücken (Dokumentation: WebBrowser)
De ondersteuning van Art-Net vind ik wel een welkome verbeteringen. Ik heb al een Art-Net-interface om dmx aan te sturen (vooralsnog via Luminair op de iPad en iPhone) en dat werkt betrouwbaar in tegenstelling tot de dmx usb-interface die ik onder IP Symcon heb uitgeprobeerd.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
Topicstart uitgebreid met informatie over de ondersteunde hardware en geupdate met actuele informatie over IP-Symcon 4.0 en de Symbox.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
Gisteren is eindelijk versie 4.0 uitgebracht met onder andere de volgende verbeteringen:
  • Compleet herschreven van Delphi naar C++ zodat het nu multiplatform is en op Windows, Ubuntu, OS X en Raspberry Pi draait.
  • PHP SDK waarmee de community platformonafhankelijke modules kan ontwikkelen voor IP-Symcon. Inmiddels zijn er zo'n vijftig beschikbaar voor onder andere Sonos, Philip Hue en Netatmo.
  • Nieuw databaseformaat die 70 procent opslagcapaciteit bespaart. De data wordt opgeslagen in csv-formaat zodat deze eenvoudig gemodificeerd kan worden en in andere applicaties geïmporteerd kan worden.
  • Webfront met iconen die de state van een device aangeven (bijv. ander icoon voor licht aan of uit), grafieken die hun view automatisch updaten met live data.
  • De managementconsole werd aangepast aan de stijl van Windows 10 en op diverse punten verbeterd.
  • Symcon Connect maakt het mogelijk om zonder port forwarding en via ssl verbinding te maken tussen de mobiele app en de server.
  • Nieuwe modules voor astronomische events (zoals zonsopgang en -ondergang), kalender, webhooks, 1-wire zonder TMEX-driver, rgb/rgbw voor knx, native ondersteuning van Siemens S7 ethernet, betere z-wave-ondersteuning en ondersteuning van meer EnOcean-apparaten van Eltako.
Meer informatie over de upgrade van 3.4 naar 4.0:
https://www.symcon.de/ser...lation/migration-v34-v40/

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
DexterDee schreef op donderdag 03 maart 2016 @ 10:13:
Bedankt voor deze update. Ik heb de initiele TS gemist en lees er nu voor het eerst over. Het lijkt best wel een prima platform. Raar dat er niemand in bijna 3 jaar tijd in dit topic heeft gereageerd?
Dat het commerciële software is zal niet helpen. Het is mijn inziens wel makkelijk in gebruik als je een beetje handig bent met php. Het is niet mogelijk om op Blockly-achtige wijze regels te maken. Als er iets gescript moet worden doe je dat via php. Het is wel eenvoudig om een script te koppelen aan een event (bijv. een cyclisch event op basis van tijd of een event als een variabele verandert of een bepaalde waarde aanneemt).

IPS 3.4 draait bij mij thuis super stabiel. Het enige waar ik last van heb is dat mijn Z-wave Plus usb-stick soms niet meer benaderbaar is maar dat is een Windows/usb-probleem. Met de Symcon Z-Wave LAN Gateway heb ik dit probleem niet.

De beta van versie 4.0 draai ik op mijn backupserver onder OS X, momenteel alleen in combinatie met een Symcon 1-Wire LAN Gateway (die werkt niet onder 3.4) om wat temperatuursensoren uit te lezen. Tot nu draait het goed maar hij doet dan ook weinig. Ik ga rustig aan doen met de overstap naar 4.0.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
ThinkPad schreef op zaterdag 05 maart 2016 @ 11:05:
[...]

Wat wordt er gebruikt voor Z-Wave? Je ziet dat bij pakketten als Domoticz en DomotiGa er OpenZWave wordt gebruikt, wat eigenlijk een gereverse-engineered implementatie van de officiele Z-Wave stack is.
Er wordt voor zover ik weet geen OpenZwave gebruikt. Je zou moeten uitproberen of het beter werkt. Ik lees op het forum van Symcon wel wat geklaag over de werking van z-wave in versie 3.4, maar die problemen zouden opgelost moeten zijn in 4.0. Als je ermee wil gaan spelen zou ik toch meteen 4.0 pakken.

OpenZwave heeft ook voordelen vergeleken met de aanpak van IP-Symcon. OpenZwave komt met een complete database aan config parameters van z-wave-apparaten. Die heeft IP-Symcon niet waardoor je telkens de handleiding van het betreffende z-wave-apparaat erbij moet halen of zelf een document met config parameters moet bijhouden om zicht te houden op de mogelijkheden.
quote:
Nu met de Zipato Zipabox gaat dat veel beter, een node werkt gewoon zoals je zou verwachten. Dit omdat ze lid zijn van de Z-Wave alliantie. Ook alle extra gimmicks zoals temperatuurmeting, luxmeting e.d. werken gewoon. Nadeel vind ik wel dat het een gesloten systeem is, met Domoticz kon ik altijd heerlijk knutselen met allerlei scriptjes (Lua / Bash / Python). De event creator van de Zipabox is ook vrij uitgebreid, maar toch was dat scripten ook wel leuk.
In IP-Symcon heb je alle mogelijkheden om te scripten in php en je kunt ook makkelijk werken met apparaten die communiceren via seriële poorten, udp of tcp. Zo kun je ook eenvoudig eigen integraties bouwen. Nu met versie 4.0 kun je die mooi in modules stoppen.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
Nhz schreef op zaterdag 16 juli 2016 @ 05:50:
Jammer dat hier niet meer reacties zijn. Ziet er veelbelovend uit. Ik draai momenteel (ook) op domoticz en heb ook de ervaring dat het zwave verhaal te wensen over laat.

Femme, gebruik jij dit pakket nog steeds? Hoe zijn de ervaringen tot nu toe?
Ja mijn huis draait hier op (nu nog steeds op versie 3.4). Ik ben momenteel bezig om een lichtgewicht gebouwbeheersysteem te maken op basis van IP-Symcon, in eerste instantie gericht op verwarming/koeling met modules die verantwoordelijk zijn voor temperatuurregeling in een ruimte en communicatie van de warmte/koudevraag naar een centrale module die de aanvoertemperatuur regelt en wamtepompbesturingsmodule aanstuurt. Qua hardware moet dit gaan draaien op ARM single board computers zoals een Odroid C2 met decentrale I/O modules die via modbus/tcp of modbus/rtu communiceren. Elke ruimte kan optioneel een ruimtethermostaat krijgen die via modbus/rtu communiceert en bedoeld is om de doeltemperatuur te kunnen instellen.

Ik heb er een soort framework voor gemaakt om de objecten in IP-Symcon (zoals variabelen, instanties en events) ook daadwerkelijk als objecten in je php-code te kunnen gebruiken. In plaats van dat je met een functie zoals IPS_GetEvent($objectId) een array terugkrijgt met de eigenschappen van een event kun je via een object factory een object ophalen en als het een event is kun je er alle eigenschappen van een event mee setten en getten. Is een stuk makkelijker in de omgang met objecten.

De mogelijkheid om nu modules in php te schrijven en via git te installeeen is een enorme verbetering ten opzichte van IPS 3.4 waar je je scripts nog los in de object tree moest plaatsen. Nu bundel je ze in een git repository en kun je ze via Module Control makkelijk deployen en updaten.

IP-Symcon 4.0 heb ik hier nu alleen lokaal op mijn MacBook draaien voor testwerk en op een Odroid C2 waar om waardes van 1-wire sensoren in te lezen via de 1-Wire Ethernet Gateway van Symcon (die wordt niet ondersteund in 3.4). De stabiliteit van IPS 4.0 is uitstekend hier, ik had alleen wat issues met het installeren onder een kale Debian Jessie-afgeleide distributies zoals Armbian en Odrobian. Mogelijk zijn die nu opgelost.
quote:
Ik heb een hele tijd naar het Loxone bedrade systeem gekeken, maar ben bang dat dat toch te hoog gegrepen is voor onze renovatie woning. Daarnaast spreekt me het scripten in PHP erg aan.
Qua programmeerbaarheid heb je in IP-Symcon als php-programmeer wel veel meer vrijheid denk ik.

Wat voor hardware wil je nu gebruiken? Z-wave of wel bedraad?

Acties:
  • 0Henk 'm!

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
deWit schreef op woensdag 13 juli 2016 @ 19:44:
Even een reactie hier op een bericht wat in het PLC topic stond:

Femme, zou je wellicht wat van jouw scripts kunnen delen die iets van basisfunctionaliteit laten zien?
Je bent bezig met een Wago-plc las ik in het plc-topic. Hier een voorbeeld script over hoe je met behulp van een pulsdrukker een output op je plc kunt schakelen, waarbij je die output tegelijkertijd ook kunt schakelen met een knopje in een WebFront in IP-Symcon (webinterface of mobiele app).

Hiervoor heb je nodig:

- Een script om de status variabele en de output te setten. Hierin moet je later nog wat waardes van variabelen aanpassen:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php

// Object id of boolean status variable
$statusVariableId = 28354 /*[Toggle test\Toggle status]*/;

// Object id of modbus instance that controls the output
$instanceId = 21194 /*[Toggle test\Output]*/;

// Current status of output
$outputStatus = GetValue($statusVariableId);

// Script is executed by trigger event
if (isset($_IPS['EVENT']))
{
    // Toggle status
    $outputStatus = $outputStatus == true ? false : true;
}
// Script is executed by variable action
elseif (isset($_IPS['VARIABLE']))
{
    $outputStatus = $_IPS['VALUE'];
}

SetValue($statusVariableId, $outputStatus);
@ModBus_WriteCoil($instanceId, $outputStatus);

?>

- Een modbus instantie voor de input
- Een modbus instantie voor de output (juiste modbus-adressen heb je al gevonden?)
- Een boolean variabele waarin de status van de output wordt bijgehouden en die je later vanuit de app kunt wijzigen. Ik heb deze in het voorbeeld 'Lamp' genoemd. Als variabeleprofiel selecteer je '~Switch' en als custom action selecteer je het eerder aangemaakte script, zodat dit script wordt uitgevoerd bij het veranderen van de variabele van je WebFront.




- Aan het script voeg je een event toe (rechter muisknop > Add object > Add event). Je kiest voor trigger event en selecteert de 'Value'-variabele (als je die nog niet hernoemt hebt) van de modbus instantie voor de input als variabele. Je laat het event triggeren op een specifieke waarde en kiest dan True als waarde. Dit zorgt ervoor dat het event alleen triggert als de input 'hoog' wordt.

Als je het event als child van het script hebt toegevoegd staat het juiste script dat het event moet uitvoeren al ingevuld.





Zo zouden de benodigde objecten eruit kunnen zien in de tree:



Vervolgens wijzig je de twee variabelen in het script ($statusVariableId en $instanceId) naar de juiste object id's voor respectievelijk de status variabele (die ik 'Lamp' heb genoemd), het trigger event en de modbus instantie van de output.

Het script herkent op basis van de systeemvariabelen $_IPS['EVENT'] en $_IPS['VARIABLE'] of het uitgevoerd wordt door respectievelijk het event of de custom action van de status variabele. In het eerste geval toggelt hij de output van true naar false of andersom en in het tweede geval gebruikt hij de uitkomst van de actie die meegegeven wordt in de systeemvariabele $_IPS['VALUE'] als nieuwe waarde van de output.

Vanuit de app kun je nu de output bedienen door op het knopje bij 'Lamp' te drukken:



Ik heb zelf mijn de object tree ingedeeld op basis van de fysieke locatie van instanties. Alle modbus-instanties van mijn Wago-plc staan bij elkaar in een mapje onder Schakelkast en de 'virtuele outputs' (zoals onze statusvariabele 'Lamp') in een categorie voor de ruimte waar het apparaat zich bevindt dat geschakeld wordt (bijvoorbeeld een lamp).

Zoals je ziet moet je best wat handelingen uitvoeren om een simpel toggle scriptje te maken. Het kan veel makkelijker met een simpele php-module voor een instantie waarmee je simpelweg de input variabel en output instantie aanklikt in een configuratieformulier en de rest vanzelf gaat. Ik moet nog eens een zo'n module maken :) .

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
Nhz schreef op zondag 17 juli 2016 @ 08:50:

Jouw verhaal over het verwarmingssysteem spreekt me ook erg aan, de oplossing is natuurlijk mooi, maar wat me vooral aanspreekt is de manier waarop je zoiets zelf kan ontwerpen en bouwen.
Als (php)-programmeur heb je inderdaad erg veel mogelijkheden om zelf functionaliteit te bouwen. Het kost wel tijd maar persoonlijk vind ik het leuke programmeeruitdagingen. Dat je er iets mee bestuurt en slimmer maakt dat effect heeft op de echte wereld maakt het extra leuker.

Qua basisfunctionaliteit zit er buiten de HeatingControl en ShutterControl modules bijna niets in. Het is geen platform voor mensen die even snel wat bij elkaar willen klikken. Als je alles met losse scriptjes en events aan elkaar plakt wordt een grote installatie snel onverzichtelijk en moeilijk beheersbaar. De php-modules kosten wat meer tijd om te maken maar kunnen dit probleem wel oplossen. De functionaliteit die in een module zit kun je makkelijk eindeloos hergebruiken zonder scripts te moeten kopiëren.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
Leuk dat er eindelijk wat meer gebruikers zijn van IP-Symcon :) . Ik heb de TS ook even bijgewerkt met wat info over IPS 4.0 en de beperkingen van de demo.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
deWit schreef op dinsdag 09 augustus 2016 @ 20:57:
Iemand nog een goede suggestie voor het afvangen van een long-press? Ik heb nu een script wat kijkt wanneer het zelf voor het laatst is uitgevoerd wat getriggerd word door een on-change van een input. An sich werkt het, maar het is nogal grof en niet zo netjes. Eigenlijk zou ik het liefste iets triggeren bij het indrukken en op basis van de tijd dat de knop ingedrukt is gaan werken.
Hierbij een simpele oplossing. Je voert dit script uit op een trigger event, on specific value = true van de variabele die jouw drukknop representeert. Het script pollt elke 25 ms de waarde van de variabele voor een maximale duur van 10 seconden. Als de waarde van de variabel weer false is (drukknop niet meer ingedrukt) stopt hij met pollen en bepaalt ie afhankelijk van de duur of de knop kort of lang werd ingedrukt.

Het script logt het resultaat in de message view.

Je kunt het ook gebruiken om verlichting te dimmen via dmx door bijvoorbeeld bij elke iteratie van de while loop een fade te doen naar een lager of hoger dimniveau.
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?

// Max duration in seconds of short press
$maxShortPressTime = 1;

// Polling interval in milliseconds
$pollingInterval = 25;

// Max polling duration in seconds
$maxPollingDuration = 10;

if (isset($_IPS['VARIABLE']))
{
    $startTime = microtime(true);
    $duration = 0;

    while ($duration < $maxPollingDuration && GetValue($_IPS['VARIABLE']) == true)
    {
        IPS_Sleep($pollingInterval);
        $duration = microtime(true) - $startTime;
    }

    $message = "Button press duration " . $duration;
    $message .= $duration <= $maxShortPressTime ? " (short press)" : " (long press)";

    IPS_LogMessage('Button press test', $message);
}

?>

Femme wijzigde deze reactie 10-08-2016 23:01 (5%)


  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
deWit schreef op zondag 30 oktober 2016 @ 18:58:
Vandaag verplicht ge-update naar 4.1 omdat IP Symcon 4.0 niet meer werkt na een update van Jessie op de RPi. Schijnt een bekende bug te zijn, maar an sich is 4.1 inmiddels wel stabiel genoeg...
Die fix zorgt ervoor dat IPS 4.1 nu ook goed werkt op een Odroid C2 met Ubuntu 16.04. Onder 4.0 werkte dns resolution niet icm Ubuntu 16.04.

4.1 heeft ook mooie verbetering zoals de mogelijkheid om je zelf geschreven modules via RegisterMessage en MessageSink te subscriben op allerlei berichten over statuswijzigingen van het systeem, zoals het toevoegen of veranderen van objecten of het updaten van de waarde van een variable. Een module kan nu op allerlei veranderingen inhaken zonder dat je events moet aanmaken.

Ik gebruik het o.a. in een module die de temperatuur in een ruimte regelt om te reageren op veranderingen van de temperatuurvariabele van een 1-wire of z-wave instantie.

Femme wijzigde deze reactie 31-10-2016 13:48 (6%)


  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
Inmiddels is RC1 van IP-Symcon 4.1 uit. De veranderingen:

Nieuwe functies
  • PHP 5.6.26 (löst insbesondere das microtime() Speicherleck und enthält offiziell den cURL Crashfix)
  • Z-Wave unterstützt mehr Klassen (SECURITY, COLOR, CENTRAL_SCENE, DOOR_LOCK, USER_CODE, TIME, SWITCH_ALL)
  • Z-Wave zeigt List der Geräteparameter an (Wird über Open Z-Wave DB ermöglicht)
  • Z-Wave hat Möglichkeit die interne WAKE_UP Warteschlange einzusehen
  • Z-Wave optimiert jede Nacht alle Nodes automatisch (zur Zeit im 5 Minuten Abstand)
  • Z-Wave kann die Erreichbarkeit der (auch batteriebetriebenen) Geräte direkt aus dem Konfigurator prüfen
  • Z-Wave Funktion ZW_ConfigurationSetValueEx kann wieder für batteriebetriebene Geräte ausgeführt werden
  • HomeMatic IP (Vollständiger Umbau von Bin-RPC auf XML-RPC)
  • digitalStrom: Unterstützung für App-Taster über Joker Klemmen
  • digitalStrom: Unterstützung für Sensoren an z.B. iSens200
  • digitalStrom: Unterstützung für binäre Eingänge an z.B. Automatisierungsklemmen
  • KNX-Shutter unterstützt weitere Rückmeldeadressen und Stepping für Lamellen
  • KNX-RGB/KNX-RGBW unterstützt weitere Rückmeldeadressen
  • DMX unterstützt 16 Bit Adressen
  • xComfort Dimmaktoren (Neue Gerätegeneration mit speziellen Rückmeldungen wird unterstützt)
  • ModBus Module unterstützt explizite Angabe des Funktionscodes (01, 02, 03, 04, 05, 06, 15, 16)
  • ModBus RTU/TCP Gateway-Instanzen synchronisieren sich korrekt, sofern mehrere an einer I/O Instanz dran sind
  • Unterstützung weiterer Eltako EnOcean Geräte (FKC, FKF, FRW, FTR65DS, FTR65HS, FUTH65D, FZS)
  • Unterstützung von EnOcean EEP F6-10-00
  • LCN unterstützt die Einstellung für 200 Dimmschritte
  • ServerSocket mit ClientIP/ClientPort Adressierung
  • MulticastSocket neu hinzugefügt (erlaubt Empfangen von z.B. UPNP/SSDP)
  • Siemens OZW unterstützt den Typ RadioButton
Management console
  • Upgrade auf neuste Delphi Version (Mit korrekter Unicode Unterstützung)
  • Verbesserter Skripteditor
  • Suchen & Ersetzen wird direkt im Editor angezeigt
  • Besseres Highlighting bei der Suche
  • Code Folding
  • Nach Querverweisen suchen (Im Kontextmenü eines Objekts und im Skript-Editor)
  • Konsistentere Icon-Auswahl
  • Assistent zum Validieren auf UTF-8 Konformität (über Utils Control) (Bitte Settings + Skripte sichern!)
WebFront
  • Login-Seite kann einen Skin laden (über Skin Control einstellbar) (Beispiel auf GitHub)
  • Profile mit Schrittweite werden als Circle Slider (wie in den mobilen Apps) dargestellt
  • Profile mit sehr vielen Aufzählungen werden reduziert und können über einen Dialog eingestellt werden
  • Dialoge für UnixTimestamp, UnixTimestampDate, UnixTimestampTime, sofern Aktionsskript definiert ist
  • [url=https://www.symcon.de/service/dokumentation/modulreferenz/webfront-konfigurator/wfc-opencategory/]WFC_OpenCategory($id);[/ur]
PHP Module
  • Auswahl von Branches im Module Control
  • Anzeige der Repository URL im Module Control
  • Übersetzung von PHP-Module (Beispiel auf GitHub)
  • Dynamische Konfigurationsformulare (Beispiel auf GitHub)
  • Liste der verfügbaren Nachrichten im MessageSink
  • $this->MessageSink($TimeStamp, $SenderID, $Message, $Data); (Beispiel auf GitHub)
  • $this->SetSummary($Summary);
  • $this->RegisterMessage($SenderID, $Message); (Beispiel auf GitHub)
  • $this->UnregisterMessage($SenderID, $Message); (Beispiel auf GitHub)
  • $this->SetBuffer($Name, $Data); (Beispiel auf GitHub)
  • $this->GetBuffer($Name); (Beispiel auf GitHub)
  • $this->SetReceiveDataFilter($RequiredRegexMatch); (Beispiel auf GitHub)
  • $this->SetForwardDataFilter($RequiredRegexMatch);
  • $this->Destroy();
  • MC_ReloadModule($module_control_id, "ModulName"); (Lädt das PHP Modul neu und erstellt auch die Instanzen neu)
Best wel veel nuttige verbeteringen dus van o.a. de z-wave-ondersteuning, modbus, dmx en de mogelijkheden met betrekking tot de ontwikkeling van php modules.

Ondersteuning voor 16-bit dmx-kanalen heb ik zelf nog een bijdrage aan geleverd door een EldoLED driver met 16-bit kleurdiepte aan Symcon GmbH op te sturen zodat ze ermee konden testen ;) .

Zie voor meer info https://www.symcon.de/ser...lation/migration-v40-v41/ .

Femme wijzigde deze reactie 03-11-2016 12:07 (10%)


  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
Ik heb gisteren eindelijk maar eens mijn primaire domoticasysteem overgezet van IP-Symcon 3.4 op een Mac Mini met Windows 10 naar IPS 4.1 RC3 op een Odroid C2 met Ubuntu 16.04. De Mac Mini crashte de afgelopen tijd weer regelmatig (heeft hij eerder last van gehad) en de oorzaak daarvan was lastig te vinden. Ook had ik problemen met de Z-wave.me UZB1 z-wave usb-gateway die na verloop van tijd (vaak meerdere weken) ophield met werken. Hopelijk draait het beter onder Linux. Mijn testomgeving is in ieder geval super stabiel.

Qua prestaties is de C2 ook meer dan snel genoeg. Ik monitor elke vijf seconden de cpu-belasting en die schommelt meestal rond de 0% op alle vier cores :) . Het tien keer per seconde pollen van >100 modbus-adressen kost blijkbaar ook geen noemenswaardige cpu-tijd.

De Linux-versie van IP-Symcon biedt nog geen mogelijkheden om geluid af te spelen out of the box. Dit was snel opgelost door aplay te gebruiken via shell_exec(); Geluid gebruik ik voor de deurbel. Ik heb een klein versterkertje van 20W met een toslink die de speakers in de keuken aanstuurt. Het versterktje hangt nu aan een Hifi Shield Plus voor de Odroid C2.

Femme wijzigde deze reactie 08-11-2016 17:25 (4%)


  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
deWit schreef op zaterdag 7 januari 2017 @ 16:36:
Nu ik IPS een tijdje langer heb draaien wil ik graag alle intelligentie die ik voorheen in Domoticz had draaien graag gaan overzetten. Wat timers, wat beweginsmelders met daaraan acties, simulatie van aanwezigheid, scenes etc. Ik ben al een hele tijd aan het stoeien met wat nu een handige manier is om die intelligentie in IPS te kijken zonder het óf nodeloos ingewikkeld te maken, of een samenraapsel van scripts wat zo ondoorzichtelijk is als wat.

Er lijkt niet echt een standaard syteem of methode te zijn die mensen aanhouden, het IP Symcon forum heeft een aantal zinnige threads waarin wat genoemd word over structuur of logica, maar echt een "hoe zet je dit handig op" overzicht lijkt er niet te zijn. De meerderheid van de mensen lijkt gewoon de boel aan elkaar te haken met scripts.

Femme, hoe heb jij het nu in elkaar gezet, in het verleden meen ik te hebben gelezen dat je per ruimte een roomcontroller had waarin je alles afhandelde. Kun je iets meer vertellen hoe je dat, met name uit structuuroogpunt, hebt opgezet?
Op mijn leven wat makkelijk te maken heb ik een framework gemaakt voor het werken met objecten en modules. Het framework voorziet in o.a. de volgende functionaliteit:
  • Service container die makkelijk toegang biedt tot allerlei diensten (bijv. dmv $serviceContainer->get('ObjectModelFactory')) en de mogelijkheid biedt om services en hun constructor parameters in een json-bestandje te definiëren zodat ik makkelijk nieuwe services kan toevoegen.
  • Class auto loader zodat je niet met de hand bestanden hoeft te includen om een bepaalde class te kunnen gebruiken.
  • Modellen voor alle soorten objecten in IP-Symcon, aanroepbaar via een uniforme methode ($objectModelFactory->getById($objectId)). Dit maakt het een stuk makkelijker om met categorieën, instanties, variabelen, events en links te werken. Ik hoef niet te weten wat de functie is om een naam van een bepaald soort object te krijgen of te veranderen, dat werkt altijd hetzelfde ( $object->getName() of $object->setName($name)). Wat het tevens doet biedt is uniforme methodes om de waarde van een instantie te setten of getten via $object-setVaue() of $object->getValue(), voor zover ik het betreffende type instantie heb geïmplementeerd. IP-Symcon heeft voor elk soort hardware een aparte functie en dat werkt niet handig. Het moet niet uitmaken of ik de waarde van een modbusadres of een z-wave schakelactor wil veranderen.
  • Allerlei classes om het werken met modules te vereenvoudigen. Ik pas grofweg de principes van het model-viewer-controller-pattern toe. Elke module heeft een model dat het datamodel van de module bevat (met methodes om bijvoorbeeld de kamertemperatuur en doeltemperatuur van een room temperature controller op te vragen) en één of meerdere services daaromheen die higher level business logic bevatten, bijvoorbeeld de logica die ervoor zorgt dat een output van een room temperature controller aan gaat als de kamertemperatuur onder de doeltemperatuur zakt. Deze services hebben eventueel ook toegang tot de modelen of services van andere modules.

    Views heb ik nog niet geïmplementeerd maar dit zou het inrichten van een categorie voor de app/WebFront zijn met eventueel de html van htmlBoxes voor het geval de standaard mogelijkheden van IP-Symcon niet voldoen om gegevens en functionaliteit op de gewenste manier toegankelijk te maken.

    Verder zorgt het er o.a. voor dat ik variabeleprofielen centraal in json configuratiebestanden kan beheren en per module variable-identitieten kan definiëren met eigenschappen zoals de naam, het gebruikte variabeleprofiel, de positie, of er een actie aan zit en of de variabele moet loggen. Met behulp van één regel code kan ik de waarde van een variabele met een bepaalde identitiet verkrijgen in het model van een module en dan zorgt de achterliggende code ervoor dat de variabele wordt aangemaakt indien nog niet aanwezig. Als je in en module elke keer dat je een variabele nodig hebt de eigenschappen met de hand moet gaan zitten setten en valideren wordt je snel simpel van de redundante code.
In mijn nieuwe code probeer ik alle herbruikbare functionaliteit in modules te stoppen. Die modules hebben een beperkte verantwoordelijkheid. De room temperature controller heeft bijvoorbeeld maar één uitgang voor een instantie die het warmwaterventiel schakelt. Als er meerdere ventielen geschakeld moeten worden die ieder hun eigen output hebben, dan moet ik er een 'digital output duplicator' module tussen zetten die maximaal acht andere outputs schakelt. Dit kan ik gebruiker voor verwarming maar ook elke andere toepassing waarin ik de status van een instantie willen dupliceren naar andere instanties. Voor de input van de kamertemperatuur geldt hetzelfde, via een ‘variable aggregator’ kan bereken ik het gemiddelde van verschillende input variabelen zodat de room temperature controller die niet zelf hoeft te kunnen.

Het plannen van de doeltemperatuur van de kamer gaat via een eigen module waar je een comfort, nighttime setback en eco-temperaturen kunt instellen via een weekplan kanneer die actief zijn. Deze module wijzigt de doeltemperatuur van de room temperature controller. Dit is een beetje hoe de modules voor verwarming met elkaar samenwerken:



In de object tree ziet het er zo uit:







Het bouwen van modules kost wel veel tijd en ik zit nog steeds bezig met het uitbouwen en refactoren van mijn framework om ervoor te zorgen dat ik zo makkelijk mogelijk nieuwe modules kan bouwen en varianten van bestaande modules kan maken (die generieke interfaces gebruiken).

Op het systeem waarop ik dit aan het opbouwen ben heb ik een aparte categorie-indeling gemaakt voor hardware-instanties en logica-instanties (modules zoals de temperatuurcontroller) en eventueel losse scripts. Op het hoogste niveau zijn de categorieën ingedeeld op basis van de ruimte in het huis.

De webfronts zitten ook in aparte structuren die opgebouwd zijn uit categorieën en links naar variabelen of instanties.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
jwhijm schreef op zondag 26 maart 2017 @ 14:46:
Hallo!

Ik ben op zoek naar een php module voor de Eneco Toon.
Heeft iemand deze toevallig al gevonden / in gebruik?
Ik acht de kans klein omdat er weinig Nederlandse gebruikers van IP-Symcon zijn.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
lemonade schreef op vrijdag 21 april 2017 @ 09:52:
@Femme Wat is de ervaring met data logging? Ik wil o.a. mijn PV installatie en energiewaardes loggen, kan dit in Symcon? Zit er iets van aggregatie in voor historische data?
Je kunt een variabele laten loggen. IP-Symcon kan dan grafieken weergeven in de app en de webinterface en je kunt de data er via php-commando's uithalen (om bijvoorbeeld je eigen meer geavanceerde grafieken te maken met c3.js of een andere library of om er berekeningen op los te laten).

De waarde kunnen als cumulatieve waarde geaggregeerd worden en je kun ook makkelijk gemiddelden over een bepaalde tijd eruit halen via php-command's.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
AddictIT schreef op zaterdag 22 april 2017 @ 11:11:
Zijn er mensen die IPS benaderbaar hebben gemaakt via het internet, al dan niet via een reverse proxy?

Hoe gaan jullie om met authenticatie tot webfront of via de app? Wordt er zoiets als 401 basic authenticatie ondersteund (voornamelijk vanuit de app) en kan dit gekoppeld worden aan een LDAP backend?

Combinatie van beiden zorgen wel voor wat meer zekerheid wanneer je die controller benaderbaar maakt van buitenaf, zonder gebruik te moeten maken van vpn.

Voor zover LDAP authenticatie niet aanwezig is, is dit iets wat zou kunnen toegevoegd worden aan de software door middel van eigen scripts/modules?
Er is een WebOAuth-module waar je iets mee kunt doen. Zie voorbeeld hier:
https://github.com/paresy/SymconTest/tree/master/OAuthTest

Via het contactformulier kun je een identifier aanvragen bij Symcon en dan via Symcon Connect en OAuth autoriseren, zo lijkt het. Symcon Connect is een dienst om je webfront/app toegankelijk te maken voor de buitenwereld zonder zelf fort forwarding te moeten doen. Misschien kun je iets bouwen om via OAuth een client over LDAP te authenticeren.

Ik gebruik zelf NAT op de router met de wachtwoordbeveiliging van het webfront en ssl voor encryptie en authenticatie.

Femme wijzigde deze reactie 24-04-2017 16:47 (4%)


  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
gompy schreef op woensdag 26 april 2017 @ 08:45:
Hallo,

op dit moment gebruik ik Homeseer, alle divices die ik gebruik worden (al dan niet met een plugin) goed ondersteund. Ik gebruik op dit moment: Visonic Alarm, Zwave, Netatmo, Plugwise Circles, Plugwise Smile, MQTT (o.a. arduino sensors) en Nefit Easy. Via Homeseer is alles goed te schakelen en is geïntegreerd met mijn Homekit.
IP-Symcon heeft op dit moment nog geen native MQTT-ondersteuning. Er is wel een module die het minimaal benodigde ondersteund om berichten te ontvangen en te versturen:
https://github.com/thomasf68/IPS_MQTT
quote:
Wat ik vooral mis is een goede IOS App, grafieken en complexe scene's die je programmeren. ik werk daar nu een beetje omheen met een eigen app, homekit en grafana. Maar ik vind dit verre van prettig werken en erg complex en niet geïntegreerd.
IP-Symcon heeft een nette app die je helemaal naar eigen wens kunt inrichten met behulp van de standaard objecten zoals categorieën (voor hiërarchische navigatie in de app), variabelen (met weergave van grafieken als logging voor de betreffende variabele is ingeschakeld), links (om te linken naar andere objecten buiten de boomstructuur van je map waarin je je webfront/mobile app inricht) en instanties (die meestal variabelen groeperen die de state van de instantie representeren). Verder zitten er o.a. circle sliders en kleurwielen in om de waarde van een variabele binnen een bepaald bereik te selecteren en om een kleur te kiezen.

Als iets niet lukt met standaard objecten kun je altijd nog een string variabele van het type HtmlBox maken, waarmee je een html view in de app kunt maken. Daar kun je volgens al het mogelijke in doen met behulp van de de json api of met html die je genereert vanuit een script. Het is vrij eenvoudig om bijvoorbeeld met behulp van c3.js complexere grafieken te maken.
quote:
GENETX schreef op woensdag 26 april 2017 @ 09:54:
[...]

Sorry dat ik hier even "inbreek" :P , maar is de myopenhab service geen oplossing? Dan heb je ook geen VPN nodig om in je OpenHAB systeem te komen van buiten je thuisnetwerkt.
Ik weet niet wat myopenhab is maar vermoedelijk lijkt dit op Symcon Connect. Daarmee kun je zonder VPN of port forwarding toegang krijgen tot je systeem.
quote:
AddictIT schreef op woensdag 26 april 2017 @ 11:14:
[...]

Dat zou op zich kunnen, maar ik vertrouw die diensten nooit helemaal, omdat je nooit weet hoe die applicatie-flow volledig in elkaar zit.
Daarom dat ik bij voorkeur gebruik maak van een reverse proxy zoals Citrix NetScaler om dit verkeer af te handelen en te beveiligen.
Ik heb toevallig vandaag wat zitten klooien met een nginx reverse proxy op mijn dedicated server om via een nette url toegang te krijgen tot IP-Symcon. Dit werkt gewoon goed. Inloggen gaat goed, toegang op de apps werkt. Alleen de response is net een tikkeltje trager dan bij directe toegang (mijn server staat in Frankfurt).

Qua beveiliging is dit wel net wat mooier omdat je router niet aan alles en iedereen toegang hoeft te verschaffen tot je domoticasysteem (maar alleen aan de reverse proxy) en ik vind het ook wel een prettig idee dat uit de hostname van de reverse proxy niet het ip van mijn router te achterhalen is. Nog mooier is dan de combo met een client-side certificaat zoals in https://gist.github.com/mtigas/952344 .

Femme wijzigde deze reactie 26-04-2017 15:26 (9%)


  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
Ik heb de mogelijkheid van een nginx reverse proxy in combinatie met client certificaat voor nog betere beveiliging vandaag nog even uitgeprobeerd. Deze methode werkt wel in de browser maar in de iOS-app krijg ik een parse error en doet de app niets meer. Best jammer want specifiek voor een situatie waarin je maar enkele personen en apparaten toegang wil geven is zo'n client certificaat wel een mooie manier van authenticatie.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
Nhz schreef op maandag 28 augustus 2017 @ 11:07:
Ik wil deze week ook even IP-Symcon gaan installeren op mijn Raspberry (met AEON Labs zwave plus stick). Volgens de documentatie werkt het op Raspbian Jessie, maar die is inmiddels vervangen, de laatste versie is Stretch.

Zijn er bekende problemen met installaties op andere versies dan Jessie?

Tevens heb ik even gezocht naar het installeren van de zwave USB stick, maar ik kan er niet echt een duidelijke handleiding van vinden. Dat kan komen door mijn behoorlijk achterhaalde (en achtergestelde) kennis van de Duitse taal, of is dat inderdaad wat lastig te vinden?
Voor wat betreft Raspbian Stretch kan ik je niet helpen. Ik draai IP-Symcon zelf op een Odroid C2 met Ubuntu en dan moet ik zelf wat dependencies installeren, maar uiteindelijk draait het wel.

Om de z-wave stick te gebruiken voeg je een 'Z-Wave Configurator' toe via 'Create Configurator' in de welkomsttab van de management console. Dan krijg je als het goed is automatisch een serial port onder I/O Instances in je tree view. Die seriële poort moet je even goed instellen. Vervolgens kun je via de Z-Wave Configurator devices toevoegen en beheren.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
Nhz schreef op woensdag 30 augustus 2017 @ 10:53:
Helaas, Stretch werkt niet. Staat nu ook op de website: "kein Raspbian Strech".

Nu zat ik al een tijdje te twijfelen om een barebone te kopen, ipv een Pi. Dit vind ik zelf wel een goed moment. :9 Hebben jullie aanraders? Zat zelf aan bijvoorbeeld een Shuttle NC02U3 te denken.
Ik draai het op een Odroid C2. Voordelen boven een Pi: 2GB ram, hogere kloksnelheid (1,5GHz ipv 1,2GHz), native gigabit ethernet en mogelijkheid om eMMC te gebruiken (sneller en betrouwbaarder dan SD). Kost wel wat meer.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
roger_s schreef op donderdag 2 november 2017 @ 19:38:
Ik weet niet zo goed waar ik mijn vraag moet stellen omdat er een overlap is met het gebruik van mijn PLC, maar ik stel hem hier ook maar.

Ik krijg het niet voor elkaar om een 0-10V dimmer aan te sturen, zowel met pulsedrukker als via de webfront niet.

Ik denk dat ik ergens fundamenteel de fout in ga, namelijk met het aanmaken van de AO in IPS. Het type dat de AO krijgt is altijd een integer en ik denk dat dit iets anders moet zijn om de juiste waarde te zetten/uit te lezen. Dat ziet er momenteel zo uit:

[afbeelding]


[afbeelding]

Ik heb op de site van IPS gezocht, daar kom ik wel wat verwante artikelen tegen, maar eigenlijk geen die gedetailleerder beschrijft hoe ik dit moet aanvliegen.

Ik heb dus ook nog geen script in IPS kunnen maken.
Ik zou smallint als unit kiezen en eens kijken wat hij doet als je een waarde van 65535 schrijft via ModBus_WriteRegisterSmallInt($instandeId, $value); (vanaf IP Symcon 4.4: ModBus_WriteRegisterShort).

Als dat niet werkt zit je waarschijnlijk naar het verkeerde adres te schrijven of klopt er iets anders niet :) .

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
gompy schreef op zondag 10 december 2017 @ 20:34:
Gebruikt hier iemand IPSView, en wat zijn de ervaringen?

Voor welke doeleinden gebruiken jullie het? iPad op de muur of op de iphone?
Ik heb er wel even mee gespeeld. Het lijkt me behoorlijk bewerkelijk om je eigen views op te zetten met IPSView. Ook biedt het niet zoveel handvaten en echt mooie dingen te maken.

Een alternatief voor IPSView is AIO Creator Neo met de IP-Symcon plugin. Hier zou je wel gave dingen mee moeten kunnen maken gezien de screenshots, maar de integratie met IP-Symcon schijnt wel beperkt te zijn. Dat is bij IPSView veel beter aangeizen het specifiek voor IP-Symcon is gemaakt.




  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
thomke schreef op maandag 15 januari 2018 @ 14:22:

deze licentie is niet gewoon voor updates te blijven ontvangen? maar er verdwijnt ook functionaliteit als je stopt met betalen?
De licentie is nodig om updates te ontvangen en gebruik te maken van hun infrastructuur voor notificaties en remote toegang (Symcon Connect).

Remote toegang kun je zelf regelen met port forwarding en eventueel een reverse proxy.
Hun notificatiesysteem is wel handig. In theorie kun je er wel omheen werken door notificatiediensten zoals PushOver te implementeren in je code.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
DomiGijzen schreef op maandag 15 januari 2018 @ 22:35:

Meteen een vraag:
Is er iemand met een Railduino die deze proper heeft draaien in IPS? Ik loop er namelijk tegenaan dat de digital output, de relais' dus, wel schakelen maar dat ik het register bij het volgende relais ook zie veranderen. Komt volgens mij omdat Railduino 16bit variabelen verwacht maar IPS alleen met 32bit variabele het relais daadwerkelijk weet te schakelen. Het is geen groot issue want het functioneert wel. Netjes is het niet.
Om een relais van de Railduino te schakelen maak je een modbus-instantie aan in IP-Symcon met als unit 1-bit, read function code ('Read single coil'), write function code 'Write single coil' en adres 5.

De waarde van de digitale inputs zit per acht inputs gecodeerd in een 8-bit waarde.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
Ik ben gisteren op het Symcon Preview Event in Lübeck geweest, waar de volgende neuheiten worden aangekondigd:

SymBox Neo
  • Nieuwe versie van de Symbox, accepteert nu 5-24VDC voeding en voeding via PoE. De versie voor din-rail montage kan uitgebreid worden met KNX, 1-Wire, M-Bus, RS-485 (Modbus RTU), Z-Wave of EnOcean. Je kunt de SymBox nu dus direct aan bijvoorbeeld een KNX-netwerk hangen.
  • Hardware: quad-core 1,2GHz ARM v7 processor, 1GB RAM en 3GB eMMC opslag.
  • De prijs begint bij 400 euro inclusief een licentie die normaal gesproken 100 euro zou kosten. Nog steeds best duur, voor 100 euro heb je een Odroid C2 met 32GB eMMC en din-rail behuizing.
  • De uitbreidingen voor de SymBox zijn niet duur en variëren van 30 euro voor RS-485 tot 70 euro voor KNX.
IP-Symcon 5.0
Nieuwe features:
  • Integratie van PHP 7.0, dus alle voordelen van PHP 7 waaronder betere performance en compatibiliteit met libraries die afhankelijk zijn van PHP 7.0. Daardoor is nu ook betere spraakondersteuning mogelijk via Alexa, Google Assistant en HomeKit.
  • Betere KNX-ondersteuning: ondersteuning van meer dan 370 datatypen in 77 DPT-klassen. Geen idee wat het betekent maar zou de integratie van alle KNX-apparaten mogelijk moeten maken.
  • Native ondersteuning van de toegangssystemen van eKey (vingerscanner waarmee je deuren kunt openen).
  • Ondersteuning voor Docker zodat IP-Symcon kan draaien op alle 64-bit systemen waar Docker op functioneert, waaronder Qnap en Synology netwerkopslag.
  • Verbererde pushnotificaties: je kunt een objectId meegeven waar de notificatie naar toe leidt als je er op klikt. Je kunt bijvoorbeeld een categorie in de app openen of een script starten als er op een notificatie wordt geklikt, zodat je vanuit een deurbelnotificatie kunt doorklikken naar een camerabeeld.
  • Uitbreiding van Location Control, je kunt een offset opgeven zodat je het moment van zonsop- en ondergang kunt bijstellen.
  • Grafieken in WebFront kunnen rauwe data weergeven zonder interpolatie en het wordt mogelijk om multi-grafieken te maken waarin bool- en lijngrafieken worden gecombineerd (bijv. temperatuurverloop in een ruimte versus status van verwarmingsventiel).
  • Er komt een standaard meegeleverde lichte skin voor het WebFront.
  • De managementconsole wordt volledig webbased, zodat er geen Windows-applicatie meer voor nodig is. Dat is een enorme verbeteringen voor mensen die geen Windows gebruiken. Er zitten mooie nieuwe features in zoals de weergave van widgets op het homescreen van de managementconsole waarmee je o.a. de status van het systeem kunt inzien.
Verder was er een demo van Alexa, een workshop PHP Modules ontwikkelen en een vragensessie. Ik heb geïnformeerd naar de status van de Engelse vertaling van de documentatie. Men is nu werkelijk bezig om geleidelijk alles te vertalen naar het Engels.

Video's: https://www.symcon.de/events/

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
thomke schreef op zondag 28 januari 2018 @ 11:31:
Dag iedereen!

Ik ben mij nog altijd wat aan het verdiepen in het IP-symcon wereldje
( zoals ik ook al vermeld had in deze post: Home Automation - Controller - Professional)

Ik weet dat de RFXcom niet ondersteund wordt door IP-Symcon (wat ik zeer spijtig vind) .

Maar op het forum van IP-Symcom lees ik hier en daar van mensen die dit wel gebruiken..

Zijn er hier mensen die ervaring hebben met RFXcom en IP-Symcom? hoe makkelijk is het te integreren?
(ik ben gewoon van RFXcom te gebruiken met domoticz, en hierbij werkt het echt heel simpel)
Ik heb geen ervaring met een RFXcom. Als dat ding op een simpele manier via usb communiceert is het vast wel mogelijk om een integratie te maken (het mooiste als splittermodule). Dit vergt echter wel enige programmeerervaring.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
quote:
thomke schreef op woensdag 11 juli 2018 @ 13:18:

Dus ik had eignlijk 2 vragen:
heeft er iemand ervaring met de google assistant integratie? (volgens mij moet je dan wel de IP-Symcon subscription hebben.. wat nu niet zo veel is.. (40 euro per jaar) ik vermoed niet dat je dit kan zonder? )
Daar ben ik dus ook geen fan van.. stel dat ze plots belissen de prijs omhoog te doen.. of gewoon te stoppen met de dienst..
De subscription heb je nodig om na het eerste jaar gebruik te kunnen maken van Symcon Connect (om van buiten je huis zonder port forwarding bij je webfront te komen) en om notificaties te ontvangen. Of het ook nodig is voor Google Assistant integratie weet ik eigenlijk niet.

In IP-Symcon 5.0 (waarvan net de eerste release candidate is uitgekomen) is Google Assistant integratie en koekje. Je moet de module installeren, een instantie aanmaken onder core instances en dan kun je daar je dingen instellen. Zie:
https://www.symcon.de/for...)-mit-IP-Symcon-verbinden

Die voor HomeKit werkt vergelijkbaar en had ik snel up and running.
quote:
Mijn 2e vraag is als er toevallig mensen (Femme?) zijn die het zouden zien zitten om eens een basis opleiding (nederlands of engels) te geven rond ip-symcon? Ik weet niet als er nog mensen intresse hierin zouden hebben maar ik in ieder geval wel! volgens mij zou een opleiding van 1 dag veel mensen over de streep halen om voor ip-symcon te kiezen. (bij voorkeur dan wel tegen de belgische- nederlandse grens ;) )

In hoeverre dit praktisch haalbaar is weet ik niet, maar ik zie het eerder als een demo hoe je van 0 start (dus hoe de hardware configuratie opbouwen (verschillende protocollen modbus, dmx, knx,.. ) , hoe variablen gebruiken, en events aanmaken, hoe de visualisatie opbouwen, hoe plugins gebruiken,... en dat dan de mensen in 'opleiding' kunnen meevolgen (live toekijken en via powerpoint?) en tussendoor vragen kunnen stellen.
Ieder zijn eigen basis opstelling en zelf meedoen lijkt mij praktisch niet haalbaar, En volgens mij zal er sneller kennis kunnen overgebracht worden door gewoon mee te kijken, en aan de hand van een powerpoint. eventueel de sessie opnemen zodat deze later kan herbekeken worden indien we thuis het wel eens in de praktijk willen overdoen. Misschien is het een idee ddat ook wel voorgelegd kan worden aan IP-symcon en willen ze wel de sessie sponseren/mee helpen met de opleiding.
Het lijkt me wel leuk om dit te doen. Momenteel ontbreekt me de tijd omdat er een baby op komst is tussen nu en drie weken.

Een setting waarin de deelnemers elk of per twee personen over een eigen single board computer, monitor/toetsenbord/muis en wat hardware kunnen beschikken werkt wel het leukst denk ik. Ik zal er eens over nadenken.

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
Leuk dat je met IP-Symcon aan de slag bent. Ik kan wel eens mijn skin voor het webfront delen, die ziet er al wat beter uit dan standaard.

Afgelopen weekend was het jaarlijkse Symcon event in Lübeck waar een preview werd gegeven van IP-Symcon 5.1. De highlights:
  • Update van PHP naar versie 7.3
  • Webfront maakt gebruik van websocket om verandering van server naar client te pushen ipv dat de client elke seconde een api request doet om mogelijke updates op te halen.
  • De prestaties van de webbased management console zijn verbeterd en zouden nu acht keer beter moeten zijn (in een installatie met veel objecten wordt de console nu best wel traag als je er enige tijd mee bezig bent).
  • Support voor Homematic CCU3 (niet zo boeiend voor Nederland want hier nauwelijks verkocht).
  • Mogelijkheid om data in de management console te importeren in verschillende bestandsformaten.
  • Support voor RTSP-streams voor surveillancecamera's. IP-Symcon kan hierbij een enkele stream uit een camera doorstreamen naar meerdere clients.
  • Z-wave code wordt herschreven en zou beter moeten presteren (komt mogelijk niet mee in eerste release van 5.1).
  • Apps krijgen lichte en donkergrijze skins naast de bestaande blauwe.
  • iOS app ondersteunt Siri shortcuts.
En dan de knaller: er komt een Module Store waarmee je vanuit de management console makkelijk naar modules kunt zoeken en ze kunt installeren. Module ontwikkelaars kunnen via de Symcon-website modules hun toevoegen. Vooralsnog zit er geen verdienmodel achter.

In de toekomst komt er sandboxing voor modules zodat je zeker van bent dat modules die je via de store naar binnen hengelt niet je systeem slopen of privacygevoelige data naar een andere partij sturen.

Ook interessant is dat ze aan het nadeken zijn over een high availability oplossing waarmee Symcon-installaties in een master-slave-opstelling kunnen draaien en de slave failover doet op het moment dat de master down is. Dit vereist wel dat je hardware ermee overweg kan (je gebruikt ethernet gateways die bij voorkeur meerdere verbindingen tegelijk aankunnen).

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
Nog een mooie verbetering die eraan komt: IP-Symcon krijgt eindelijk een geïntegreerde MQTT broker. De lead developer heeft zich na het event van vorige week en de feedback die hij daar kreeg even druk gemaakt en een proof of concept in elkaar gesleuteld. De MQTT Broker wordt waarschijnlijk nog niet gereleased in 5.1 maar in 5.2.

Ik gebruik nu een tijdje een zelfgebouwde MQTT client op basis van het werk van thomasf68 om MQTT topics van een Wago 750-881 te ontvangen en dat werkt super. Ik heb een 'Double Push Button' module gemaakt om het links, rechts en dubbel en het kort en lang indrukken van een dubbele pulsdrukker te kunnen herkennen. Dit werkt matig icm met modbus polling maar super goed icm MQTT, helemaal afhankelijk van logica op de plc.

Acties:
  • 0Henk 'm!

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
noahmaes schreef op vrijdag 3 mei 2019 @ 15:48:
[...]


Ha Femme,

Nadat mijn projectje een paar weken stil heeft gelegen heb ik het tweaken weer opgepakt;

Ik heb inmiddels op je aanraden de LAN versie van de Railduino in huis :-)

Heb jij een module in symcon hiervoor gebouwd?

Het verzenden van commando's is met "USCK_SendText(53939, "rail1 ro1 on");" vrij eenvoudig, maar hoe lees je realtime de input statussen uit van schakelaars etc? Met "RegisterVariable" kom ik er niet uit.
Ik heb er nog geen module voor gebouwd, maar wil me daar best eens aan wagen. Ik heb hier zelf alleen de oude Railduino liggen.

De Raiduino zou via udp een berichtje moeten sturen als de status van een input wijzigt. Zie je in de debugweergave van de udp-instantie die je hebt gemaakt al wel data binnenkomen als je op schakelaars drukt?

Acties:
  • 0Henk 'm!

  • Femme
  • Registratie: juni 1999
  • Laatst online: 22:05

Femme

Hardwareconnaisseur

Official Jony Ive fan

Topicstarter
noahmaes schreef op dinsdag 7 mei 2019 @ 17:00:
[...]

Heel cool; wat mij betreft leggen we een potje in om iemand deze module te maken! ;-)

De railduino luistert naar de UDP commando's die ik verstuur, deze zie ik ook in de debug weergave van de UDP. Schakelingen (bijvoorbeeld als ik 12v op een input zet) geven wel een lampje op de railduino, maar zie ik niet in de UDP debug.
De Railduino ontvangt udp-berichten op poort 55555 en verstuurt multicast udp-berichten op poort 44444. Heb je een udp-instantie aangemaakt om op die poort te luisteren?
Pagina: 1


Apple iPhone 11 Nintendo Switch Lite LG OLED C9 Google Pixel 4 FIFA 20 Samsung Galaxy S10 Sony PlayStation 5 Moederborden

'14 '15 '16 '17 2018

Tweakers vormt samen met Tweakers Elect, Hardware Info, Autotrack, Nationale Vacaturebank, Intermediair en Independer de Persgroep Online Services B.V.
Alle rechten voorbehouden © 1998 - 2019 Hosting door True