Forum: PC Hard- und Software USB Drucker Status


von Josef R. (joschko)


Lesenswert?

Ich würde gerne mit einer LED anzeigen wenn ein Druckjob am USB 2.0 
Drucker gesendet wird. Diesen Status würde ich mit einem Arduino 
abfragen und dann einen LED-Stripe für eine definierte Zeit Blinken 
lassen.

Die Arduino Geschichte ist kein Problem, aber wie komme ich zur 
Information dass ein Druckjob gesendet würde.

Wäre für jede Hilfe dankbar.

PS: Möchte das Ganze nicht von der PC Seite mittel Software lösen, da 
diese Schaltung direkt ins Kabel vom PC-Drucker integriert werden soll.

von Rainer S. (enevile) Benutzerseite


Lesenswert?

Josef R. schrieb:
> da diese Schaltung direkt ins Kabel vom PC-Drucker integriert werden soll

Der Arduino hört sich die Serielle Schnittstelle an und entsprechend 
auswerten. Was gehört wird weiß ich nicht. Man könnte einfach den Druck 
starten und dann gucken was der Arduino Seriel "hört". Man beachte das 
die Baud Rate überein stimmen sollte.

Weiß gar nicht ob man einfach einen Zuhörer in die USB-Leitung hängen 
kann.

: Bearbeitet durch User
von Christian R. (supachris)


Lesenswert?

Bei USB wird das so auf Hardware Ebene nicht klappen, USB kann man nicht 
einfach anzapfen. Ich würde den DruckSpooler unter dem OS überwachen und 
dann an einer anderen Schnittstelle was ausgeben. Das hatten wir in der 
Studenten WG, da war ein Linux Server, auf dem auch CUPS lief und immer 
wenn was zu drucken war, wurde der Laserdrucker bestromt. Der hätte 
sonst zu viel Strom gefressen.

von Tim S. (Firma: tsx89) (freak_ts) Benutzerseite


Lesenswert?


von Georg (Gast)


Lesenswert?

Josef R. schrieb:
> da
> diese Schaltung direkt ins Kabel vom PC-Drucker integriert werden soll

Da solltest du als erstes mit einem Oszilloskop die USB-Datenleitungen 
überprüfen, ob du einen klaren Unterschied in der Aktivität feststellen 
kannst im Ruhezustand und beim Drucken. Ist das der Fall sieht man 
weiter.

Georg

von Schlaumaier (Gast)


Lesenswert?

Christian R. schrieb:
> Ich würde den DruckSpooler unter dem OS überwachen und
> dann an einer anderen Schnittstelle was ausgeben.

Das ist unter Windows kinderleicht. Einfach via Software den Ordner 
"Windows\System32\spool\PRINTERS" überwachen.

Ist da was drin, dann soll der Drucker drucken. Ist da nix drin dann 
nicht.

Ist da was falsches drin. z.b. eine Exe-Datei dann Druckt der Drucker 
gar nicht. Und meldet Fehler ohne Ende. (2 x gehabt bei Kunden).

Nun muss die Software nur noch den Druckerstatus abfragen 
(Online/Offline etc) und das war's.

Kommunikation mit den Arduino nach belieben.

von Jim M. (turboj)


Lesenswert?

Georg schrieb:
> Da solltest du als erstes mit einem Oszilloskop die USB-Datenleitungen
> überprüfen, ob du einen klaren Unterschied in der Aktivität feststellen
> kannst im Ruhezustand und beim Drucken.

Lohnt nicht. USB sendet jede Millisekunde das SOF.

Schlaumaier schrieb:
> Das ist unter Windows kinderleicht. Einfach via Software den Ordner
> "Windows\System32\spool\PRINTERS" überwachen.

Das ist mal eine pfiffige Methode.

von Josef R. (joschko)


Lesenswert?

Jim M. schrieb:
> Georg schrieb:
>> Da solltest du als erstes mit einem Oszilloskop die USB-Datenleitungen
>> überprüfen, ob du einen klaren Unterschied in der Aktivität feststellen
>> kannst im Ruhezustand und beim Drucken.
>
> Lohnt nicht. USB sendet jede Millisekunde das SOF.
>
> Schlaumaier schrieb:
>> Das ist unter Windows kinderleicht. Einfach via Software den Ordner
>> "Windows\System32\spool\PRINTERS" überwachen.
>
> Das ist mal eine pfiffige Methode.

Ok der Ansatz mit der Überwachung klingt auch recht spannend, kann mir 
da jemand mit einem AHK Script weitrehelfen ?

von Schlaumaier (Gast)


Lesenswert?

Josef R. schrieb:
> Ok der Ansatz mit der Überwachung klingt auch recht spannend, kann mir
> da jemand mit einem AHK Script weitrehelfen ?

Leider nein. Aber unter VB ist das eine Kleinigkeit.

Via Timer alle X Sekunden das Verzeichnis auslesen.
Danach via API den Printer-Status abfragen.

Ich lasse so Prg. einfach MINIMIERT( Also neben der Uhr laufen). Das 
funktioniert mit meiner "Fernbedienung" für das CD-Laufwerk sehr gut.

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.