Willkommen! Anmelden Ein neues Profil erzeugen

Erweiterte Suche

Bluetooth für RAMPS 1.4

geschrieben von Cover 
Bluetooth für RAMPS 1.4
23. November 2014 12:35
Hi!

Vorgeschichte: Ich habe einen RAMPS 1.4 auf einem Arduino Mega 2560. Die Stromversorgung läuft über Netzteile. Als Software nutze ich Repetier. Vom direkten Drucken mit dem Host bin ich weggegangen (Probleme durch Störungen), drucke jetzt über SD-Karte, dazu kam auch ein 20x4-Zeichen-LCD zum direkten Bedienen.

Vor einer Weile bin ich auf dieses günstige Angebot gestoßen: [www.goodluckbuy.com]
Ein HC-06 Bluetooth-Modul, das man direkt mit 4 Leitungen an den Arduino hängen kann (GND, +5V, RX, TX). Mein Notebook hat (wie fast jedes andere auch) einen integrierten Bluetoot-Transceiver. Wie praktisch: kabellos drucken. smiling smiley
Heute kam das Teil endlich mit der Post an. Als erstes muss das Teil eingestellt werden. Viele Möglichkeiten hat man nicht: Baudrate, Bluetooth-Name und Bluetooth-Pin kann man einstellen. Ist auch nicht sonderlich kompliziert. Hier sind die Konfigurationsmöglichkeiten zusammengefasst: [www.micro4you.com]

Die Einstellungen kann man aber nur direkt über die serielle Schnittstelle vornehmen. Also habe ich das Modul an meinen USB-UART Stick (CP2102) gehängt. Mit Realterm habe ich den seriellen Port mit 9600@8N1 geöffnet. Wenn alles richtig angeschlossen ist und man "AT" sendet, kommt "ok" zurück. Mit diesen AT-Befehlen (siehe Link weiter oben) kann man den angezeigten Name einstellen, zur Sicherheit die Pin ändern und die Baudrate erhöhen. 9600 baud ist doch etwas wenig. Eingestellt habe ich das Modul auf 115200 baud (mit 230400 hatte der Repetier-Host Probleme). Die Einstellungen bleiben gespeichert, man muss es nur einmal einstellen.

Dann habe ich noch die Einstellungen für die Firmware geändert, damit der Arduino auch mit 115200 baud kommuniziert und das Bluetooth-Modul an das RAMPS gesteckt. Bei AUX1 hat man in der oberen Reihe die Pins: 5V, GND, D1, D0. D1 und D0 sind RX und TX der gleichen seriellen Schnittstelle, die über USB zum PC geht. Man ersetzt aus Sicht des Arduinos eigentlich nur die USB-Verbindung und muss nichts kompliziertes an den Einstellungen ändern. Wenn die 4 Pins angeschlossen sind, fängt die Status-LED auf dem Modul an zu blinken. Das bedeutet, dass man jetzt noch Einstellungen vornehmen kann. Wurde aber schon erledigt.

Jetzt kann man den PC mit dem Bluetooth-Modul koppeln. Je nach Treiber geht das mehr oder weniger einfach. Man gibt die vorher eingestellte Pin ein und schon erstellt der Treiber zwei neue serielle Ports. Einer nennt sich "ausgehender Port" und der andere "eingehender Port". Je nachdem, wer die Verbindung aufbaut, nutzt man einen anderen Port. Wenn man vom PC "ausgehend" die Verbindung aufbaut, muss man den "ausgehenden Port" benutzten. Die Verbindung aufbauen ist ganz einfach: Man öffnet seine Host-Software, stellt den neuen seriellen Port (der ausgehende) ein und drückt auf Verbinden. Die eingestellte Baudrate spielt hier keine Rolle, denn die Verbindung läuft sowieso virtuell über Bluetooth. Jetzt dauert es ein paar Sekunden, bis die Seriell-über-Bluetooth-Verbindung steht. In der Zeit reagiert der Host nicht, aber irgendwann leuchtet die Status-LED des Bluetooth-Moduls dauerhaft. Das heißt, die Verbindung steht.

Der Host sollte jetzt mit dem Arduino verbunden sein und man sollte die Temperaturen auslesen können, die Motoren bewegen, usw.
Funktioniert das nicht, hat man wahrscheinlich RX und TX vertauscht. Man kann das relativ leicht kontrollieren, indem man das USB-Kabel auch ansteckt und mit einem Terminal-Programm beide Ports (Bluetooth und USB ) öffnet. Nach einem Reset des Arduino sollte bei beiden regelmäßig "wait" empfangen werden, denn die Ports sind ja "parallel" am Arduino angeschlossen.

Ich hoffe, ich kann euch mit diesem kleinen Bericht den Einsteig ins kabellose Drucken etwas vereinfachen. Es ist wirklich praktisch, sollte aber immer mit SD-Karte kombiniert werden! Für die Qualität der Verbindung kann Niemand garantieren. Erst recht nicht, wenn der Nachbar sich sein Abendessen in der Mikrowelle warm macht. winking smiley
Re: Bluetooth für RAMPS 1.4
24. November 2014 06:09
Klingt nach einer coolen Idee, das selten genutzte Kabel ganz weg zu lassen. Das HC-06 findet man sogar bei unserem Ebay oder Aliexpress für um die 4 Euro, also nochmal billiger.
Danke für die Anleitung, es wird in die ToDo Liste aufgenommen.


LG

Jonas
Re: Bluetooth für RAMPS 1.4
24. November 2014 06:21
[reprap.org]


Commercium ----> Ramps, RADDS, e3d-Hotends und Filament kauft man hier.. und neu auch Schrauben,Muttern und Unterlegscheiben
Probleme mit dem e3d und bei mir gekauft? Schickt es ein, ich teste es für euch ob es wirklich defekt ist smiling smiley
Print Quality Troubleshooting Guide hier lang..
Re: Bluetooth für RAMPS 1.4
09. January 2015 01:50
Nachtrag:

Nachdem ich nun schon eine Weile mit dem Bluetooth-Modul gearbeitet habe, habe ich ein Problemchen festgestellt:
Wenn das Bluetooth-Modul angeschlossen ist (muss nicht verbunden sein), funktioniert die USB-Verbindung nicht mehr. Das ist nervig beim Firmware-flashen. Aber: Das Bluetooth-Modul hat einen "Enable"-Pin. Wenn man den auf GND legt, wird das Modul abgeschaltet und die USB-Verbindung kann wie gewohnt genutzt werden.

Man kann auch das ganze Modul abstecken. Intelligent wäre aber ein einfacher Schalter, der Enable mit GND verbindet, oder noch besser: Mit Bluetooth hat das RAMPS ja sowieso seine eigene Stromversorgung. Man kann jetzt ein USB-Kabel nehmen, die +5V Leitung vom Stecker zum Arduino trennen, und damit über einen NPN-Transistor Enable nach GND schalten.
Also wenn das USB-Kabel angesteckt wird, wird automatisch das Bluetooth-Modul abgeschaltet.

EDIT: scheinbar gibt es verschiedene Varianten des Moduls: Meins wird abgeschaltet, wenn man Enable auf GND legt. Es gibt aber auch welche, bei denen man Enable mit +5V verbinden muss, damit es funktioniert. Am besten vorher ausprobieren. Wenn man die zweite Variante hat, kann man sich das Invertieren mit dem Transistor natürlich sparen, und die +5V Leitung der USB-Leitung direkt mit Enable verbinden.

2-mal bearbeitet. Zuletzt am 11.01.15 17:00.
Anhänge:
Öffnen | Download - Bluetooth-Enable-NPN-activeHigh.png (14 KB)
Öffnen | Download - Bluetooth-Enable-NPN-activeLow.png (12.9 KB)
RFZ
Re: Bluetooth für RAMPS 1.4
09. January 2015 06:02
>> bei denen man GND mit +5V verbinden muss

Bitte ausbessern, ich sehe schon Leute bei denen es das Rauchen anfängt grinning smiley

Anmerkungen, falls man keinen extra RS232 Wandler hat:
Man müsste den BT Empfänger auch konfigurieren können indem du ihn mit RX-RX an das Board anschließt (TX kannst du dir sparen, das würde nicht funktionieren). Er empfängt dann parallel zum Arduino die Kommandos und sollte sie auch verarbeiten, während der Arduino damit einfach nichts anfangen kann. Da die TX Leitung nicht verbunden wird (würde sie, würde es trotzdem nicht funktionieren, weil auch der Arduino sie belegt und dadurch blockiert), bekommt man aber eben keine Rückmeldung ob die Kommandos angekommen sind, man arbeitet also blind. Allerdings muss man ja nicht sonderlich viel eintippen, das müsste schon gehn.
Danach korrekt mit RX-TX / TX-RX anschließen.

Anmerkung zum Enable-Pin:
Das Arduino-Mega Board hat eine 3,3V Leitung die aus dem FTDI Chip gespeist wird, also nur dann Spannung hat, wenn der FTDI Chip über USB versorgt wird. Die könnte man zum Schalten des Enable-Pin nutzen, dann muss man kein USB Kabel anschneiden winking smiley


Wie zufrieden bist du mit der Übertragunsstabilität? Kommt es bei BT zu keinen Störungen? Wieviele Stunden hast du schon (grob) damit gedruckt? Wie weit bist du beim Druck mit dem PC entfernt?
Re: Bluetooth für RAMPS 1.4
11. January 2015 08:37
Ich nutze für mein Gen7 Extention Board das gleiche Bluetoothmodul und druche seid über einem Jahr damit Problemlos. Keinerlei verbindungsabbrüche oder dergleichen. Läuft zuverlässig.

Gruß Sven


Mendel90 + LCD_SD_FAN Extension
Gen7 1.4.1
Repetier Firmware + Repetier Host
Heaterbarrel V2
PCB Heatbed MK2

Prusa Mendel i2 + Gen7 1.31
J Head
Re: Bluetooth für RAMPS 1.4
11. January 2015 16:48
Quote
RFZ
>> bei denen man GND mit +5V verbinden muss

Bitte ausbessern, ich sehe schon Leute bei denen es das Rauchen anfängt grinning smiley
Ja natürlich! Bei manchen muss man Enable mit +5V verbinden. Obwohl, so ist das BT-Modul sicherlich auch aus. smiling smiley

Nur ist jetzt der "Bearbeiten"-Link nicht mehr da. sad smiley
Wenn ich den Link zum Bearbeiten direkt in meinen Browser eingebe, kommt: "Du hast leider keine Berechtigung, diesen Beitrag zu bearbeiten. Vielleicht liegt dies aber auch daran, dass der Administrator ein Zeitlimit für das Bearbeiten der Beiträge gesetzt hat." Da ist wohl der Admin der Meinung, dass man Fehler nicht korrigieren darf. moody smiley EDIT: Ein Moderator hat es korrigiert, danke! smiling smiley

Quote
RFZ
Wie zufrieden bist du mit der Übertragunsstabilität? Kommt es bei BT zu keinen Störungen? Wieviele Stunden hast du schon (grob) damit gedruckt? Wie weit bist du beim Druck mit dem PC entfernt?
Ich drucke in der Regel mit SD-Karte, da steht das Notebook einige Meter daneben und lädt den G-Code hoch. Da kann nicht viel schief gehen. Nur wenn ich kleinere Tests drucke, stelle ich das Notebook daneben und drucke direkt über Bluetooth. Getestet habe ich die Verbindung auch mal auf maximale Reichweite. Durch 3 Wände lief das immernoch ohne Probleme, aber darauf verlassen würde ich micht nicht. Alles in allem bin ich damit aber mehr als zufrieden.

2-mal bearbeitet. Zuletzt am 12.01.15 04:26.
Re: Bluetooth für RAMPS 1.4
12. January 2015 04:43
Quote
RFZ
Das Arduino-Mega Board hat eine 3,3V Leitung die aus dem FTDI Chip gespeist wird, also nur dann Spannung hat, wenn der FTDI Chip über USB versorgt wird. Die könnte man zum Schalten des Enable-Pin nutzen, dann muss man kein USB Kabel anschneiden
Da kann auch Rauch aufsteigen. grinning smiley Bei den Modulen, bei denen man Enable mit +5V verbinden muss, um sie abzuschalten, könnte es Probleme geben.
Diese Module haben einen P-FET (Gate mit PullDown = Enable-Pin) vor dem Spannungsregler (5V -> 3.3V). Sie kappen also einfach nur die Stromversorgung des Moduls. Ich bin mir jetzt nicht sicher, ob die 3.3V zum sicheren Abschalten führen, oder einfach nur der Innenwiderstand steigt und das Teil seinen Rauch verliert.

Außerdem trennt der Arduino Mega die +5V von der USB-Leitung nur, wenn er über VIN versorgt wird. Ich zum Beispiel habe den RAMPS 1.4 für 24V modifiziert, unter anderem speist der jetzt nicht mehr VIN, sondern ein ATX-Netzteil versorgt die Steuerung mit 5V. Wenn ich jetzt einfach so das USB-Kabel anstecke, verbinde ich praktisch die +5V meiner Notebook-USB-Buchse mit den +5V des ATX-Netzteils. Dabei kann in ungünstigen Fällen ein heftiger Ausgleichsstrom fließen, der im schlimmsten Fall sogar das Notebook rauchen lässt.

Ergo: Obacht!
RFZ
Re: Bluetooth für RAMPS 1.4
12. January 2015 08:52
Quote
Cover
Da kann auch Rauch aufsteigen. grinning smiley Bei den Modulen, bei denen man Enable mit +5V verbinden muss, um sie abzuschalten, könnte es Probleme geben.
Diese Module haben einen P-FET (Gate mit PullDown = Enable-Pin) vor dem Spannungsregler (5V -> 3.3V). Sie kappen also einfach nur die Stromversorgung des Moduls. Ich bin mir jetzt nicht sicher, ob die 3.3V zum sicheren Abschalten führen, oder einfach nur der Innenwiderstand steigt und das Teil seinen Rauch verliert.

Hmm, wenn 3,3V den FET nicht voll schalten erhöht sich sein Widerstand, ja. Aber dabei gleich in Rauch aufgehen? Das BT Modul zieht jetzt glaube ich nicht so wahnsinnig viel Strom, erst recht nicht wenn seine Versorgungsspannung einbricht. Glaube also dass da nicht so viel passieren kann, aber ich werde es mal testen...
Allerdings ziehe ich meinen Vorschlag hiermit zurück, da ich gesehen habe dass der Arduino Mega einen eigenen 3,3V Regulator hat der immer von der 5V Schiene versorgt wird, nicht nur direkt von USB. Hatte das wohl mit dem Nano verwechselt. Es würde also eh nicht funktionieren...

Quote
Cover
Außerdem trennt der Arduino Mega die +5V von der USB-Leitung nur, wenn er über VIN versorgt wird. Ich zum Beispiel habe den RAMPS 1.4 für 24V modifiziert, unter anderem speist der jetzt nicht mehr VIN, sondern ein ATX-Netzteil versorgt die Steuerung mit 5V. Wenn ich jetzt einfach so das USB-Kabel anstecke, verbinde ich praktisch die +5V meiner Notebook-USB-Buchse mit den +5V des ATX-Netzteils. Dabei kann in ungünstigen Fällen ein heftiger Ausgleichsstrom fließen, der im schlimmsten Fall sogar das Notebook rauchen lässt.

Ergo: Obacht!

Klar, wenn du selbst Spannung auf die 5V Schiene des Arduino gibst musst du immer vorsichtig sein winking smiley
Re: Bluetooth für RAMPS 1.4
14. May 2015 18:02
Moin,

aut Anleitung auf reprap.org muss man an die TX-Leitung einen Spannungsteiler hängen. Habt ihr das auch so gemacht oder braucht man das nicht?


Beste Grüße

PS: Danke für die Anleitung :-)
Re: Bluetooth für RAMPS 1.4
08. April 2016 14:34
Hallo Zusammen

Habe versucht das BT Bodul mit RAMPS 1.4 zu verbinden. Dies ohne erfolg.

Folgendes habe ich versucht:

- Bluetooth mit dem FTDI auf Baud 115200 umgestellt, neue Namen und Pin gespeichert.
(Verbindung zwischen BT Modul (JY-MCU v1.05) mit PC oder Android funktioniert)
- zwischen RxD und GND (BT-seitig) 2x 500 Ohm Widerstand eingelötet)
zwischen RxD und TxD 1x 680 Ohm Widerstand eingelötet.
- Getestet mit AUX1 (D0 und D1) und AUX2 (D65 und D66)

Leider ohne erfolg. USB Kabel war ausgesteckt.
Beim Marlin habe ich keine weitere Einstellungen vorgenommen (Baud war bereits au 115200)

Kann es sein, dass die Widerstände nicht korrekt sind?
Ich erhalte beim BT auf RxD lediglich 2.8V anstelle der 3.3


NACHTRAG:
Es funktioniert nun einwandfrei

1-mal bearbeitet. Zuletzt am 08.04.16 17:39.
Re: Bluetooth für RAMPS 1.4
10. April 2016 02:16
Quote
Bongo_1st
NACHTRAG:
Es funktioniert nun einwandfrei


Und warum?

1-mal bearbeitet. Zuletzt am 11.04.16 06:38.


Gruß aus dem Tal Kochertal,
Tobias
E-Mail gibts hier

[www.thingiverse.com]

Maschinen

Sparkcube XL
Photon S

In diesem Forum dürfen leider nur registrierte Teilnehmer schreiben.

Klicke hier, um Dich einzuloggen