Manuel, funktioniert das bei dir auch mit 1 kOhm?
Wenn ja, würde ich 1 kOhm in die Make.config.template schreiben, und die Warnung etwas entschärfen.
IRMP auf STM32 - ein USB IR Empfänger/Sender/Einschalter mit Wakeup-Timer
-
-
Im git kann man jetzt am Ende der main.c debug Ausgaben aktivieren. Dadurch wird sof_timeout rausgeschickt. Ausgelesen wird das mit der config GUI im receive mode. Da wird das Maximum und wie oft es auftrat angezeigt.
Bei Testläufen von nicht mehr als 1,5 Stunden habe ich oft 3, einige Male 4 und selten 5 gesehen.
Was ganz am Anfang passiert, erfährt man so nicht, da man den verpasst. Das spielt in der Praxis aber auch keine Rolle.Soweit sich das jetzt schon sagen lässt, funktioniert das doch sehr gut.
-
Es scheint auch vom Board abzuhängen. Meine ersten Tests waren auf einem Dev-Board.
Auf einem Roten bekomme ich nicht mehr als 2, also so wie es sein soll laut Theorie. -
Erste Tests mit direktem Schalten („SimpleCircuit“) haben gut funktioniert.Freut mich. Ich habe die "SimpleCircuit"-Variante mittlerweile in zwei VDRs verbaut. Funktioniert in beiden einwandfrei. Mindestens gleichwertig zum yaUsbIr wobei die Reaktionsgeschwindigkeit gefühlt etwas schneller ist. Die vom Power-Button sowieso, weil der Umweg über ACPI jetzt entfällt.
Manuel, funktioniert das bei dir auch mit 1 kOhm?
Wenn ja, würde ich 1 kOhm in die Make.config.template schreiben, und die Warnung etwas entschärfen.Da es sich um einen Pullup handelt und gegen GND geschaltet wird (der Button an der Front schaltet ja faktisch mit ca. 0 Ohm gegen Masse) gilt generell: Je kleiner der Widerstand desto sicherer die Funktion. Bei 220 Ohm ist man bis 5V sicher. Zumal du nicht vergessen darfst, dass die Platinen (zumindest die ST-Link) bereits Schutzwiderstände haben, die man dazuaddieren kann.
Schon möglich das 1k bei mir auch geht. Bei einem anderen Mainboard kann das aber wieder anders aussehen. Auf die Schnelle ausprobieren kann ich das nur wenn ich einen weiteren Widerstand in Serie schalte. Meine Baugruppen sind alle ordentlich eingeschrumpft und fest in VDRs verbaut.
Im git kann man jetzt am Ende der main.c debug Ausgaben aktivieren. Dadurch wird sof_timeout rausgeschickt. Ausgelesen wird das mit der config GUI im receive mode. Da wird das Maximum und wie oft es auftrat angezeigt.
Bei Testläufen von nicht mehr als 1,5 Stunden habe ich oft 3, einige Male 4 und selten 5 gesehen.
Was ganz am Anfang passiert, erfährt man so nicht, da man den verpasst. Das spielt in der Praxis aber auch keine Rolle.Ganz am Anfang läuft das Timeout hoch. Und das ist auch logisch so, denn es dauert etwas bis der Kernel mitbekommen hat, dass ein Gerät gesteckt wurde, und die Kommunikation mit diesem aufnimmt.
Zitat
Soweit sich das jetzt schon sagen lässt, funktioniert das doch sehr gut.Sehe ich auch so. Scheinbar passt das doch mit dem Timeout.
-
Zumal du nicht vergessen darfst, dass die Platinen (zumindest die ST-Link) bereits Schutzwiderstände haben, die man dazuaddieren kann.
Bei manchen Boards sind das nur Null oder 22 Ohm.
Auf die Schnelle ausprobieren kann ich das nur wenn ich einen weiteren Widerstand in Serie schalte.
Ich habe ein 10 kOhm Poti an den PowerSwitch Connector des Mainboards angeschlossen, und langsam runter gedreht, bis es angegangen ist. Dann den Wert abgelesen.
Ganz am Anfang läuft das Timeout hoch. Und das ist auch logisch so, denn es dauert etwas bis der Kernel mitbekommen hat, dass ein Gerät gesteckt wurde, und die Kommunikation mit diesem aufnimmt.
Deswegen habe ich SOF_TIMEOUT auf 500 erhöht. Damit wird das abgefangen (jedenfalls bei den Geräten, die ich zum Testen da habe).
-
-
Das ging schnell, unsere neuen IDs: VID 0x1209, PID 0x4444.
Ist in github. -
-
Und, wenn es nicht zuviel Aufwand bedeutet, bei den Binaries bitte auch mindestens eine "rote" mit "SimpleCircuit" mit ablegen.
-
Dann betrachte ich das mal als vorläufig finale Version.
Ja, das sehe ich auch so.
Jörg: Wäre es möglich mal das Binary für Nutzung mit Bootloader zu aktualisieren ? (ich würde mal ein paar blaue passend flashen und testen...)
Gerne, das kann aber noch etwas dauern.
Vermutlich ohne SimpleCircuit?Und, wenn es nicht zuviel Aufwand bedeutet, bei den Binaries bitte auch mindestens eine "rote" mit "SimpleCircuit" mit ablegen.
Ok. Ohne Bootloader?
Und wie gesagt, das kann noch etwas dauern. -
Fällt jemandem hierzu etwas ein?
Das ist das letzte unvollendete Problemchen, das ich noch lösen will, bevor ich mich neuen Projekten widme.Ist das bei euch auch so, dass ihr in der stm32IRconfig_gui unter Linux im Save Dialog keinen Dateinamen eingeben könnt? Vorhandene auswählen funktioniert.
-
Zitat
Vermutlich ohne SimpleCircuit?
Das wäre cool.
Habe vorerst mal selber den Compiler angeschmissen und möchte Feedback geben zum Ergebnis:
-supercool ist das make.config.template. Damit kann man kaum etwas falsch machen.
-Voraussetzungen zum Kompilieren sind immer nocht etwas unklar. Daher habe ich meinen alten Text herausgesucht:ZitatUnter Ubuntu wird die Toolchain wie folgt installiert:
sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded
sudo apt-get update
sudo apt-get install gcc-arm-none-eabiErgebnis nach einem "make" (blau, bootloader, kein simple):
Zitat-rwxrwxr-x 1 martin martin 16816 Jun 15 16:58 IR.bin
-rwxrwxr-x 1 martin martin 46316 Jun 15 16:58 IR.elf
-rw-rw-r-- 1 martin martin 27372 Jun 15 16:58 IR.mapgenerate-icons hat bei mir nicht funktioniert:
Zitat
martin@martin-ws:~/src/IRMP_STM32/stm32IRconfig_gui/Linux$ ./generate_icons.sh
Usage: reswrap [options] [-o[a] outfile] files...
Convert files containing images, text, or binary data into C/C++ data arrays.Options:
-o[a] outfile Output [append] to outfile instead of stdout
-h Print help
-v Print version number
-d Output as decimal
-m Read files with MS-DOS mode (default is binary)
-x Output as hex (default)
-t[a] Output as [ascii] text string
-e Generate external reference declaration
-i Build an include file
-k Keep extension, separated by underscore
-s Suppress header in output file
-p prefix Place prefix in front of names of declarations and definitions
-n namespace Place declarations and definitions inside given namespace
-c cols Change number of columns in output to cols
-u Force unsigned char even for text mode
-z Output size in declarationsEach file may be preceded by the following extra option:
-r name Override resource name of following resource filestm32IRconfig_gui kann ich trotzdem starten. Er findet nur kein Device weil ich erst mal neu flashen muss...
Auch einen Namen kann ich beim Speichern angeben (Ubuntu-Gnome 14.04)
Fortsetzung folgt.
-
generate-icons hat bei mir nicht funktioniert:
Das braucht man nur, wenn man ein schöneres Icon einbauen will.
Auch einen Namen kann ich beim Speichern angeben (Ubuntu-Gnome 14.04)
Danke für die Rückmeldung, gut zu wissen, dass das bei dir geht. Fragt sich nur, wieso bei mir nicht.
Welche Version von libfox ist bei dir installiert? 1.6.x oder 1.7.x?
Was könnte sonst noch einen Unterschied machen? -
Auf dem System sind:
ii libfox-1.6-0:amd64 1.6.49-2ubuntu1 amd64 FOX C++ GUI Toolkit - runtime library
ii libfox-1.6-dev 1.6.49-2ubuntu1 amd64 FOX C++ GUI Toolkit - development headersBewusst installiert habe ich nur das Dev-Paket anhand des ReadMe.
-
Ich bin auf openSuse 13.2 mit fox-1.6.50.
Keine Ahnung, was den Unterschied macht.Wäre für weitere Rückmeldungen dankbar .
-
Falls mir jemand mit Testen helfen will beim Save Dialog:
Im stm32IRconfig_gui Verzeichnis make ausführen und dann stm32IRconfig_gui starten. Auf den save-Button klicken und in die „File Name:“-Zeile Zeichen eingeben (siehe Bild unten in #372). Geht das oder nicht?
Dazu muss der Empfänger nicht angeschlossen sein.Ich wüßte gerne, ob das Nicht-Eingeben-Können nur bei mir auftritt oder auch auf anderen Systemen.
-
Ich kann mit Arch und fox in Version 1.6.50 Zeichen wie in #372 eingeben.
EDIT: fox wird unter Arch folgendermaßen gebaut: https://projects.archlinux.org…k/PKGBUILD?h=packages/fox
-
Danke für's Testen. Dann gehe ich erst mal davon aus, dass es mit einer Besonderheit meines Systems zu tun hat, und kümmere mich nicht mehr darum. Es sei denn, es tritt noch bei jemand anderem auf.
-
Danke für's Testen. Dann gehe ich erst mal davon aus, dass es mit einer Besonderheit meines Systems zu tun hat, und kümmere mich nicht mehr darum. Es sei denn, es tritt noch bei jemand anderem auf.
Jörg: Wollen wir mal die Binary's tauschen ? Du bekommst mein kompiliertes und ich deins ?
(Keine Ahnung ob das laufen kann, hat ja doch einige Abhängigkeiten) -
Versuch macht klug .
Hast PM.
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!