Serielles Problem mit DTR am Nano

Hallo und ein gutes neues Jahr,

ich habe ein Problem mit dem DTR am Nano. Habe natürlich schon wirklich stundenlang in allen möglichen Foren und sonstigen Quellen gestöbert. Und leider keine konkrete Lösung gefunden. Nur viele Probleme und hier nicht helfende Tipps.

Ich nutze einen Nano mit externem Temperatursensor. Die Loop liest den Sensor und sendet im Sekundentakt den Wert per Serial.println.

Das funktioniert auch super, solange ich z.B. den seriellen Monitor benutze. Schön konstant kommen die Werte im Sekundentakt.

Jetzt wollte ich das mit "Logview" am PC erweitern. Bekomme ich aber nicht zum laufen. Datenempfang findet laut Debugfenster statt. Aber keine Auswertung. Egal - Logviev ist eh alt und gestorben.

Habe es dann mit Dataexplorer versucht. Geht auch nicht. Dataexplorer empfängt gar nichts. Klar - mein Nano sendet auch nichts :frowning: laut LEDs.

Ein Test mit HTERM ergab, dass ich DTR aktivieren muss. Dann geht alles perfekt, solange DTR aktiv ist. Sobald ich es deaktiviere, hört der Nano auf zu senden.

Laut diversen Quellen soll der DTR zum Resetten benötigt werden. Das wäre mir egal, wenn der nach dem DTR einen Reset macht und dann aber auch anfängt zu senden.

Aber Dataexplorer macht nun mal das DTR nie aktiv. Also sendet der Nano auch nie.

Mit einem selbst geschrieben VBA-Terminal unter Excel klappt es auch nur, wenn ich beim Open der COM das DTR aktiviere.

Wie kann man das Problem lösen? Also, dass der Nano auch ohne DTR über USB(!) sendet.

DTR geht über einen Kondensator auf RESET, damit wird der Bootloader gestartet. Wenn du jedes man die Serielle neu aufmachst, den Wert liest, wieder schließt, dann kommt wahrscheinlich nichts raus.

Der Nano sendet auch ohne DTR.

Isi "der Nano" das, was man üblicherweise darunter versteht? (Ein atmega328p mit einem weiteren Controller für die USB Schnittstelle?)

mache bitte mal eine schematische Darstellung was du da zusammengestellt hast sowie aussagekräftige Bilder aus denen man jede einzelne Verbindung sehen kann.

Ich kann dir soweit nur sagen, dass ich einen Nano Classic problemlos über die Serielle Auslesen kann, egal ob ich in meiner Testsoftware (SSCOM32, Coolterm, ) das Häkchen bei DTR gesetzt habe oder nicht.

Also hats bei dir was - zeige Bilder.

Nee...
Der Nano braucht kein DTR!

Es ist die Serielle Schnittstelle am PC, die das braucht,

Das kannst du per Mode am PC konfigurieren!
(Wenn nicht die Anwendung das wieder überschreibt)

[to=on|off] [xon=on|off] [odsr=on|off]
[octs=on|off] [dtr=on|off|hs]
[rts=on|off|hs|tg] [idsr=on|off]

Aus: Classic Batch Commands: MODE

Wenn du über USB an den PC gehst ist evtl.in der seriellen Schnittstellenkonfiguration im Gerätemanager der Handshake eingeschaltet, da wird DTR abgefragt. Nutze am besten Xon/Xoff Protokoll. Falls dein Rechner Eine RS232 Verbindung hat mach dir ein Kabel und benutze nur den TX-PIN vom Arduino, das reicht zum Senden. Mit dem alten Terminalprogramm müßte das ohne Probleme einzulesen sein.

[quote="thmoe, post:6, topic:1338920, full:true"]
Wenn du über USB an den PC gehst ist evtl.in der seriellen Schnittstellenkonfiguration im Gerätemanager der Handshake eingeschaltet, da wird DTR abgefragt. [/quote]

Nein! Der PC fragt DTR nicht ab, sondern steuert es! Es ist ein Ausgangssignal vom PC zum externen Gerät und signalisiert diesem, dass das Terminal (hier der PC) "ready" (bereit) ist.

Wozu? Hier gibt es nichts im Dialog zu steuern. Der Arduino ist Dauersender und soll nach dem Start in Endlosschleife seine Daten senden. Egal, was an der anderen Seite passiert. Dazu braucht man kein Protokoll, sondern schlicht nur das "Hardware-Ready" oder gar keine Bereitschaftsabfrage. Nur Senden "ins Blaue".

Ja - ok - ich arbeite nicht mit einem alten Terminalprogramm. Und ich arbeite nicht per irgendwelchen Einzelpin-Lösungen und extra Steckverbindern. Hier wird ausschließlich der reguläre USB-Anschluss.

Danke trotzdem.

Nein - siehe meine Antwort davor

LOL - ich arbeite nicht mit DOS oder Uralt-Windows.

Genau das tun die meisten Programme unter Windows

Du sagt es - "Batch" - Commands - was du mit Mode oder dem Gerätemanager einstellst, wird von jedem besseren Windowsprogramm ignoriert oder überschrieben.

Brandneu-Windows hat kein Mode mehr?
Das ist aber komisch....

Naja..
Wenn dein Programm das tut, und keine eigene Einstellung erlaubt, dann ist es eben Mist/Unbrauchbar.

Lösung des Problems. Der vermeintliche Nano ist ein Micro.

Sorry - da hat mir der Eigentümer des Dinges die falsche Info gegeben. Und das Gerät habe ich nicht extra kontrolliert, was da drin ist.

Und ein Micro oder Leonardo brauchen das DTR definitiv! Steht auch hier in einigen Beiträgen.

In diesem Fall kann ich das mit meinem Auswerteprogramm abfangen, weil ich DTR setzen kann. Mit anderen Programmen, die kein DTR setzen (können), geht es halt dann nicht.

Meine Frage ist damit erledigt und ich sage danke für die Hilfsversuche.

Wenn Du mit RS232 Verbindung eine RS232 Schnittstelle meinst dann kann ich Dir sagen, daß dieser Ratschlag den Arduino kaputtmacht. Die Spannungspegel der RS232 Schnittstelle (-5V/ +5V oder -12V/+12V) sind Inkompatibel mit dem Arduino. (+5V(+3,3V) / 0V)

Sollte man schon erkennen. Der MICRO hat nur 1 IC während der NANO V3.0 zwei hat (Controller und USB Adapter).

Grüße Uwe

Danke - mir ist dss bekannt. Ich arbeite seit ca. 45 Jahren mit den "Seriellen". Schon vor dem IBM-PC zu CP/M-Zeiten und VAX.

Sollte man schon erkennen. Der MICRO hat nur 1 IC während der NANO V3.0 zwei hat (Controller und USB Adapter).

Grüße Uwe
[/quote]

Wie ich bereits schrieb, habe ich nicht in das Gerät geschaut und dem Besitzer bezüglich dessen, was da drin ist bzw. sein soll vertraut. Nach meiner ersten Frage habe ich dann nach einigen weiteren Versuchen nachgeschaut. Und damit hat sich das das Problem erledigt.

Danke für deine Hilfe.

combieDokuVorLeseVerweigerer

13 hpost #9

Du schreibst reichlich Unsinn! Ich habe nie behauptet, dass neuere Windows kein Mode mehr haben. Mode stammt aus der DOS-Zeit und hat unter Windows praktisch gar keinen Sinn und Zweck. Schnittstelleneinstellungen macht man notfalls im Gerätemanager und normalerweise im Anwendungsprogramm! Wie z.B. einem Terminalprogramm. Hör also bitte auf mit so alten Modegeschichten hier zu langweilen!

Nochmal Unsinn! Es ist keinesfalls Mist, wenn z.B. ein Terminalprogramm die eventuellen Mode- oder Gerätemanagereinstellungen überschreibt! Es ist ein Muss!

Damit beende ich das Thema. Alles Relevante wurde gesagt. Und Unsinn zu Mode etc. tue ich mir nicht weiter an.

Schönen Tag allerseits.

Das ist das Dilemma. Wieviel trauen und wieviel Mißtrauen man in die andere bringen soll / darf.

Hatte das Problem als Wartungstechniker: Kann man der Klienten 100% trauen und was soll man dann dennoch selbst vom Gesagten verifizieren ohne dem danebenstehenden Klienten als nicht vertrauenswürdig zu halten.

Grüße Uwe

Dem Ausspruch: "Ich habe nichts getan" habe ich nie getraut und bin gut damit gefahren. :wink:

Gruß Tommy

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.