Programm für die CCU entwickeln
Moderator: Co-Administratoren
Programm für die CCU entwickeln
Hallo zusammen,
Ich würde gerne ein Programm in C schreiben.
Damit ich Befehle von der CCU an einen Rechner schicken.
Ich vermute mal dass ich auf der CCU einen GCC installiert bekommt. Wie kann ich also Codedateien kompilieren für die CCU ?
EDIT: Oder kann ich über NETCAT Befehle an meinen Linux Rechner schicken ?
z.B. ich schick den Befehl "play" an meinen Linux Rechner und der Rechner hört dann "play" und startet irgendwelche Scripte ?
Ich würde gerne ein Programm in C schreiben.
Damit ich Befehle von der CCU an einen Rechner schicken.
Ich vermute mal dass ich auf der CCU einen GCC installiert bekommt. Wie kann ich also Codedateien kompilieren für die CCU ?
EDIT: Oder kann ich über NETCAT Befehle an meinen Linux Rechner schicken ?
z.B. ich schick den Befehl "play" an meinen Linux Rechner und der Rechner hört dann "play" und startet irgendwelche Scripte ?
Re: Programm für die CCU entwickeln
Versenden geht einfach über die system.Exec() schau mal hier HomeMatic RemoteShutdown
Re: Programm für die CCU entwickeln
Welches Linux muss ich verwenden um möglichst nah an der CCU zu sein ?
-
- Beiträge: 12945
- Registriert: 16.01.2009, 18:48
- Wohnort: Steingaden
- Hat sich bedankt: 1623 Mal
- Danksagung erhalten: 222 Mal
Re: Programm für die CCU entwickeln
siehe bei zeitumstellungsfehler ... Busybox
-------
!!! der download der handbüchern auf den seiten von eq3 und das lesen der tips und tricks kann das hm-leben sehr erleichtern - das nutzen der suche nach schlagworten ebenso !!!
wer schreibfehler findet darf sie behalten.
!!! der download der handbüchern auf den seiten von eq3 und das lesen der tips und tricks kann das hm-leben sehr erleichtern - das nutzen der suche nach schlagworten ebenso !!!
wer schreibfehler findet darf sie behalten.
Re: Programm für die CCU entwickeln
Hi,
die Toolchain zur CCU kannst du unter folgender URL herunterladen:
http://www.homematic.com/index.php?id=151
Gruß
chii
die Toolchain zur CCU kannst du unter folgender URL herunterladen:
http://www.homematic.com/index.php?id=151
Gruß
chii
Re: Programm für die CCU entwickeln
Hallo zusammen,
ich habe ein Linux Programm geschrieben, das zu einem Linux/Mac Rechner eine Socketverbindung aufbaut und dann "Befehle" schickt.
Beispiel ./conkit ipadresse port befehl
> ./conkit 123.123.123.123 404 play
Das Programm am Server guckt dann nach für was der Befehl play steht und führt ein passendes Script aus.
Wie kann ich meinen Code für die CCU kompilieren ? Ich hab das mit der Toolchain nicht hinbekommen. Kann mir einer helfen ?
ich habe ein Linux Programm geschrieben, das zu einem Linux/Mac Rechner eine Socketverbindung aufbaut und dann "Befehle" schickt.
Beispiel ./conkit ipadresse port befehl
> ./conkit 123.123.123.123 404 play
Das Programm am Server guckt dann nach für was der Befehl play steht und führt ein passendes Script aus.
Wie kann ich meinen Code für die CCU kompilieren ? Ich hab das mit der Toolchain nicht hinbekommen. Kann mir einer helfen ?
Re: Programm für die CCU entwickeln
Hi,
hier eine Schritt-für-Schritt-Anleitung zum Aufsetzen der Toolchain:
1) VM aufsetzen
Ich würde dir empfehlen, die Toolchain in einer virtuellen Maschine zu installieren. Dazu brauchst du zunächst Virtualisierungssoftware (z.B. VMware Player oder Virtual Box). Damit erstellst du dann eine virtuelle Maschine (10 GByte HDD und 256 MByte RAM sollten ausreichen; mehr geht immer). In der virtuellen Maschine musst du dann ein Linux installieren. Ich selbst verwende Debian 6, es spricht aber nichts gegen Ubuntu oder irgendein anderes System. Im Weiteren gehe ich aber mal von Debian 6 aus .
Nachdem das Betriebssystem läuft, solltest du einige Pakete installieren, die du später zum Übersetzen benötigst. Dazu gehören build-essential, bison, flex und gettext (evtl. auch andere, aber dazu später mehr). Es empfiehlt sich sehr, auch die Gasterweiterungen der jeweiligen Virtualisierungsoftware zu installieren (z.B. VMware Tools).
2) Toolchain herunterladen und entpacken
Die Toolchain findest du unter:
http://www.homematic.com/firmware/hm-cc ... 000.tar.gz
Anschließend entpackst du die Toolchain in deiner virtuellen Maschine in ein beliebiges Verzeichnis (z.B. /home/user/src).
3) GNU Debugger deaktivieren
Der GNU Debugger macht beim Compilieren Probleme. Deshalb würde ich ihn deaktivieren. Irgendwo hier im Forum gibt es eine Anleitung, wie man den Debugger mitbauen kann (ich glaube von dirch), aber ... ach, der gdb wird überbewertet .
Öffne ein Terminal und gehe in das Verzeichnis, in dem du die Toolchain entpackt hast. Hier startest du den Konfigurationsdialog über:
Im Untermenü "Toolchain" deaktivierst du alles, was zum Unterpunkt "GDB" gehört.
4) Toolchain bauen
Nun kannst du die Toolchain bauen. In Debian verwendest du dazu das Root-Terminal. Ansonsten "sudo". Im Verzeichnis, in dem du die Toolchain entpackt hast, führst du folgendes Kommando aus:
Nun sollte die Toolchain gebaut werden. Falls irgendwelche Abhängigkeiten fehlen, schlägt "make" fehl. Dabei erhältst du eine aussagekräftige Fehlermeldung, welches Paket fehlt. Das muss dann nachinstalliert werden. Wenn alles vorhanden ist, dauert der Build einige Minuten. Danach liegen die Binaries der Toolchain unter /usr/local/arm-linux/bin.
5) C-Compiler starten
Die Binaries liegen unter /usr/local/arm-linux/bin. Daher solltest du dieses Verzeichnis zum Pfad hinzufügen:
Danach kannst du den C-Compiler starten:
Bei der späteren Entwicklung ist es natürlich sinnvoll, /usr/local/arm-linux/bin permanent im Pfad zu haben. Dazu fügst du die oben genannte Zeile (also das mit dem export PATH...) in die Datei .bashrc in deinem Home-Verzeichnis ein.
Gruß
chii
hier eine Schritt-für-Schritt-Anleitung zum Aufsetzen der Toolchain:
1) VM aufsetzen
Ich würde dir empfehlen, die Toolchain in einer virtuellen Maschine zu installieren. Dazu brauchst du zunächst Virtualisierungssoftware (z.B. VMware Player oder Virtual Box). Damit erstellst du dann eine virtuelle Maschine (10 GByte HDD und 256 MByte RAM sollten ausreichen; mehr geht immer). In der virtuellen Maschine musst du dann ein Linux installieren. Ich selbst verwende Debian 6, es spricht aber nichts gegen Ubuntu oder irgendein anderes System. Im Weiteren gehe ich aber mal von Debian 6 aus .
Nachdem das Betriebssystem läuft, solltest du einige Pakete installieren, die du später zum Übersetzen benötigst. Dazu gehören build-essential, bison, flex und gettext (evtl. auch andere, aber dazu später mehr). Es empfiehlt sich sehr, auch die Gasterweiterungen der jeweiligen Virtualisierungsoftware zu installieren (z.B. VMware Tools).
2) Toolchain herunterladen und entpacken
Die Toolchain findest du unter:
http://www.homematic.com/firmware/hm-cc ... 000.tar.gz
Anschließend entpackst du die Toolchain in deiner virtuellen Maschine in ein beliebiges Verzeichnis (z.B. /home/user/src).
3) GNU Debugger deaktivieren
Der GNU Debugger macht beim Compilieren Probleme. Deshalb würde ich ihn deaktivieren. Irgendwo hier im Forum gibt es eine Anleitung, wie man den Debugger mitbauen kann (ich glaube von dirch), aber ... ach, der gdb wird überbewertet .
Öffne ein Terminal und gehe in das Verzeichnis, in dem du die Toolchain entpackt hast. Hier startest du den Konfigurationsdialog über:
Code: Alles auswählen
> make menuconfig
4) Toolchain bauen
Nun kannst du die Toolchain bauen. In Debian verwendest du dazu das Root-Terminal. Ansonsten "sudo". Im Verzeichnis, in dem du die Toolchain entpackt hast, führst du folgendes Kommando aus:
Code: Alles auswählen
> make
5) C-Compiler starten
Die Binaries liegen unter /usr/local/arm-linux/bin. Daher solltest du dieses Verzeichnis zum Pfad hinzufügen:
Code: Alles auswählen
>export PATH=$PATH:/usr/local/arm-linux/bin
Code: Alles auswählen
> arm-linux-gcc
Gruß
chii
Re: Programm für die CCU entwickeln
Vielen Dank hat perfekt geklappt.
Nun kann ich einen Befehl von der CCU per Skript an meinen Rechner schicken und dort wird dann ein Befehl ausgeführt.
z.B. Shutdown wird geschickt und kurz darauf geht der PC aus und der Zwischenstecker trennt den Strom
Nun kann ich einen Befehl von der CCU per Skript an meinen Rechner schicken und dort wird dann ein Befehl ausgeführt.
z.B. Shutdown wird geschickt und kurz darauf geht der PC aus und der Zwischenstecker trennt den Strom
Re: Programm für die CCU entwickeln
Hab leider die VM nochmal neuinstallieren müssen.
nun klapps nicht mehr. Wenn ich >>make menuconfig<< eingebe, kommt folgende Meldung:
Bin aber 1:1 nach der Anleitung gegangen.
nun klapps nicht mehr. Wenn ich >>make menuconfig<< eingebe, kommt folgende Meldung:
Code: Alles auswählen
root@debian:/home/powerup/Desktop/Toolchain# make menuconfig
package/config/mconf: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
make: *** [menuconfig] Fehler 127
- anli
- Beiträge: 4326
- Registriert: 10.06.2009, 14:01
- Wohnort: 20 Min. nördlich von Hannover und bei Bremen
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 23 Mal
- Kontaktdaten:
Re: Programm für die CCU entwickeln
Dann musst Du die libncurses.so.5 nachinstallieren. Musst mal schauen, ob es das für Dein Release noch gibt. Ein möglicher Ansatz: http://debianforum.de/forum/viewtopic.php?f=12&p=794865powerup hat geschrieben:Hab leider die VM nochmal neuinstallieren müssen.
nun klapps nicht mehr. Wenn ich >>make menuconfig<< eingebe, kommt folgende Meldung:Bin aber 1:1 nach der Anleitung gegangen.Code: Alles auswählen
root@debian:/home/powerup/Desktop/Toolchain# make menuconfig package/config/mconf: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory make: *** [menuconfig] Fehler 127
Herzliche Grüße, anli
Alle Angaben ohne Gewähr und Haftung meinerseits. Verwendung der von mir zur Verfügung gestellten Downloads auf eigene Gefahr. Ich bitte um Verständnis, dass ich aus zeitlichen Gründen keine unaufgeforderte Hilfestellung per PN/Mail geben kann. Bitte allgemeine Fragen ins Forum stellen, hier können viele fähige User viel schneller helfen.
Homematic-Manager v2: einfaches Tool zum Erstellen von Direktverknüpfungen und Bearbeiten von Gerätenamen, -parametern etc. für Homematic und HomematicIP (Alternative diesbzgl. zur WebUI)
Einsteiger-Hilfe • erweiterter Skript-Parser
Alle Angaben ohne Gewähr und Haftung meinerseits. Verwendung der von mir zur Verfügung gestellten Downloads auf eigene Gefahr. Ich bitte um Verständnis, dass ich aus zeitlichen Gründen keine unaufgeforderte Hilfestellung per PN/Mail geben kann. Bitte allgemeine Fragen ins Forum stellen, hier können viele fähige User viel schneller helfen.
Homematic-Manager v2: einfaches Tool zum Erstellen von Direktverknüpfungen und Bearbeiten von Gerätenamen, -parametern etc. für Homematic und HomematicIP (Alternative diesbzgl. zur WebUI)
Einsteiger-Hilfe • erweiterter Skript-Parser