Forum: Mikrocontroller und Digitale Elektronik Atmega8 USB Relais Startzustand


von Paul G. (paul_g210) Benutzerseite


Angehängte Dateien:

Lesenswert?

Hi

ich habe mir so ein billig Aliexpress 4-fach USB Relais Modul gekauft.
Funktioniert alles bestens soweit und ich kann es unter Linux mit 
"usbrelay" ansteuern.

Meine Frage ist, kann man das Modul evtl. so umprogrammieren dass der 
Startzustand geändert wird, das einzelne oder alle Relais einschaltet 
werden sobald das Modul unter Spannung gesetzt wird, also unabhängig vom 
USB?

Auf dem Board ist ein Atmega8 und ein ULN 2803.
Auf dem Atmega scheint etwas drauf zu sein dass das Modul sich als HID 
Device zu erkennen gibt. Testpunkte zu MISO/MOSI sind glaube ich auch 
vorhanden sofern ich das richtig sehe.

Denkt ihr das wäre machbar?

von Thomas F. (igel)


Lesenswert?

Paul G. schrieb:
> Meine Frage ist, kann man das Modul evtl. so umprogrammieren dass der
> Startzustand geändert wird

Kann man sicher machen.
Da du aber wohl den Quellcode nicht hast muss die Software komplett neu 
erstellt werden. Dazu muss das Kommunikatiosprotokoll über den USB 
bekannt sein.

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Paul G. schrieb:
> Auf dem Board ist ein Atmega8 und ein ULN 2803.
> Auf dem Atmega scheint etwas drauf zu sein dass das Modul sich als HID
> Device zu erkennen gibt. Testpunkte zu MISO/MOSI sind glaube ich auch
> vorhanden sofern ich das richtig sehe.
>
> Denkt ihr das wäre machbar?

 Sicher, aber nur wenn das Lockbit beim ATMEGA nicht gesetzt ist, was
 sehr sehr unwahrscheinlich ist :-/

von Thomas R. (r3tr0)


Lesenswert?

Wird doch sicher über UART angesteuert, der AVR, oder?
Kann man da nicht per HTerm, o.Ä. mitlesen, was dort übertragen wird?

von Andreas B. (bitverdreher)


Lesenswert?

Das einfachste für Dich dürfte sein, die Ausgänge des ATmega zum 2803 
mittels 7404 zu invertieren.
Alternativ natürlich NO statt NC des Relais verwenden.

: Bearbeitet durch User
von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Paul G. schrieb:
> Auf dem Atmega scheint etwas drauf zu sein dass das Modul sich als HID
> Device zu erkennen gibt.

Das dürfte V-USB bzw. eine Variante davon sein. Das ist eine 
USB-Emulation, die per Bitbanging (Pingewackle) das 
Low-Speed-USB-Protokoll nachbildet. HID ist damit "legal" umsetzbar.

Thomas R. schrieb:
> Wird doch sicher über UART angesteuert, der AVR, oder?

Nein. HID ist nicht UART, und aus Kostengründen ist auf der Platine 
nicht eine der üblichen USB-UART-Bridges à la FT232, CP2101 etc. 
drauf.

von Anderer Frank (Gast)


Lesenswert?

Haben sie Relais nicht sowieso schon einen Wechsel Kontakt? Oder warum 
sind das 3 Klemmen pro Relais?

von spess53 (Gast)


Lesenswert?

Hi

>Das einfachste für Dich dürfte sein, die Ausgänge des ATmega zum 2803
>mittels 7404 zu invertieren.

Oder die vier überzähligen Treiber des ULN2803 als Inverter benutzen.

MfG Spess

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Anderer Frank schrieb:
> Haben sie Relais nicht sowieso schon einen Wechsel Kontakt?

Das ... wäre ja vieeeel zu einfach. Treffer!

von Paul G. (paul_g210) Benutzerseite


Lesenswert?

Anderer Frank schrieb:
> Haben sie Relais nicht sowieso schon einen Wechsel Kontakt? Oder warum
> sind das 3 Klemmen pro Relais?

Ich hatte das Problem schon mal hier beschrieben:
https://github.com/darrylb123/usbrelay/issues/23#issuecomment-407007244

Es ging grob gesagt darum das Relais per Taster unter Spannung zu 
setzten, es schaltet dann den Stromkreis und mein Raspberry Pi booted, 
nur soll aber das relais unter Strom bleiben wenn ich den Taster 
loslasse. Ich möchte dann später in der Lage sein den Raspi und das 
ganze Relais-Modul per USB Befehl wieder vom Strom zu nehmen...

Ich hatte das ganze auch schon mal umgesetzt:
Beitrag "Raspberry Pi 2 Batteriewächter MCP3002"

Nur hatte ich da ein normales Relais-Modul mit low-active...

Im Moment halte ich den Taster so lange bis der Raspi mein Startscript 
erreicht hat das per "usbrelay" das Relais auf geschlossen schaltet... 
geht zur Not auch, muss halt nur 20-30 sekunden warten bis er gebootet 
hat...

von Sven K. (quotschmacher)


Lesenswert?

Andreas B. schrieb:
> Alternativ natürlich NO statt NC des Relais verwenden.

Anderer Frank schrieb:
> Haben sie Relais nicht sowieso schon einen Wechsel Kontakt? Oder warum
> sind das 3 Klemmen pro Relais?

stand doch schon da....

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.