Hi, vieleicht kennt sich ja jemand mit control6-scripts in ethersex aus und kann mir ein wenig weiter helfen. Ich möchte gern folgendes realisieren: An einem ADC-Port ein Poti hängen und abhängig von dem Wert per stella (PWM Modul) eine LED in der Helligkeit steuern. Das klappt auch, nur kann ich stella wohl nicht aus control6 herraus direkt steuern, sondern wie im code unten per esend. Wenn ich nun das WAIT weglasse funktioniert nix mehr (ich nehme an, er schickt unendlich viele esends, wäre logisch) mit 1 Sekunde, ist das aber zu langsam. Ich hab einen Schiebepoti und in 1 Sekunde kann ich den von einer Seite auf die andere schieben und die Reaktion kommt dann halt erst 1 Sekunde später. Da ich später Farben mischen möchte (RGB LEDs - 3 Schieberegler) ist 1 Sekunde einfach zu lang. Ich verwende Pollin NetIO, da ich die Einstellungen sowohl übers Netz als auch "am Gerät" verändern können möchte. Ich hab mir schon nen paar gedanken gemacht wie ich mein Problem lösen könnte, aber die sind alle irgendwie doof: - mehrere dieser Threads mit 1 sek Starten und hoffen das sie zeitlich versetzt laufen. - einen ADC Wert merken und nur esend benutzen wenn dieser sich verändert hat (dann tritt wahrscheinlich das problem "nur" nach auf wenn ich den schiebepoti bewege ). - eine globale Variable einfuegen, in der ich die Anzahl der gesendeten esends speicher, wenn der grösser als x ist werden keine mehr gesendet und jede sekunde diese Variable auf 0 setzen (per 2. thread). [code] CONTROL_START THREAD(testing) ECMD_GLOBAL(wert, 0, uint16_t); wert = ADC_GET(7); WAIT(1) ON wert < 512 DO ESEND(192.168.7.3, "channel 0 0\n"); END ON wert > 511 DO ESEND(192.168.7.3, "channel 0 255\n"); END THREAD_END(testing) ON STARTUP DO THREAD_START(testing); END CONTROL_END [code] vieleicht fällt je jemand was besseres ein. Danke erstmal
Gast
#1816333
schreib am Besten an die Mailingliste von Ethersex. http://list.zerties.org/cgi-bin/mailman/listinfo/ethersex-devel Da wird dir bestimmt geholfen... Gruß Martin
jop wäre mein nächster schritt ;) aber danke für den tip.
also die ethersex mailingliste hat geholfen, eine lösung wäre:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.