Hallo Leute, ich moechte hier einfach meine kurze Erfahrung, zum Umstieg von Windows auf Linux bezueglich der AVR programmierung, mit euch teilen. Ich habe vor etwas mehr als 3 Jahren Windows "Gehe mit Gott, aber geh!" gesagt und bin auf Archlinux umgestiegen (hab trotzdem noch ne Platte mit Windows 7, fuer den Notfall). Seit dem habe ich aber praktisch nichts mehr mit Mikrocontrollern (hauptsaechlich AVR) gemacht, da mir unter Linux immer etwas vergleichbares zu Atmel Studio gefehlt hat. Hier im Forum habe ich oft gelesen, dass Atmel Studio in einer Windows-VM ziemlich kacke waere. Hauptsaechlich wegen der Probleme mit USB bei VirtualBox. Jetzt habe ich mir aber mal ein bisschen Zeit genommen das auszuprobieren, da ich wieder was mit einem AVR machen will. Also "mal eben schnell" (haha... -.-) eine VM mit Windows 10 Pro und Atmel Studio installiert. Die Installation von Atmel Studio verlief problemlos. Auch das durchreichen des Programmers (Atmel-ICE) an die VM klappt hervorragend (VirtualBox Extension fuer USB 2 und 3 ist installiert, bei Arch leider nur aus dem aur-repo: aur/virtualbox-ext-oracle 5.2.8-1). Was in der VM nicht funktioniert hat, war das Upgraden der Atmel-ICE Firmware. Dafuer dann doch nochmal die Windows Notfall-Platte aktiviert und das Firmware Upgrade gemacht. Atmel Studio laesst einen ja leider nicht flashen, wenn die Firmware nicht up-to-date ist. Was fuer ein Bloedsinn! Warum macht man sowas? Naja, soll mir egal sein... Upgrade durchgefuehrt, Win10 VM gestartet, Programmer durchreichen, und siehe da: das flashen und debuggen des AVR klappt problemlos, immer. Wenn man also von dem Firmware Upgrade mal absieht, dann funktioniert das ganze mit der VM doch ziemlich gut. Zumindestens bei mir. Jetzt ist eine Windows-VM aber nicht das non-plus-ultra fuer mich. Ich wollte das ganze auch unter Linux machen. Eclipse (Oxygen.2, 4.7.2) und die AVR-Toolchain und avrdude waren eh schon installiert. Also noch schnell das AVR-Plugin (Version: 2.3.4 aus dem Eclipse Marketplace) installiert und ausprobiert... Es kommt die erste Ernuechterung: Irgendwas klemmt und avrdude kann den uC nicht flashen. "Scheisse" denk ich mir, "was soll denn die Kacke jetzt?". Irgendwas hat avrdude aber gemacht, denn die LED am uC blinkt nicht mehr. Also nochmal das Notfall-Windows hochgefahren und den uC im Atmel Studio geloescht und das Testprogramm nochmal neu geflasht. Wieder zu Linux gewechselt, nochmal avrdude aufgerufen und siehe da: es geht! Weiss der Geier was da geklemmt hat. Ist mir aber auch egal. Schnell noch ein Makefile zum compilieren und flashen gemacht, und es funktioniert einfach wunderbar. Ich bin doch ziemlich begeistert. Insgesamt muss ich sagen, dass der Umstieg von Windows auf Archlinux, bezueglich der AVR programmierung, bei mir doch schmerzfreier war, als erwartet. Nachdem was man hier im Forum so teilweise liest... (Windows ist kacke, Linux ist kacke, VM ist kacke, Eclipse AVR-Plugin geht nicht, etc.) Das einzige was mich jetzt noch stoert ist, dass avrdude ziemmlich lange braucht, siehe hier: Beitrag "avrdude braucht lange zum Beenden (Linux)" Ich wuensch euch was :) Gruesse
:
Verschoben durch User
Ich benutze das AVR oder Atmel Studio nur zusammen mit meinem alten Dragon zum Debuggen, denn das habe ich unter Linux noch nicht hinbekommen. Da ich allerdings das Programmieren zu einer Zeit gelernt hatte, als es für µC noch keine Debugger gab, verspüre ich nur selten den Bedarf danach. Stattdessen nutze ich häufig Log-Meldungen. Außerdem nutze ich AVR's nur noch für die "kleineren" Projekte, denn ich habe inzwischen auch zahlreiche STM32 Module in der Bastelkiste. Die kann ich mit der "System Workbench for STM32" unter Linux und Windows gleich programmieren und debuggen. Als IDE für AVR nutze ich gerne Netbeans, Eclipse und QT Creator gehen auch. Ich habe mal aufgeschrieben, was man einstellen muss: http://stefanfrings.de/avr_tools/index.html
Beitrag #5339352 wurde vom Autor gelöscht.
Da ich viel mit Atmel Studio arbeite bleibe ich weiter bei Windows. Dafür ist das meiste erhältlich, darauf ist das meiste abgestimmt. Und natürlich ist die Entscheidung für Windows immer auch eine ganzheitliche Entscheidung, für die viele andere Gründe sprechen. Stefan U. schrieb: > Außerdem nutze ich AVR's nur noch für die "kleineren" Projekte, denn ich > habe inzwischen auch zahlreiche STM32 Module in der Bastelkiste. Die > kann ich mit der "System Workbench for STM32" unter Linux und Windows > gleich programmieren und debuggen. Mit diesem Hintergrund ist sicher eine Möglichkeit mehr gegeben auf Linux zu wechseln.
Kaj G. schrieb: > ich moechte hier einfach meine kurze Erfahrung, zum Umstieg von Windows > auf Linux bezueglich der AVR programmierung, mit euch teilen. Ich werde nie begreifen, warum es notwendig sein sollte, "umzusteigen". Ich benutze seit ca. 1996 Linux und Windows parallel, mindestens in einer Dual-Boot-Konfiguration auf jedem meiner Rechner. Heute ist es so, dass ich nach wie vor diese Dual-Boot-Konfigurationen habe, zusätzlich aber auch noch eine VM der jeweils "anderen Seite". Mit ein paar Tricks (und Einschränkungen) ist es sogar möglich, dass die VMs das physische Abbild des jeweiligen Dualboot-Counterparts laufen lassen. Also irgendwie sehe ich absolut keinen Grund für einen "Umstieg". Worauf sollte ich auch umsteigen? Ich habe doch jederzeit das Beste beider Welten verfügbar. Im allerschlimmsten Fall die maximal 90 Sekunden entfernt, die ein Reboot benötigt. Wirklich nötig wird das bei meiner Nutzung aber eher selten. Nunja, ich spiele halt schon lange nicht mehr. Ist mir über die Jahre viel zu langweilig geworden. Da gibt es viel Spannenderes...
c-hater schrieb: > Ich werde nie begreifen, warum es notwendig sein sollte, "umzusteigen". Weil sich nicht alle vor MS bücken wollen? Mein letztes Windows war 7 (per Kauf dabei; Linux war dann per Dualboot) und danach wurde mir die Datensammelei endgültig zu heftig. Neue Geräte werden explizit ohne Windows gekauft. Daneben gibts noch andere Gründe, aber das ist jetzt egal. Kaj G. schrieb: > Nachdem was man hier im Forum so teilweise liest... (Windows > ist kacke, Linux ist kacke, VM ist kacke, Eclipse AVR-Plugin geht nicht, > etc.) Glaubenskriege gehören seit jeher zu Win vs. Linux.
Um Windows und Linux gleichzeitig nutzen zu können, braucht man praktisch doppelt RAM (vor allem bei so Monstern wie Atmel Studio und Android SDK). Hast du mal geschaut, wie teuer RAM für Notebooks zur Zeit ist? Ich müsste für die Erweiterung auf 16GB satte 230 Euro ausgeben! Ich kann gut verstehen, dass Leute gerne möglichst alle Entwicklungs-Tools unter einem OS zusammen haben wollen. Wenn da nicht das (Windows-Only) Atmel Studio wäre, dann wäre das auch ganz einfach. Aber nein, dann muss es eben Windows sein, auch wenn 90% der Software eigentlich von Linux nach Windows portiert wurde und unter Linux ein bisschen komfortabler verwendbar ist. VM machen auch nur bedingt Spaß, wenn man USB Geräte (Programmieradapter, Debugger, Meßgeräte) benutzen muss.
> Was in der VM nicht funktioniert hat, war das Upgraden der Atmel-ICE Firmware. Den Leidensweg kenn ich. Hat mich zu qemu+kvm geführt. Dort funktioniert das Upgrade. Mit vmplayer soll es auch gehen, nur mit Virtualbox nicht. Die Bequemlichkeit, mit einem Klick die Peri zu beobachten, wird zunehmend von MPLABX übernommen. Atmel konnte es sich wohl nicht leisten, einen Entry-Level-Debugger zum Selbstkostenpreis anzubieten. Für nen fuffi gibt es immer nur eine nackte Platine. > braucht man praktisch doppelt RAM Habe Win10Pro mit 8Gb Ram ausgestattet. Die Win-Partition liegt auf einer kleinen 5400er Platte. Das Ganze startet in der qemu-VM schneller als Win7Pro nativ auf einem Rechner mit 8GB Ram und 7200er Platte. Mit SSD müsste das ganze fliegen, denn das Win10 fühlt sich nicht so an, wie ich Windows von früher her kenne.
Stefan U. schrieb: > Um Windows und Linux gleichzeitig nutzen zu können, braucht man > praktisch doppelt RAM (vor allem bei so Monstern wie Atmel Studio und > Android SDK). Das stimmt so nicht. Ja, man braucht mehr RAM, aber nicht das Doppelte. Der virtuelle Speicher wurde schon vor sehr langer Zeit erfunden und alle moderne VM-Systeme können dieses Konzept auch bezüglich der Ressourcenteilung zwischen Host und Gast (bzw. Gästen) anwenden. Dazu kommt: die können sogar den Datenträgercache des Hosts für die Gäste verwenden. > Hast du mal geschaut, wie teuer RAM für Notebooks zur Zeit ist? Ich > müsste für die Erweiterung auf 16GB satte 230 Euro ausgeben! Rausgeschmissenes Geld. Ich habe nur 8GB in meinen Systemen (Notebook und Desktop), das langt völlig für Host und einen Gast. 16GB würden nur noch unwesentlich mehr Performance bringen. Das braucht man nur für neuzeitliche Spiele, sehr große Datenbanken oder andere Anwendungen, die mit sehr großen Datenmengen operieren. Da spielen dann aber wiederum die paar hundert MB, die die gerade nicht benutzte VM samt ihrer Anwendungen behält, wenn sie nach und nach aus dem Speicher verdrängt wird, absolut keine Rolle mehr. Es ist inzwischen einfach kein bisschen anders als die Konkurrenzsituation in einem einzigen OS bezüglich des virtuellen Speichers. Wer das nicht kapiert, hat virtuellen Speicher an sich nicht kapiert... > Ich kann gut verstehen, dass Leute gerne möglichst alle > Entwicklungs-Tools unter einem OS zusammen haben wollen. Ich nicht. Das ist doch schon vom Konzept her völlig schwachsinnig: Warum sollte ich z.B. unter Linux Windows-Forms oder Windows-WPS Anwendungen entwickeln wollen, statt das einfach unter Windows im VS zu tun? Das ist doch Unsinn. > VM machen auch nur bedingt Spaß, wenn man USB Geräte > (Programmieradapter, Debugger, Meßgeräte) benutzen muss. Das war leider wirklich lange ein Problem (neben vielen anderen Problemen bei der Bereitstellung von Hardware des Hosts für die VM). Aber gerade bei USB (zumindest jenseits von isochronen Transfers) ist es inzwischen doch ganz gut, eigentlich sogar nahezu perfekt... Kann es sein, dass du einfach zu faul warst, diesbezüglich auf dem Laufenden zu bleiben?
> Rausgeschmissenes Geld. Ich habe nur 8GB in meinen Systemen ... > 16GB würden nur noch unwesentlich mehr Performance bringen Dann hast du vermutlich keine SSD. Wenn man eine SSD verwendet, soll man dafür sorgen, dass der Rechner die Auslagerungsdatei möglichst nicht verwendet. Dabei geht es weniger um die Performance, sondern um den Verschleiß. > Warum sollte ich z.B. unter Linux Windows-Forms oder Windows-WPS > Anwendungen entwickeln wollen Darum geht es doch gar nicht. Ich möchte nicht meine AVR Programme unter Linux in einer IDE schreiben, und sie später unter Windows debuggen müssen. Im AVR Umfeld kann ich Linux nur gebrauchen, wenn ich auf Debugging verzichte (und das tue ich). > Kann es sein, dass du einfach zu faul warst, diesbezüglich auf > dem Laufenden zu bleiben? Nach mehr als 10 Jahren Probleme mit USB habe ich es in der Tat schon länger nicht mehr versucht.
Hallo, bei mir war es genauso, viele Jahre lang Windows, dann aus Frustation (schon wieder neu aufsetzen? Gehts noch? Mein Leben besteht auch noch aus was anderem als neuaufsetzen von Betriebssystemen!) zu Linux gewechselt. Mit Windows hatte ich auch Atmel Studio, unter Linux benutze ich Atom+avr-gcc+avrdude und das funktioniert super! Ivo
> > Hast du mal geschaut, wie teuer RAM für Notebooks zur Zeit ist? Ich > müsste für die Erweiterung auf 16GB satte 230 Euro ausgeben! Ja, bei Notebooks & kleiner muss man f.die Miniaturisierung bezahlen und sei es nur wg.den wenigen (nur 2) RAMSlots. Aber was sind 230.- relativ zum Gerätepreis? RAM ist immer das günstigste um einem Rechner Beine zu machen und ihn langlebiger zu machen. Bei Neukauf budgetiere ich gerne 30% oder mehr f. RAM, zumindest solange es nicht um überproportional teure Sondermodule geht. Maximalausbau sobald es finanziell möglich ist. Die 32GB in meinem gut 10J alten dual-Xenon möchte ich keinesfalls missen, damit erfüllt er immernoch private Workstation Duties. (Gott möge die Elkos schützen...)
> Aber was sind 230.- relativ zum Gerätepreis? Etwa die Hälfte. > RAM ist immer das günstigste um einem Rechner Beine zu machen Nein. Wenn das RAM ausreicht, hast du von einer SSD wesentlich mehr. Und wenn man Virtualisierung verwenden möchte, sollte man darauf achten, einen Computer mit passender CPU zu kaufen. Es gibt einige Notebook Prozessoren (auch von Intel) die VM's nur schnarchlangsam ausführen können.
Stefan U. schrieb: > Ich kann gut verstehen, dass Leute gerne möglichst alle > Entwicklungs-Tools unter einem OS zusammen haben wollen. Wenn da nicht > das (Windows-Only) Atmel Studio wäre, dann wäre das auch ganz einfach. Ist auch so ganz einfach, entweder mit dem AVR-Plugin für Eclipse oder mit eigenen Makefiles. Und dann hat man auch gleich eine gescheite IDE die im Gegensatz zu Atmelstudio vernünftig mit der Sprache C zurecht kommt.
> Ist auch so ganz einfach, entweder mit dem AVR-Plugin > für Eclipse oder mit eigenen Makefiles. Funktioniert damit auch Debugging (m it einem Atmel Dragon)?
Stefan U. schrieb: > Dann hast du vermutlich keine SSD. Wenn man eine SSD verwendet, soll man > dafür sorgen, dass der Rechner die Auslagerungsdatei möglichst nicht > verwendet. Dabei geht es weniger um die Performance, sondern um den > Verschleiß. Diese Weisheit stammt noch aus den Anfangszeiten der SSDs. Inzwischen sind die meisten davon den klassischen Platten in punkto MTBF nicht nur ebenbürtig, sondern sogar überlegen. Man kann sie also bedenkenlos genauso beschreiben wie ihre mechanischen Kollegen. Der einzige Minuspunkt für SSDs ist heutzutage noch der wesentlich höhere Preis.
Stefan U. schrieb: > Funktioniert damit auch Debugging (m it einem Atmel Dragon)? AvaRICE ist das Stichwort.... Beitrag "Erfolgreich AVR Dragon + AVARICE + GDB verwendet unter Linux"
>> Funktioniert damit auch Debugging (m it einem Atmel Dragon)? > AvaRICE ist das Stichwort.... Ja, das hatte ich damals ausprobiert und nur lauter nichts sagende Fehlermeldungen erhalten. Und wie man das dann in einer der gängigen IDE's verwendet, ist unklar. Hast du das mal ausprobiert?
Stefan U. schrieb: > Hast du das mal ausprobiert? Also den AVARICE schon aber ob auch mit dem Dragon kann ich nicht mehr sagen. Ich hatte den Dragon nur ganz kurz und hab mir dann günstig einen Jtag mkii besorgt. Und das ist jetzt 10 Jahre her :) Jörg W. müsste dazu was wissen weil er am AVARICE programmiert hat.
:
Bearbeitet durch User
Es wäre schon eine feine Sache, wenn man den Dragon unter Linux mit Eclipse oder Netbeans benutzen könnte. Denn das ist für mich die einzige Baustelle, wegen der ich selten Windows benutze.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.