Ich finde das Konzept sehr schön, ein winziger IR Empfänger auf USB Basis, der sich perfekt in eine Distribution integrieren lässt. Wollen wir auf easyVdr Seite auch mal sowas angehen (nicht vor Ende Januar)? Ich denke, dass sich so etwas noch vereinfachen ließe.
a) Integration ohne LIRC und ohne daemon, eher via Plugin
b) anstelle von MCU mit integriertem USB: Soft-USB ( mit atmega8 oder atmega168? )
c) als HID device aufbauen oder via libusb -> keine extra Treiber.
d) Verzicht auf extra Inputs
e) Preis um zwei-drei Euro drücken..
f) Programmieren mit Arduino GUI
Macht so ein Projekt Sinn, falls ja: wer würde mitmachen wollen?
also ich finde das Teil auch schon recht interessant und wollte mir auch schon mal so ein Teil holen. Der Funktionsumfang ist ja schon recht mächtig. Um 2-3 Euro zu sparen, würde ich aber nicht am Funktionsumfang sparen. Das bringts nicht.
Meinst du, du könntest so ein Teil in "besser" entwickeln? Hört sich ziemlich schwierig an und ist doch ziemlich umfangreich.
11.12.2012, 23:05 (Dieser Beitrag wurde zuletzt bearbeitet: 12.12.2012, 19:03 von Wirbel.)
Zitat:Hi Wirbel!
Sinn macht sowas auf jeden Fall! Ich frag mich ja bis heute, warum es nicht den "ultimativen Empfänger für jedermann" gibt. Entwicklungskosten sind nach meiner Einschätzung eher gering, man muss nichts neu erfinden, ... Ok, es gibt zu viele Standards
Ich würde gerne erst einmal erarbeiten, was ultimativ wäre.
Zitat:Was für mich persönlich wichtig wäre, dass die Diode kabelgebunden ist.
Du meinst damit Trennung Elektronik <-> Empfänger Chip?
Zitat:Nachteil wäre vermutlich, dass "Wake-on-USB" laufen muss, ansonsten hat gibts wieder "Sonderformen".
Das spricht gegen einen externen Empfänger und für eine interne (Einbau-)Lösung.
Zitat:Mich würd einmal das "grobe" Layout interessieren, was vermutlich in deinem Kopf schon auskonstruiert ist
Das hängt ja schon allein davon ab, ob intern oder extern und ob SMD oder bedrahtet. Schon allein das ergibt vier grundsätzliche Lösungsansätze.
MIST - ich habe versehentlich deinen Beitrag editiert anstelle darauf zu antworten. @other Mods: Gibt es eig. eine Möglichkeit den Originaltext zurückzuholen?
12.12.2012, 17:45 (Dieser Beitrag wurde zuletzt bearbeitet: 12.12.2012, 20:58 von Martin.)
Hi,
ich finde die Idee (wie zu erwarten) super. Was ich dazu beitragen kann wäre etwas Werbung dafür zu machen. (Links auf Startseite wenn der passende Zeitpunkt gekommen ist)
Entscheidend finde ich dass jemand zentral Platinen fertigen lässt. Bei Erfahrung und mit Stückzahl so ~5€ pro Platinchen. (?)
SMD: Warum nicht, aber nicht zu klein wenn es mit Hobbymitteln nachgebaut werden soll.
Das spannende find ich die Übergabe an den PC.
Wenns (zumindest notfalls) auch als Tastaturemulation laufen würde wäre der Hammer.
Wenns mit nem AVR gemacht würde, würde ich mich bei Bedarf beteiligen und Controller flashen...
Auch Cool wär eine Mapping-Tabelle im EEPROM. (Wäre nur die Frage wie Programmieren wenn der Controller nur am USB hängt)
Beispiel: Jemand drückt die M-Taste und das Mapping bestimmt was zum PC geht: "M" oder "Mute"
PS: HW-Basteln schweisst zusammen und ist was anderes als ISOs von 2-3 VDR Distries zu saugen. Deshalb absolut unterstützenswert.
Was ich auch genial an dem jausbir finde ist der IR-Sender, dass man einfach den TV und Anlage mit ein und ausschalten kann und Lautstärke weiterreichen kann.
Was ich ja auch an dem jausbir gut finde, sind die Ein und Ausgänge. Könnte auch komplett das serial-Plugin ersetzen, wenn man da auch noch ne Record-LED anschließen könnte. Da fehlt mir ja auch noch ne gescheite Lösung. Die Seriellen sind ja mittlerweile fast ausgestorben.
... und zur Konfiguration ein VDR-Plugin ...
Ich würde die Teile aber auch fertig aufgebaut anbieten, weil solche Lötprojekte (gerade mit SMD) ist ja nichts für die breite Masse.
12.12.2012, 19:25 (Dieser Beitrag wurde zuletzt bearbeitet: 12.12.2012, 19:27 von Wirbel.)
(12.12.2012, 17:45)Martin link schrieb: Entscheidend finde ich dass jemand zentral Platinen fertigen lässt. Bei Erfahrung und mit Stückzahl so 2-3€ pro Platinchen. (?)
SMD: Warum nicht, aber nicht zu klein wenn es mit Hobbymitteln nachgebaut werden soll.
extrem Stückzahl und Größe abhängig. Nur die Leiterplatte selbst (!) Bei angenommenen (30x40)mm für eine SMD Variante und 2Layern und Lötstop, aber ohne Bestückungsdruck:
8 Platinen : 52,- (~6,50/Stk)
18 Platinen : 63,- (~3,50/Stk)
36 Platinen : 107,-(~2,97/Stk)
Falls die Platine größer ist, deutlich teurer:
hier 30x70 (also geschätzte Platinengröße bedrahtet)
6 Platinen : 52,- (~8,66/Stk)
12 Platinen : 63,- (~5,25/Stk)
24 Platinen : 107,-(~4,45/Stk)
Unter 3Eur für eine Platine selbst wird also kaum machbar.
Und ein Prototyp müsste gemacht werden, der kostet wenigstens ~50,-
Zitat:Das spannende find ich die Übergabe an den PC.
Wenns (zumindest notfalls) auch als Tastaturemulation laufen würde wäre der Hammer.
Wenns mit nem AVR gemacht würde, würde ich mich bei Bedarf beteiligen und Controller flashen...
Auch Cool wär eine Mapping-Tabelle im EEPROM. (Wäre nur die Frage wie Programmieren wenn der Controller nur am USB hängt)
Beispiel: Jemand drückt die M-Taste und das Mapping bestimmt was zum PC geht: "M" oder "Mute"
EEPROM macht Sinn, aber nur für den IR-Code zum Einschalten. Den Rest lieber auf PC Seite, das ist einfacher.
AVR wäre das einzige, was ich selbst zusammen bekommen würde..
(12.12.2012, 18:41)Steevee link schrieb: Ich würde die Teile aber auch fertig aufgebaut anbieten, weil solche Lötprojekte (gerade mit SMD) ist ja nichts für die breite Masse.
Genau hier wirds ne Philosphie- und Grundsatzfrage was genau Sinn macht.
a) FW + Platine für SMD anbieten für Selbstbastler
b) komplett anbieten, dann braucht das jemanden, der mal eben ein paar Dutzend baut (Zeit!) und Geld das für die Platinen vorgeschossen werden muss.
c) FW + Platine für Bauteile in Durchstecktechnik anbieten für Selbstbastler, hier wird die Platine dann etwa doppelt so teuer (Platinenfläche!)
d) FW + Platine für SMD anbieten für Selbstbastler, aber MCU + Quarz drauf sowie Firmware in MCU, Rest muss jeder selbst bauen
e) ...?
da meine bessere Hälfte früher beruflich auch für SMD die Lizenz zum Löten hatte, hab ich mal gefragt, ob Sie bei einer so überschaubaren Leiterplatte mal wieder zum Lötkolben greifen möchte...
Wenn es nicht auf einen bestimmten Tag ankommt würde sie gerne für uns die ersten 5-8 Testmuster zusammenbrutzeln.
Gruß
Michel
Produktiv-VDR:
msi K9N2G-Neo (nvidia 8200 onBoard) mit Athlon X2 4850e mit SamuraiZZ
2xNova-HDS2, DH102
Ein Vergleich der kleinen atmega bis maximal 3..4 Euro.
Der atmega8, den ich zuerst angedacht habe, kostet kaum weniger als ein 328. Der 328 aber hat 32kByte Flash anstelle von 8kByte. Der USB-Port in Software werden etwa 2kByte, dazu etwa 6K IR. So bleibt noch etwas Programmspeicher übrig für den Spieltrieb.
(15.12.2012, 10:49)Wirbel link schrieb: a) ohne Mitstreiter die wirklich mitmachen (und das ist bis jetzt so)
Ich weiß, ich kann nicht viel anbieten, aber es soll den Schrecken des SMD-Lötens nehmen und User mit 2 linken Händen (was HW-Baseln angeht) beruhigen...
(13.12.2012, 22:03)michel8 link schrieb: Hallo Zusammen,
da meine bessere Hälfte früher beruflich auch für SMD die Lizenz zum Löten hatte, hab ich mal gefragt, ob Sie bei einer so überschaubaren Leiterplatte mal wieder zum Lötkolben greifen möchte...
Wenn es nicht auf einen bestimmten Tag ankommt würde sie gerne für uns die ersten 5-8 Testmuster zusammenbrutzeln.
Gruß
Michel
Gruß
Michel
Produktiv-VDR:
msi K9N2G-Neo (nvidia 8200 onBoard) mit Athlon X2 4850e mit SamuraiZZ
2xNova-HDS2, DH102
15.12.2012, 21:09 (Dieser Beitrag wurde zuletzt bearbeitet: 17.12.2012, 19:24 von Wirbel.)
Klingt gut @ martin&michel8
Aber vorher muss erst einmal das Konzept fertig gemacht werden.
Je mehr ich drüber nachdenke, desto mehr entfernt sich das vom ursprünglich angedachten USBasp Nachnutzung.
Geändert sind:
1) USB D- : PB0 -> PD4 = clock input timer0
2) USB D+ : PB1 -> PD2 = INT0
3) Quarz : 12MHz -> 16MHz
4) µC : atmega8 -> atmega328p
5) JP2 : entfällt
6) ICSP : 10pol pinheader -> 6pol pinheader
7) D3 : entfällt
8) neu : optokoppler für PC power on
9) RC in : PD0 -> PD3 = INT1
10) belegung des Steckers zu IR IN und IR out
Die Belegung des Stecker zu IR Empfänger und Sendediode habe ich so angepasst, dass anstelle des Steckers beide Bauteile direkt an die Platine gelötet werden können. Außerdem sind nun 5 Ports des µC auf dem Stecker, die wahlweise 0..5Volt mit 10bit Auflösung, digital in oder digiatl out sein können, je nach Firmware. Vielleicht macht man das auch zur Laufzeit konfigurierbar, was diese Pins tun.
Die USB Belegung habe ich heute mal angetestet, ich kann mit einem [email protected] per libusb kommunizieren, zumindest lässt sich per bash ein LEDchen an- und ausschalten.
a) Festlegung auf einen atmega <atmega8,atmega168/328,atmega32u2,atmega16U4/32u4> :
erledigt. -> atmega328p @ 16MHz; damit auch Festlegung auf VUSB.
b) Festlegung auf einen IR decoder <eigene lib, [email protected], IRMP, ..?>
erledigt. -> IRMP,
siehe auch http://www.mikrocontroller.net/articles/IRMP, ist gut dokumentiert, konfigurierbar sowie erweiterbar.
Möglicherweise später etwas fine tuning, da auch irmp nicht 100% korrekt ist bei einigen Protokollen.
c) Festlegung build system <AVRStudio,avr-gcc + make,arduino-1.x>
erledigt. -> avr-gcc + make, gibt die meisten Freiheiten. Zur Zeit ein
make hex
make fuse
make flash
d) Festlegung bootloader <ja, nein>
erledigt. Ja. bootloader + update per linux command line tool,
So kann auch jemand nachträglich ohne Programmer die FW anpassen + uploaden.
e) bootloader bauen + command line update tool
work in progress: vusb bootloader auf at328p anpassen + update prozess coden.
Der bootloader wird ~2k groß, gut wäre wenn er kleiner als 2048byte (wird knapp) bliebe, so bleiben 30k für alles andere, sonst 28k (immer noch sehr reichlich).
f) Anpassung Feinheiten Schaltplan an e) sowie Festlegung Timer0, Timer1, Timer2 <-> ISRs <-> USB + IR
t.b.d., könnte ein echter Stolperstein werden, falls IR und USB sich mit den ISR in die Quere kommen.
h) Kommunkation Host(PC) <-> IR
noch unklar && abhängig von e) und f) . Auf jeden Fall werden von IRMP
- protocol
- address
- command
- repeat flag
an den host übermittelt werden.
g) proof of concept, Prototyp = <Ok, nOk>
t.b.d. falls Ok weiter, sonst zurück auf a) ;-)