Forum:	Developer
Téma:	LFB Control - kleines Tool für die Velleman K8055
---------------------------------------------------------

Nightmare:
Am Wochenende habe ich endlich die Steuersoftware für die Velleman K8055 Relais/Sensorkarte in Betrieb genommen. Damit werte ich meine widerstandscodierte Lenkradfernbedienung aus.

Während die erste Version noch ein einfaches Konsolenprogramm war, hat Version 2.0 eine einfache grafische Oberfläche und einige andere nützliche Features.

Features:
- automatische Aktivierung des ersten analogen Ausgangs der K8055 auf ~5V
- Überwachung des ersten analogen Eingangs der K8055
- Umsetzung der dort ermittelten Werte in KeyEvents (siehe Config-Menüpunkt &quot;Values&quot;)
- Einbindung externer Programme und Skripte (siehe Config-Menüpunkt &quot;ExternalApps&quot;)

 

 

Systemvorausetzung:
- Windows XP SP2, Windows Vista SP1 (es läuft auf anderen Systemen sicher auch, aber da habe ich es nicht getestet)
- Microsoft .net 3.5 (download)
- K8055D.dll rev 3.0.2 (download)
- Velleman K8055 Relais/Sensorkarte

Derzeit wird nur die Verbindung zu einer Karte unterstützt, da ich noch keinen Bedarf habe, mehrere K8055 gleichzeitig zu nutzen ;)

Mit Version 2 habe ich auch die Überwachung der verschiedenen Powermode-Events von Windows eingebunden. Somit wird z.B. nach dem Ruhezustand ein automatischer reconnect auf die Karte gemacht.
Für externe Programme/Skripte lässt sich festlegen, ob diese beim Programmstart, Programmende, Windows-Suspend oder Windows-Resume ausgeführt werden sollen.

Wer will, kann das Tool gerne testen und mir Fehler oder Verbesserungsvorschläge melden.

download LFB Control 2.0

******************************14.07.2009******************************

Version 2.0.2
Bugfix: LFB Control verhinderte, dass der PC in den Standby-Modus fahren konnte. Stattdessen wechselte dieser in den Ruhezustand (Hibernate)

******************************20.11.2008******************************

Version 2.0.1
Bugfix: Der von Tha-Paul gemeldete Fehler ist nun behoben. Bei der Abprüfung der eingestellten Eingangswerte wurden auch deaktivierte Werte mit überprüft. So kam es zu der Fehlermeldung &quot;Wertebereiche überschneiden sich&quot;, obwohl keine aktive Überschneidung vorhanden war.

******************************30.10.2008******************************

Bugfix: Aus Version 1 verblieb noch ein Delay von 120 ms nach jeder Abfrage der analogen Werte. Dies habe ich nun entfernt, somit können auch Tasten komplett ohne Delay konfiguriert werden.

Mumpits:
Genial!
genau das was ich brauche! Auto kommt in 2 Wochen und falls ich es nicht hinbekomme, die Tasten per Can auszulesen (es kann mir ja leider keiner dabei helfen) werde ich mit einem LFB Adapter arbeiten, der dann wiederstandscodierte Signale ausgibt .. :)
edit:
Habe das Programm mal getestet, aber ohne Relaiskarte:
1. bitte füg doch in dem Programm selber im Window-Head die Buttons Minimieren und Schließen hinzu.. das ist intuitiver als nur diesen &quot;Close&quot;-Button im Programm selber..
2. Beim Drücken des Close Buttons erscheint eine Fehlermeldung (siehe Attachment)

Nightmare:
Die Windows-Buttons hatte ich extra entfernt. Kann sie aber wieder einblenden.
Den Fehler hatte ich noch nicht, werde ich mir mal ankucken. Was für ein OS und welche Version von .net nutzt du?

Mumpits:
hi!
ich verwende windows xp pro sp2
mit .net version 3.0 sp1. habe aber auch v.2.0 drauf..

Nightmare:
ok, schau mer mal. Vielleicht find ich den Fehler ;)

roan:
Zitat:Habe das Programm mal getestet, aber ohne Relaiskarte: 
Hast Du die Valleman treiber installiert?

Nightmare:
Treiber braucht die net. Es reicht, wenn die k8055D.dll im System ist.
Das Programm prüft das aber ab. Falls keine passende dll gefunden wird, wird, wird keine Auswertung gestartet und eine entsprechende Fehlermeldung im Hauptfenster angezeigt.
Edit: Hab das gerade mal getestet. Scheinbar funzt diese Abprüfung nicht mehr.
Allerdings dürfte das mit dem Fehler von oben nichts zu tun haben.
Den vermute ich eher bei der GUI selbst

Nightmare:
Über den Link im ersten Post ist ein neues Paket verfügbar.
Die Abprüfung der DLL müsste jetzt wieder funktionieren. Kannste ja mal testen, ob er das Fehlen der DLL richtig meldet.

roan:
Ja das meinte ich, die dll muß ja irgendwann mal installiert werden. Hau die doch mit in dein Paket und gut.

Nightmare:
Wer ne Velleman hat, hat auch die DLL.
Ich weiß nicht, ob ich die einfach so mit anbieten darf.
Aber ich sollte evtl. noch hinzufügen, dass ich die Version 3 der DLL nutze.
Ich ergänze das oben mal schnell

roan:
Die darfst Du mit anbieten. Ich würde sie um solche Fehler zu vermeiden mit dazu packen.

Nightmare:
ok, ist von nun an mit im Paket

datenflo:
Mumpits hat zwar die velleman aber glaub ich noch nicht installiert gehabt...daher könnte das der Fehler sein

Nightmare:
Ohne die DLL lies sich das Programm bei mir gar nicht starten, bevor ich den Fehler korrigiert habe. Allerdings arbeite ich hier auf Vista. Da verhält es sich vielleicht minimal anders. Warten wir auf sein Feedback ;)

Nightmare:
Ich hab jetzt nochmal unter XP getestet. Auch da konnte ich den Fehler nicht nachvollziehen.
Liegt evtl wirklich daran, dass ich hier auf .net 3.5 entwickle

Nightmare:
Neue Version online

tha-paul:
Nabend
Weis nich ob es das richtige Forum ist hier, hoffe jedoch :)
Also bin gerade dabei meine LFB instandzusetzen.
Habe sie an der Velleman hängen, und nutze das LFB Controll Tool das jemand im Forum hier gemacht hat.
Wenn ich da jetzt in den Settings für Vol+ z.B. werte von 69-73 eingeb, und alle anderen Deaktivier, und ich dann SAVE drücke, kommt immer die Meldung mit &quot;Wertebereiche überschneiden sich&quot;
An was liegt das? habe ja extra schon alle anderen deaktiviert...

tha-paul:
wenn ich alle tasten aktivier, und werte von 1 anfange durchzunummerieren, also vol+ 1-2
vol- 3-4
etc...
dann gehts, aber ich hab z.B: bei vol+ 68-72. das geht nicht.
Warum? da überschneidet sich doch nichts...

Nightmare:
Ich kuck nach dem Fehler. Hab wohl bei der Abprüfung was übersehen ;)
Kann aber ein Paar Tage dauern, sitz grad an ner Hausarbeit.

p.s. Hab deinen Thread mal mit dem eigentlichen Thread zu meiner Software zusammengeführt

tha-paul:
ok, danke dir!

tha-paul:
noch n kleines Problem:
wenn ich das lfb control offen habe und verbunden habe mit der k8055, dann findet cpos die karte nicht mehr.
wenn ich sie erst in cpos verbinde, geht es in lfb-control nimmer.
warum?

Nightmare:
Du kannst immer nur 1 Programm auf die Karte los lassen. Darauf habe ich auch keinen Einfluss.
Aber wenn du eh cPOS benutzt, warum brauchst du dann mein Tool?

tha-paul:
kann ich das alles mit dem Eventhändler auch programmieren?
Quasi dann immer
Signal:Anai_1&gt;50&amp;anai_1&lt;60
Funktion:Vol+
so dann kurz geschrieben oder?

Nightmare:
Jop, cPOS kann das alles auch. Ich habe mir das Tool nur programmiert, da ich cPOS nicht nutzen will, mein Frontend CES die Velleman aber nicht unterstützt

tha-paul:
so, jetzt nochmal zum EV-Händler:)
Habe für VOL+ einen wert zwischen 49- 50.
Habe dann:
Funktion:Vol+
Signal:anai_1&gt;45 &amp; anai_1&lt;55
Wenn ich im EV Händler drinne bin, und ei Signal anai_1 schreibe, steht unten bei &quot;Aktueller Wert&quot; auch 86 drin, und wenn ich die Taste Vol+ drücke, steht die 50 drinne. Das passt also
Was mach ich dann falsch?

tha-paul:
kann mir keiner sagen was ich falsch gemacht hab?

Nightmare:
tha-paul hat folgendes geschrieben:kann mir keiner sagen was ich falsch gemacht hab?Wohl nicht in diesem Thread ;) Ich nutze kein cPos, kann dir somit leider nicht helfen. Kuck dich mal in der cPOS Rubrik um, da gabs schon einige Threads zum Thema EventHandler

Nightmare:
neue Version online, siehe erster Post

schlimbo:
Hi nightmare, 
hab mir gestern dein LFB-Tool heruntergeladen, erst ma vielen dank für dieses geniale tool, 
werte damit die Lenkradfernbedienung meines Opel Astra´s aus, funktioniert super! 
Ich nutze es zum Steuern von Centrafuse, kann bei Centrafuse jedoch keinen extra Hotkey für &quot;media spulen&quot;, sondern nur für &quot;nächster track&quot; belegen, 
das spulen funktioniert dann, wenn man die taste für &quot;nächster track&quot; länger gedrückt hält! 
Gibt es eine Möglichkeit den Tastendruck solange zu Senden, bis man die LFB-Taste wieder loslässt?
mfg Schlimbo

Nightmare:
Derzeit wird beim dauerhaften Drücken einer Taste nur eine Vielzahl der Buchstaben gesendet.
In der nächsten Version wollte ich sowas aber sowieso realisieren, neben einigen anderen Features.
Sobald ich die Zeit dazu finde, wird das also umgesetzt ;)

schlimbo:
Cool, Danke, freu mich schon auf die neue Version!
Könntest du dann auchändern, das man nicht nur einzelne Buchstaben, sondern auch Tastenkombinationen senden kann, da ich nebenbei noch eine Tastatur verwende und derzeitdie Möglichkeit besteht, beim schreiben ungewollt Hotkeys zu senden!

Nightmare:
ist notiert

Jury_85:
ist es möglich mir diesem kleine program nen AVr karte und ne vellmann k8055 zu betreiben?

Nightmare:
Nein, mein Programm unterstützt derzeit nur die Velleman K8055.
Ich überarbeite und erweitere das Programm zwar derzeit, aber die Einbindung anderer I/O Karten ist nicht geplant

schlimbo:
Hi Nightmare,
hab ein kleines Problem, hoff du kannst mir helfen!
Nutze dein Tool schon ne ganze weile! Habe meinen Car-Pc die ganze Zeit beim ausschalten in den Ruhezustand geschickt, 
jetzt wollte ich auf &quot;Standby Modus&quot; wechseln, zwecks schnellerem aufwachen! 
Hatte dann das Problem, dass er trotzdem beim ausschalten in den Ruhezustand gewechselt hat! 
Nach längerem testen und suchen hab ich herausgefunden, dass es an &quot;LFB controle&quot; liegt, 
wenn das tool gestartet ist wechselt er immer nur in den Ruhezustand, hab ich das tool nicht gestartet funktioniert der Standby modus ohne probleme!

Jury_85:
nein ich meinte die avr mit cpos ein binden und zusätzlich die k8055 über das tool. kann ich dann mit beiden karten arbeiten?

Nightmare:
@Jury: Das geht, aber wenn cPos eh beide Karten unterstützt, warum dann den Umweg über meine Software gehen?
Oder kann cPos nur eine Karte simultan verwalten?
@schlimbo: Komische Sache. Eigentlich überwacht mein Tool nur die verschiedenen Suspend-Events (Ruhezustand, Standby, Shutdown, Resume, usw.), ohne diese aktiv zu beeinflussen.
Oder anders gesagt, eigentlich SOLLTE es diese nicht beeinflussen ;)
Ich werds mir bei Gelegenheit mal ankucken. Evtl. finde ich den Fehler.
Ich kann dir aber keine zeitnahe Korrektur versprechen, stecke grad wieder voll im Uni Stress.

Jury_85:
ich dachte man kann bei cpo nur eine karte einbinden.
zumidest weiß ich micht wie ich ne zweite einbinden kann.

Nightmare:
Jury_85 hat folgendes geschrieben:ich dachte man kann bei cpo nur eine karte einbinden.
zumidest weiß ich micht wie ich ne zweite einbinden kann.
Da kann ich dir leider nicht helfen. Würde ich cPos nutzen, wüsste ich das. Aber würde ich cPos nutzen, gäbe es kein LFB Control ;)

Jury_85:
naja ich hoffe mal das klappt. sonst muss ich mir ja was neues einfallenlassen für meine abstandswarner^^

Nightmare:
schlimbo hat folgendes geschrieben:Hi Nightmare,

hab ein kleines Problem, hoff du kannst mir helfen!
Nutze dein Tool schon ne ganze weile! Habe meinen Car-Pc die ganze Zeit beim ausschalten in den Ruhezustand geschickt, 
jetzt wollte ich auf &quot;Standby Modus&quot; wechseln, zwecks schnellerem aufwachen! 

Hatte dann das Problem, dass er trotzdem beim ausschalten in den Ruhezustand gewechselt hat! 
Nach längerem testen und suchen hab ich herausgefunden, dass es an &quot;LFB controle&quot; liegt, 
wenn das tool gestartet ist wechselt er immer nur in den Ruhezustand, hab ich das tool nicht gestartet funktioniert der Standby modus ohne probleme!

Hi schlimbo.
Ich habe nun endlich wieder Zeit zum Programmieren gefunden und hab den Fehler auch prompt entdeckt.
Um vor dem Suspend (Ruhezustand oder Standby) noch externe Programme ausführen zu können, bremse ich den Suspend aus.
Die dafür verwendete Methode lässt sich leider nur so aufrufen, dass sie entweder in den Ruhezustand oder in den Standby wechselt. Das hatte ich damals übersehen.

Problem ist also erkannt und behoben. 
Neue Version im ersten Beitrag.
Bitte testen und berichten.

@all:
Der Nachfolger von LFB Ccontrol ist in Arbeit.
Folgende Features werden nun neben dem von LFB Control gewohnten Leistungsumfang geboten.


 Einbindung beider analogen sowie aller digitalen Eingänge der K8055
 neben der K8055 kann nun auch ein Gamepad mit bis zu 15 Tasten genutzt werden.
 verbesserte Auswertung der Eingangssignale
 neben Tastaturcodes können nun auch Befehle an Winamp oder den Windows Mediaplayer gesendet werden
 neben den Buchstaben a-z kann nun auch mit Strg, Alt, Shift und F4 gearbeitet werden
 drückt man eine Taste, wird zuerst ein Tastaturcode gesendet. Danach wird eine frei wählbare Zeit gewartet, bevor weitere Codes gesendet werden.
 man kann nun aus 4 gängigen Auflösungen wählen, um das Programm automatisch auf den ganzen Bildschirm auszuweiten. Dabei ist es möglich, oben oder unten einen Abstand für die Steuerleiste eines Frontends einzustellen
 ...


Was noch auf meiner Liste steht:

 Doppelbelegung der Tasten
 vollständge Einbindung der K8055
 falls möglich werde ich versuchen, den ccStick anzusprechen
 ...


Sobald ich fertig bin, werde ich eine erste Version online stellen, die ihr dann bitte fleißig testen könnt ;)

@schlimbo:
Deinen Wunsch konnte ich leider noch nicht integrieren. Ich habe verschiedene Wege getestet, einen Tastendruck so lange zu simulieren, wie man die Taste gedückt hält.
Entgegen diverser Forenbeiträge und der MSDN Library funktioniert es bei mir aber ums Verrecken nicht.
Ich sende also weiterhin viele einzelne Tastaturevents.
Sobald ich eine Lösung finde, wird diese natürlich impelementiert

schlimbo:
Hey cool, danke!
Bin zur zeit auf Montage und hatt bis jetzt noch keine Zeit, das neue Programm zu testen, 
aber denk das ich bis zum Wochenende dazu komm!
Meld mich dann noch ma!
Gruß Schlimbo
