Forum: Mikrocontroller und Digitale Elektronik Arduino Nano Klone mit CH340G - So bringt man ihn zum laufen


von Andi (beefi)


Lesenswert?

Hi Leute,

ich habe neulich beim bekannten Online-Shop Arduinos (Nano-Modell) für 
nur 3 EUR entdeckt.
Sie werden in 5er Packs angeboten und kosten ca 15 EUR.

Sie besitzen als USB-Seriell-Konverter keinen AVR und auch keinen FTDI, 
sondern einen CH340G-Chip.

Beim Anstecken und Programmieren per USB ging schon mal gar nichts. 
Dabei laß ich, dass mehrere Leute Probleme mit diesem Modell haben und 
diese wie bei mir gar nicht funktionieren.

Auch nach Neuaufspielen des Bootloaders ging nichts...da fiel mir auf, 
dass die Fuse-Bits falsch gesetzt sind. Ich wollte hier nur mal 
mitteilen, wie man diese China-Platinen zum laufen bekommt...

Also mit nem ISP-Programmer einfach Bootloader + Fuse-Bits neu flashen:

Der Nano braucht den gleichen Bootloader wie der UNO, man findet ihn in 
den Unterordnern der Arduino-IDE:

\arduino-1.6.7\hardware\arduino\avr\bootloaders\atmega\ATmegaBOOT_168_at 
mega328.hex

Die Fuse-Bits sind für den Nano leicht unterschiedlich zum UNO:
LOW-FUSES:      0xFF
HIGH-FUSES:     0xDA   (für den UNO wäre es hier 0xDE)
EXTENDED-FUSES: 0x05
LOCK-BITS:      0x0F


Um über jeden Arduino bescheid zu wissen, welchen Bootloader und welche 
Fuse-Bits er braucht, kann man in der Textdatei boards.txt nachsehen:

\arduino-1.6.7\hardware\arduino\avr\boards.txt

Nach dem Flashen funktioniert das Teil einwandfrei ;)
Man braucht für den CH340G natürlich auch einen Treiber, genauso wie für 
den FTDI oder CP210x. Den findet man überall im Netz wenn man googelt 
(CH341SER.ZIP).
In der Arduino IDE muss beim Hochladen des Sketches "Arduino Nano" 
angegeben werden, NICHT "Arduino/Genuino Uno"!

Viel Spaß

von flo (Gast)


Lesenswert?

Hallo Andi,

Danke für den Beitrag!

Habe auch so einen Nano-Clon.

Programmiere seit Jahren mit dem AVR-Studio/GCC.

Jetzt interessiert sich mein Neffe (10 Jahre) auch für Mikrocontroller.
Darf ich (selber völlig Arduino-unerfahren) an dieser Stelle fragen, was 
die einfachste Entwicklungsumgebung für Arduino ist?
Dann würde ich den Nano-Clon umflashen und meinem Neffen für 
Programmierexperimente überlassen und ihm die entsprechende IDE auf 
seinem Rechner installieren.

Viele Grüße

von Harald (Gast)


Lesenswert?

Hatte auch nen 5er Pack bestellt, Bootloader war drauf, Qualität gut, 
Windows 10 kennt den CH340 übrigens schon von Haus aus.

von Harald (Gast)


Lesenswert?

Kosten bei Aliexpress übrigens 1.57$ inkl. Shipping...

von Philipp K. (philipp_k59)


Lesenswert?

Harald schrieb:
> Hatte auch nen 5er Pack bestellt, Bootloader war drauf, Qualität gut,
> Windows 10 kennt den CH340 übrigens schon von Haus aus.

Jupp war bei mir auch so.

von Stefan F. (Gast)


Lesenswert?

Ich habe auch so ein Paket bestellt. Alle 5 Platinen enthielten den 
Bootloader, die Fuses waren korrekt gesetzt und die Geräte wurden unter 
Linux und Windows 10 (beide in 64bit) vollautomatisch erkannt.

> Darf ich (selber völlig Arduino-unerfahren) an dieser Stelle
> fragen, was die einfachste Entwicklungsumgebung für Arduino ist?

Das wird wohl die Arduino IDE sein, sollte man annehmen.

von Andi (beefi)


Lesenswert?

Hi flo,

für den Anfang würde ich definitiv die original Arduino IDE empfehlen. 
Einfach aus dem Grund, weil die Lernbücher und Tutorials darauf 
basieren. Wenn man das Grundprinzip kapiert hat, würde ich mir mal 
andere IDE's ansehen. Die Arduino IDE ist ja fast nur ein Editor mit 
Codeeinfärbung :)

Da gäbe es dann noch Mariamole, ist ähnlich der original Arduino IDE, 
jedoch mit Codevervollständigung und ner besseren Projektverwaltung. Ist 
schon angenehmer.

Und unschlagbar ist eigentlich Visual Studio mit dem VisualMicro Plugin. 
Du hast den vollen Visual Studio Editor Luxus, volle Kompatibilität zur 
Arduino IDE (kannst bei dem gleichen Projekt beliebig zwischen den IDE's 
wechseln) und du hast einen Debugger, der Gold wert ist. Ich rede hier 
nicht von einem Simulator sondern Debuggen im Livesystem, ohne weiterer 
Hardware. Du kannst den Code Schritt für Schritt durchgehen ud siehst 
Live zb auf dem Steckbrett, welche LED nun angeht, oder was am Display 
kommt usw.
Das geht mit keiner anderen IDE.

Das VisualMicro Plugin empfehle ich für das echte Visual Studio (zb 
Visual Studio 2015 Community). Es läuft zwar auch mit dem Atmel Studio 
(nicht AVR Studio), wird jedoch nicht empfohlen...und die Version ist 
auch älter.

: Bearbeitet durch User
von Flip B. (frickelfreak)


Lesenswert?

Meine funktionierten bisher auch ohne veränderungen ootb.
Danke für die Anleitung.

von Michael U. (amiga)


Lesenswert?

Hallo,

mein China-Kram war bis auf eine Ausnahme komplett ok.
Die Ausnahme hat mein Bekannter direkt aus China mitgebracht:
NodeMCU-Module, die merklich größer als das "Original" waren, und 
offenbar von einem Autorouter irgendwie erzeugt wurden.

1 Modul hatte einen Bestückungsfehler am CH340, das hatte er zuerst in 
der Hand und wurde nicht erkannt. Das zweite wurde manchmal erkannt, da 
war wohl "Dreck" in auf den USB-Kontakten, inzwischen läuft es und die 
restlichen auch.
Fehlenden Bootloader o.ä. hatte ich bisher nicht.

Gruß aus berlin
Michael

von flo (Gast)


Lesenswert?

Hallo Andi,

Danke für die ausführliche Erklärung!

Andi R. schrieb:
> für den Anfang würde ich definitiv die original Arduino IDE empfehlen.
> Einfach aus dem Grund, weil die Lernbücher und Tutorials darauf
> basieren. Wenn man das Grundprinzip kapiert hat, würde ich mir mal
> andere IDE's ansehen.

Für den Anfang soll es natürlich möglichst einfach und übersichtlich 
sein. Werde es so machen, dass er die Arduino IDE bekommt und ein 
Lehrbuch dazu. Zusätzliche Sachen kann er sich im Internet suchen.

Gibt es ein gutes Onlinetutorial für die Arduino IDE, mit der ich mich 
als erfahrener ARV-Studio-Benutzer und C-Programmierer möglichst einfach 
in die Materie einarbeiten kann, um meinem Neffen bei Anfängerfragen 
direkt helfen zu können?

von Philipp K. (philipp_k59)


Lesenswert?

flo schrieb:
> Gibt es ein gutes Onlinetutorial für die Arduino IDE, mit der ich mich
> als erfahrener ARV-Studio-Benutzer und C-Programmierer möglichst einfach
> in die Materie einarbeiten kann, um meinem Neffen bei Anfängerfragen
> direkt helfen zu können?

Arduino.cc Getting started..

https://www.arduino.cc/en/Guide/HomePage

von Andi (beefi)


Lesenswert?

Es gibt bestimmt viele Tutorials im Internet...oder eben direkt die 
Arduino-Seite, wie Phillip schon schrieb.

Ich programmiere eigentlich auch direkt AVR's in Assembler oder C. Da 
ich aber einige Open Source Geräte gebaut habe (CNC-Fräse, 3D-Drucker, 
Quadrocopter), die alle auf dem Arduino basieren, wollte ich diesen auch 
beherrschen. Die ganze Bastel- und Open Source Szene ist schon stark auf 
den Arduino eingeschossen.
Empfehlen kann ich dir das Buch "Arduino Workshops: Eine praktische 
Einführung mit 65 Projekten" von John Boxall. Das soll wohl eines der 
Besten sein.
Dazu unbedingt ein Starter Kit, auch wenn man vieles eh schon daheim hat 
und irgendwie zamfrickeln könnte, sonst kann man mit dem Buch nicht 
wirklich reibungslos starten. Da empfehle ich die SunFounder Kits...am 
besten das mit dem Propeller Motor, dem Beschleunigungssensor, 
Matrix-LED-Anzeige, Schieberegistern, usw. für 35,99 EUR beim standard 
Online-Shop.
Wenn du diese zwei Dinge hast, wirst du nach 100-200 Seiten und etwa 1-2 
Tagen lächelnd einen Arduino programmieren können...so ging es mir 
zumindest. Es ist wirklich total einfach. Es ist einfach nur C mit total 
vereinfachten Funktionen, weiter nichts.
Wichtig zum lernen sind eben diese Kits, vor allem mit abgefahrener 
Hardware, da diese anspruchvollen Anwendungen beim Arduino anscheinend 
zum alltäglichen Kinderkram gehören.

von Nils S. (kruemeltee) Benutzerseite


Lesenswert?

Andi R. schrieb:
> Open Source Szene ist schon stark auf
> den Arduino eingeschossen.

Haha. Guter Witz...

von Julian B. (julinho)


Lesenswert?

Andi R. schrieb:
> Es ist einfach nur C mit total
> vereinfachten Funktionen, weiter nichts.

eher C++

von Andi (beefi)


Lesenswert?

Nils S. schrieb:
> Andi R. schrieb:
>> Open Source Szene ist schon stark auf
>> den Arduino eingeschossen.
>
> Haha. Guter Witz...

Vielleicht falsch ausgedrückt...er ist sehr weit verbreitet.

von flo (Gast)


Lesenswert?

Andi, vielen herzlichen Dank für die Buchempfehlung und die Empfehlung 
des Starter-Kids!!!
Werde es so machen.

Viele Grüße und ein schönes Wochenende!

Flo

von Eric B. (beric)


Lesenswert?

flo schrieb:
> Starter-Kids

:-D Starter-kits für Starter-kids!

von peter (Gast)


Angehängte Dateien:

Lesenswert?

4 Stück für 9,96 Euro Transportkosten  : Null ! Endpreis 9,96 Euro

Gleich bestellt.

Gruss

von peter (Gast)


Lesenswert?

Dieser Treiber oben : CH341SER.ZIP geht auch für den MEGA2560 für 10 
Euro aus China.

Gruss

von peter (Gast)


Lesenswert?

---------------------------------
Das wird wohl die Arduino IDE sein, sollte man annehmen.
---------------------------------

So ist es, die IDE 1.6.7 und alle Experiemente laufen.

GRuss

von peter (Gast)


Lesenswert?

-------------------------------------
Visual Studio mit dem VisualMicro Plugin
-------------------------------------

Welches konstenlose Visual Studio funktioniert mit dem  VisualMicro 
Plugin ?

Danke.

von Andi (beefi)


Lesenswert?

peter schrieb:
> Welches konstenlose Visual Studio funktioniert mit dem  VisualMicro
> Plugin ?

Es läuft allgemein mit dem Visual Studio 2012 - 2015. Ob jetzt die 
Express-Versionen beinhaltet sind, weiß ich nicht. Die Express Versionen 
gibt es ja glaube ich auch gar nicht mehr...das kostenlose Visual Studio 
ist die Community Version.
Einfach hier herunterladen: https://www.visualstudio.com/
Da hast du wieder alles in einer IDE und brauchst nicht mehr sämtliche 
Express-Versionen parallel installieren. Wenn du auch C++ programmieren 
willst, musst du es bei der Installation extra auswählen...auch die MFC 
ist seit der Community-Edition kostenlos mit dabei.
Das Visual Micro Plugin solltest du dann am besten direkt aus Visual 
Studio mit dem Plugin-Manager installieren. Es ist grundsätzlich 
kostenlos...es gibt jedoch auch eine Pro-Version mit mehr Funktionen mit 
unterschiedlichen Preisen für Privatleute und Firmen. Die Pro-Funktionen 
sind aber 45 Tage in der kostenlosen mit enthalten...unter anderem der 
Debugger.

Ich finde jedoch, man sollte sich überlegen, nur wegen dem Arduino 
Visual Studio zu installieren, außer man programmiert noch C# oder 
VB.NET...es ist schon eine massive Installation für das Betriebssystem. 
Und das komplette Deinstallieren ist auch nicht so easy. Du nutzt mit 
dem Plugin wirklich nur den blanken CodeEditor vom Studio, der Rest wird 
alles über das über eine gesonderte Symbolleiste abgewickelt...auch die 
Projektverwaltung ist eine eigene.

Und falls du schon das Atmel Studio installiert hast, kannst du auch 
hier das Plugin installieren, was aber laut Hersteller nicht empfohlen 
wird. Bei mir hat es funktioniert, jedoch hat mir die das normale Visual 
Studio wieder mal mal das Atmel Studio zerschossen.

Die Arduino IDE ist für den Anfang schon das beste...da läuft einfach 
alles problemlos. Und Mariamole ist vergleichbar mit der 
VisualMicro-Lösung, nur eben, dass es keinen Debugger gibt.

von LO (Gast)


Lesenswert?

peter schrieb:
> ---------------------------------
> Das wird wohl die Arduino IDE sein, sollte man annehmen.
> ---------------------------------
>
> So ist es, die IDE 1.6.7 und alle Experiemente laufen.

Dort auf der Downloadseite gibt es auch eine  "nightly"-Version. Hat das 
Wort "nightly" eigentlich eine allgemeine Bedeuting im Bereich 
Computersoftware? Man findet den Begriff auch bei anderer Software (z.B. 
bei manchen Versionen von SDRsharp).

von peter (Gast)


Lesenswert?

Von da wird die IDE geladen:
https://www.arduino.cc/en/Main/Software

von LO (Gast)


Lesenswert?

peter schrieb:
> Von da wird die IDE geladen:
> https://www.arduino.cc/en/Main/Software

Unter
Windows Installer
gibts die
arduino-1.6.7-windows.exe


Dort etwas tiefer unter
ARDUINO SOFTWARE HOURLY BUILDS
Windows
gibts die
arduino-nightly-windows.zip

Was bedeutet das "nightly"?

von G. H. (schufti)


Lesenswert?

da das SW "under development" ist, wird "jede Nacht" (daher: nightly) 
automatisch eine neue Version aus dem git erstellt. Einerseits um die 
Kompilierbarkeit festzustellen, andererseits um der Allgemeinheit die 
Möglicheit von Tests zu geben.

von peter (Gast)


Lesenswert?

Ja, jetzt habe ich es erkannt.

Die hatte ich auch schon einmal geladen gehabt.
Ich dachte es wäre immer die neueste funktionierende IDE.
Dem ist nicht so, damit kommen mit den aktuellen Libs viele 
Fehlermeldungen.
Ist etwas für Bastler, nicht für funktionierende Versuche.

Gruss

von Stefan F. (Gast)


Lesenswert?

Die neueste funktionierende Version findet man allgemein unter den 
"Releases".

von x2k (Gast)


Lesenswert?

bei mir funktioniert trotz CH340G Treiber auch nichts. Der Chip lässt 
sich auch nicht mit einem funktionierenden Leonardo flashen.
Im Internet steht so manches zu dem Thema, aber alle schreiben was 
anderes.

Ich habs auch schon mit AtmelStudio versuchen wollen, das hat allerdings 
keine option zum Flashen.

Gibts eine Möglichkeit zu Kontrollieren wie die Fuses auf meinem Clon 
gesetzt sind bzw kann man sie mit der Arduino IDE umschreiben?

von Michael U. (amiga)


Lesenswert?

Hallo,

vielleicht noch als Hinweis zur Arduino-IDE: die 1.6.9 ist bie mir z.Z. 
offenbar problemlos. Es gibt durch Änderungen in den Versionen durch mal 
das Problem, daß Sketche angemault werden, die mit der vorigen Version 
noch ohne Änderung compilierbar waren. Man sollte also nicht jeder neuen 
Version nachjagen, bevor man im Umgang nicht halbwegs sicher geworden 
ist.

Die IDE läßt sich auch komplett prtabel installieren: als .zip 
runterladen (nicht den Installer) und in einen beliebigen Ordner 
entpacken.
Dann VOR dem ersten Start im Arduino-Ordner einen Ordner "portable" 
anlegen.
Dann starten. Sketchbook usw. landen dann in diesem Ordner und man kann 
alles z.B. auf einem USB-Stick einfach mitnehmen und woanders 
weitermachen.

Gruß aus Berlin
Michael

von Christopher J. (christopher_j23)


Lesenswert?

x2k schrieb:
> Gibts eine Möglichkeit zu Kontrollieren wie die Fuses auf meinem Clon
> gesetzt sind bzw kann man sie mit der Arduino IDE umschreiben?

Guck mal hier unter "AVRDUDE":
https://www.mikrocontroller.net/articles/AVR_Fuses

Das Programm sollte in der IDE dabei sein, etwa unter 
Hardware/tools/AVR/bin

von Axel S. (a-za-z0-9)


Lesenswert?

x2k schrieb:
> bei mir funktioniert trotz CH340G Treiber auch nichts.

Was heißt das? "Funktioniert nicht" ist keine Fehlerbeschreibung.
Da kann man gar nicht helfen.

> Der Chip lässt
> sich auch nicht mit einem funktionierenden Leonardo flashen.

Auch dabei kannst du 1001 Fehler einbauen. Ohne zu wissen, was du 
genau gemacht hast, kann auch keiner sagen, warum das nicht geht. Mal 
ganz davon abgesehen, daß der Zugang über den ISP vollkommen unabhängig 
von einem CH340 Treiber und dem Bootloader ist und weitgehend unabhängig 
von den Fuse-Einstellungen.

> Ich habs auch schon mit AtmelStudio versuchen wollen, das hat allerdings
> keine option zum Flashen.

Und das ist eine weitere Dimension: die verwendete Software auf der 
PC-Seite. Wenn du schon Arduino verwendest - warum dann nicht auch die 
Arduino IDE?

> Gibts eine Möglichkeit zu Kontrollieren wie die Fuses auf meinem Clon
> gesetzt sind bzw kann man sie mit der Arduino IDE umschreiben?

Die Fuses sind zu 99% richtig gesetzt. Die Werkseinstellungen sind 
sowieso unproblematisch und wenn dein Nano einen Bootloader aufgespielt 
hat, dann sind die Fuses ganz sicher auch passend dazu eingestellt: auf 
externen Quarz und Verwendung eines Bootloaders.

Zielgerichtete Fehlersuche sieht anders aus. Da versucht man nicht 
wahllos alle Lösungswege die einem einfallen. Um dann am Ende die Schuld 
doch auf die Hardware zu schieben.

Da du nun einmal zu Arduino willst: sieh zu daß du den Bootloader zum 
Laufen bekommst. Mach klar daß das USB-Gerät korrekt gefunden wird und 
daß der Treiber installiert ist. Dann verwende die Arduino-IDE um mit 
dem Bootloader auf dem Nano zu kommunizieren. 99% der Fehler liegt dabei 
auf der PC-Seite (Betrübssystem, Treiber, Anwender)

von Oetti (Gast)


Lesenswert?

Axel S. schrieb:
> Wenn du schon Arduino verwendest - warum dann nicht auch die
> Arduino IDE?

Ich kenne mehrere Leute, die Arduino-Hardware, aber nicht die dusselige 
IDE verwenden.

> 99% der Fehler lieg_en_ dabei
> auf der PC-Seite (Betrübssystem, Treiber, Anwender)

Falsche Reihenfolge :-)

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.