Forum: Mikrocontroller und Digitale Elektronik Fastboot Rs485?


von Werner (Gast)


Lesenswert?

Hallo
Ich verwende den Avr Bootloder Von P. Da. Jetzt benötige ich für einige 
Experimente eine Rs485 Version welche die Datenrichtung umschalten kann.
Irgendwie konnte ich dazu nix fertiges Finden. Hat den mal jemand 
umgeschrieben und würde die Arbeit mit mir teilen?
Alternativ kennt jemand einen anderen Bootloader welcher das kann und 
ein Linux Commandline tool mitbringt?

Liebe grüße

von Stefan F. (Gast)


Lesenswert?

Was soll das werden? Firmware Upgrade über eine Lange Leitung ist sicher 
keine gute Idee. Nicht wegen der Signal-Qualität, sondern wegen der 
technischen Sicherheit (Datenschutz, Hacker und so).

Ich bin schon unruhig, dass meine Playstation alle paar Wochen ein 
Upgrade übers Internet erhält und ich nichts dagegen machen kann, ausser 
sie nicht zu benutzen.

von Werner (Gast)


Lesenswert?

;) Keine sorge Alles offline Nicht mit dem Internet verbunden und nur in 
meinem Haus.
Und wenn ein Hacker mitspielen will, meine Tür steht offen Bier ist im 
Kühlschrank ich freue mich immer über nette Gespräche.

von A. S. (Gast)


Lesenswert?

Ja trotzdem? Nur Leitungen oder Elektronik sparen?  Ein umschalten macht 
es deutlich komplexer.

Lange Strecken gehen auch 2 Draht Vollduplex.

Ansonsten, wenn die SW Halbduplex arbeitet ggf. Schaltung einbauen, die 
den Empfänger beim Senden (aktives Signal liegt an) für 10 bittakte 
abschaltet.

von Stefan F. (Gast)


Lesenswert?

Wenn du den Bootloader auf Half-Duplex umschreibst, musst du das auch 
mit der Software am anderen Ende der Leitung tun. Die schreibt sich 
ebenfalls nicht von selbst um.

von Werner (Gast)


Lesenswert?

Also Erklärung dazu Ich habe mir ein Bussystem gebastelt. Daran im Haus 
verteilt viele Sensoren und diverse Aktoren. Platinen und Hardware sind 
Fertig. Rs485 mit Tx Rx Umschaltung. Bislang habe ich das alles mit 
Bascom gemacht. Als Bootloader verwende ich den mcs Bootloader. Diesen 
habe ich dank Basic Quelltext verstanden und konnte den auch gut auf 485 
modifizieren.
Als Software dient ein Visual Basic Programm welches den nötigen avr per 
Kommando resetet und allen anderen ruhe Verordnet.
Funktioniert so seit Jahren Nahezu Perfekt. Aber die zeit dreht sich 
weiter Windows verwende ich nicht mehr und Visual Basic6 in einer vm auf 
xp darf auch langsam in den Ruhestand. Bascom habe ich durch Arduino 
oder gcc ersetzt.
Also wird es eigentlich zeit für neue Interpretationen. Das einzige was 
mich daran grade noch stört. Es fehlt ein Linux tauglicher rs485 
Bootloader.

von Bernd K. (prof7bit)


Lesenswert?

Werner schrieb:
> Es fehlt ein Linux tauglicher rs485
> Bootloader.

Du meinst ein Bootloader-Client? Denn auf dem AVR wo der Bootloader 
läuft ist sicherlich kein Linux.

von Florian (Gast)


Lesenswert?

Werner schrieb:
> Das einzige was mich daran grade noch stört. Es fehlt ein Linux
> tauglicher rs485 Bootloader.

Nicht nötig! Linux ist sooo toll, das Problem lost sich von selbst!

von Werner (Gast)


Lesenswert?

ich benötige schon beide Seiten aber für den Fastboot gibt es ein Linux 
Programm und das verwende ich für rs232 jetzt auch schon. Die Verbindung 
pc Rs485 passiert über diese Usbsticks mit automatischer Rx Tx 
Umschaltung. So das an der Pc Software eigentlich nix verändert werden 
müsste.

von Stefan F. (Gast)


Lesenswert?

Werner schrieb:
> Die Verbindung pc Rs485 passiert über diese Usbsticks mit
> automatischer Rx Tx Umschaltung. So das an der Pc Software
> eigentlich nix verändert werden müsste.

Wie soll das praktisch gehen? USB-UART Schnittstellen können 
gleichzeitig senden und empfangen. Woher soll der Umschalter wissen, in 
welche Richtung er schalten soll, wenn er nicht speziell von der 
Software angesteuert wird?

Ich denke, da bist du auf einem Holzweg. Magie gibt es auf Computern 
nicht.

von Werner (Gast)


Lesenswert?

Stefanus F. schrieb:
> Magie gibt es auf Computern
> nicht

Aber ggf gute Treiber ;) Also wie die das Problem gelöst haben habe ich 
ehrlich gesagt noch nie begutachtet. Aber ich habe diese Usb Dinger 
liegen und am PC melden die sich als normaler com Port und ich kann die 
ohne umschalten ganz normal mit jedem Programm wie einen com Port 
verwenden.
Ich denke die haben das direkt im Treiber oder in der Hardware verbaut.

von Stefan F. (Gast)


Lesenswert?

Werner schrieb:
> ich kann die ohne umschalten ganz normal mit jedem Programm
> wie einen com Port verwenden.

Vermutlich schalten sie auf "senden", wenn du etwas sendest. Empfangen 
kannst du dann nur in den Zeiten, wo du nicht sendest. Also Half-Duplex.

Da das Senden durch einen Treiber läuft, kann dieser auch für das 
korrekte Timing sorgen. Eine Hardware-Only Lösung stelle ich mir jedoch 
problematisch vor, denn diese müsste schon vor dem Senden wissen, das 
gleich etwas gesendet wird.

Das Vorhaben des TO ist schon sehr speziell, ich würde nicht darauf 
hoffen, dass jemand anderes den Bootloader schon dazu passend 
umgeschrieben hat und dann auch noch hier mit liest. Die 
Wahrscheinlichkeit dürfte sehr gering sein.

von Werner (Gast)


Lesenswert?

Außerordentlich schade. Mal gut das grade Weihnachten ist so habe ich 
massig zeit den original code zu misshandeln. Irgendwie werde ich den 
zusätzlichen Ausgang da schon rein bekommen.

von Bernd K. (prof7bit)


Lesenswert?

Stefanus F. schrieb:
> dass jemand anderes den Bootloader schon dazu passend
> umgeschrieben hat

Den Bootloader hat er doch schon hat er oben geschrieben. Er braucht nur 
noch den Client für den PC.

von Stefan F. (Gast)


Lesenswert?

Bernd K. schrieb:
> Den Bootloader hat er doch schon hat er oben geschrieben. Er braucht nur
> noch den Client für den PC.

Da habe ich ihn aber genau umgekehrt verstanden. Er sucht einen 
modifizierten Bootloader sowie ein dazu passendes Linux Programm, 
welches mit seinem USB-RS485 Adapter klar kommt. Und er geht davon aus, 
dass das Linux Programm keine Modifikation benötigt.

von Np R. (samweis)


Lesenswert?

Schau doch mal hier:
http://jtxp.org/tech/onewayloader.htm

Dieser Bootloader umgeht das Problem mit der Umschaltung einfach.
Der TinySafeBoot vom selben Autor funktioniert gut. Den OWL habe ich 
noch nicht getestet.

Oder hier eine Lösung, die die Umschaltung in Hardware macht:
http://www.ti.com/lit/ug/tidubw6/tidubw6.pdf

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Stefanus F. schrieb:
> Wie soll das praktisch gehen? USB-UART Schnittstellen können
> gleichzeitig senden und empfangen. Woher soll der Umschalter wissen, in
> welche Richtung er schalten soll, wenn er nicht speziell von der
> Software angesteuert wird?

Auf Senden wird umgeschaltet, wenn gesendet wird, sonst nicht.

Macht so z.B. der FT232. Funktioniert zuverlässig.

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.