Micro Controller unter macOS - Teil 1

Setting up the Arduino IDE and integration of the ESPs as well as the establishment of Thonny under MacOS 

 
An Apple the day keeps Windows away :-)

Part 1 - Set up Arduino

1. A short preliminary remark


Even users of Apple's Mac computers feel the need to deal with microcontrollers. There is much literature, also you will find a large number of contributions in the network. However, the predominant number of this information refers to the use of the controllers under Windows computers. The Macians are probably in the call to liitle or nothing with micro controllers and only deal with graphics. While this may apply on average, it is not true for all "Maccerer". This and, of course, the relatively low dissemination of Macs is probably the reason for the rather pantomal treatment of this platform in this topic.

This contribution will help beginners to dig into this beautiful area.

2. Helpful software

    This entry was written under MacOS »Big Sur« (version 11.2.2), the currently newest operating system.

    First of all, I would like to give a brief overview of helpful software. Of course, the enumeration is not complete, but the preference of the author is due.

    System software

    a) »terminal«To call various shells to interact with the computer by means of console commands.
    b) »preview"The often underestimated PDF reader from MacOS with simple ways to edit PDFs and pictures, is enough for home use.
    c) »Safari«, The supplied browser
    d) »Text", A simple text editor, included

    Software from »outside«

    a) »iTERM2", A very powerful terminal software, available for free at:
    https://iterm2.com
    b) »BBEdit«Very powerful text editor, chargeable ($ 50), also available in the AppStore, only available in English
    c) »CotEditor", Simple text editor, free in the AppStore
    d) »Firefox«, »Google Chrome«, »Opera«, »Vivaldi«, »Microsoft Edge"All browsers, according to personal taste, selectable

    3. Installation of the Arduino IDE

      Prerequisite for programming the Arduino or ESP modules is at least one development environment. Two of them are known to me, on the one hand the Arduino IDE and the other the "Visual Code Studio" of Microsoft. For the beginner, I think the "Arduino IDE" is ideally suited, but not so powerful, but less complicated to incorporate.

      The Arduino IDE is available for free on the Arduino website:

      https://www.arduino.cc/en/software

      Here are the versions for Windows, Linux and MacOS, at the time of creating this text version 1.8.13. After clicking on the line »Mac OS X« and answering the question whether we only load or give a small donation, the software is loaded and lands in the folder »Downloads«, where it will be unpacked.


      From there we draw the program in the »programs« folder.


      Now the program "Arduino" is started. First, we must answer the one-time security query because the program does not come from the AppStore. After all, the developers seem to be registered with Apple.


      Now comes the »Arduino« window:


      The red error messages in the below window can be ignored because no board is yet connected.

      An installation of drivers for connecting the boards was not necessary for me.

      The following boards:

      • »Arduino Mega® 2560 Rev3« by Arduino
      • »Mega 2560 R3 Board with Atmega2560« by AZ-Delivery
      • »Atmega328 development board« by Vellemann
      • »Microcontroller Board with Atmega328P, Atmega16U2, compatible with Arduino UNO® R3« from AZ-Delivery
      • »Nano V3.0 with Atmega328 CH340« from AZ-Delivery

      worked without further driver installation.

      At the first start, a folder "Arduino" is created in the user folder. All projects are stored in these folders.


      If further libraries are loaded, they automatically come to a folder »Libraries«, which is located in the "Arduino" folder.
      The UNIX path to these folders is:

      ~ / Documents / Arduino or ~ / Documents / Arduino / Libraries

      »~« Is the abbreviation for »/ users / users«. ("User" is of course the name of the respective user. (The sign "~« is obtained with "Option-N".)

      4. Setting up the IDE

        IDE means "Integrated Development Environment" and is a collection of programs that allow easy software development to enable.

        The Arduino IDE can be adapted to a certain extent. Let's take a look at that. The program is started and then the menu item »Arduino -> Preferences ...« is called.


        The »Preferences« window:


        • Setting the language
        • Text size, for the elderly, 18 points is recommend. ;-)
        • Setting option: »None«, »Standard«, »more« or »All«. Select for the beginning »Standard«.
        • If the hook is set here, you can use the program texts in an external editor, e.g. CotEditor or BBEDIT write. This has advantages because these editors are much more powerful than the Arduino editor, but on the other hand, it has the disadvantage that you have opened two windows and that the syntax accentuation, as in the Arduino IDE, is not available. Try out and decide what you like better.

        5. The first program

          For the first steps, I use the microcontroller board with ATMega328p, ATMega16u2, compatible with Arduino UNO R3, which is connected to the Mac with a USB cable. Then it starts:

          a) start Arduino program
          b) The IDE provides a variety of sample programs called "Sketches" here. One of them, "blink," we will bring to life.
          Nomen Est Omen, the program lets the built-in LED light on pin 13 in seconds.
          c) We open the sketch »Blink«


            The sketch "Blink"


            d) and select the type of connected board


              e) Setting the ports
              The name for the port depends on the USB controller chip of the board used, but always starts with »/dev/cu.usbserial-«.


              f) now translate and play on the board
              If you click on the button with the hook, the program is only translated. So you can determine if a syntax error is present, logical errors are not found so of course. :-(
              Clicking on the button with the right arrow translates the program into a version that can run the microcontroller and transfers the program code to the chip of the board



              In red font, the success message is down in the window.

              g) After a short time, the LED should blink cheerfully.

              Done!


              h) A note about the boards compatible with the Arduino Nano:
              There are boards that are provided with the "old bootloader", others have the new bootloader. The board »Nano V3.0 with Atmega328 CH340« from AZ-Delivery comes with the old bootloader. Therefore, in the Arduino IDE, another setting must be made, because the right bootloader must be selected extra:


              If you want to play the new bootloader on the board, you will find a good instructions here:
              https://www.az-delivery.de/blogs/azdelivery-blog-fur-arduino-und-raspberry-pi/az-delivery-nano-v3-bootloader-flashen
              For me, the capacitor of 10μF was needed between GND and RST so that the flash operation worked.

              Next time we integrate the micro controllers from Espressif into the Arduino IDE.

              Download DE PDF

              Esp-32Esp-8266For arduinoBasics softwareProjects for beginners

              7 comments

              Lars Heising

              Lars Heising

              Ich bin durch die Verwendung von 2 Systemen (Win & Mac) parallel in den Projekten öfters auf der Suche nach einer vernünftigen Lösung gewesen. Mit XCode und dem Arduino Plugin über MS Visual bis hin zu Eclipse und einer gemeinsamen Workspace. Nach langem experimentieren und analysieren habe ich für mich, die Lösung gefunden. Platformübergreifend, unterstützt alle µC sowie die meisten Programmiersprachen und wenn man am Anfang z.B. Arduino als Basis wählt werden alle benötigten Plugins und Bibliothekten automatisch eingerichtet,…. im Programm nicht als direkte Installation, d.h. kein Zumüllen der Festplatte. Verwendbar ebenso mobil wie auch am Festrechner mit freiem GIT Repository … Ich kann es nur empfehlen, man muss sich kurz, wie auch mit den anderen IDE’s beschäftigen danach sehr einfach und intuitiv zu handhaben.

              Das Mac Projekt ist eine tolle Idee, aber wie auch die Windows- Anleitungen eigentlich total überholt.
              Testet es doch einfach mal selbst. Und nein ich habe keine Werbe oder andere Vergünstigungen…. das ist das tolle … es ist sogar kostenfrei unter GNU Lizenz.
              << ATOM >> wer spass an XML hat kann sich sogar seine eigene Oberfläche programmieren … einfach toll Plattformübergreifend und kein “umwandeln” von den binaries von Mac zu Windows, da Source Code entweder Workspace bezogen oder über GIT exchangeable ist.

              VG

              Rudolf Reiber

              Rudolf Reiber

              Guten Tag Johannes,
              schön zu hören, dass die Arduinos/Kompatiblen auch problemlos an M1 Macs laufen.
              Zu Deinem Problem mit den ESPs:
              nächste Woche kommt der zweite Teil meines Beitrags heraus, in dem beschreibe ich die Lösung eines Problems, das auch ich hatte: es gab keine Verbindung zu den ESP Boards.
              Vielleicht hilft Dir das bei Deinem Problem weiter.
              Also: ein wenig Geduld. :-)
              Viele Güße
              Rudolf

              Johannes Zottele

              Johannes Zottele

              Hallo!
              Habe heute die Arduino IDE auf meinem M1 Macbook Air installiert. Alles hat geklappt auf Seiten der IDE, auch die Verbindung mit meinem Arduino Nano war einwandfrei.

              Ich habe das ganze auch mit meinem AZ Delivery NodeMCU Amica Modul versucht, jedoch konnte der Port nicht gefunden werden. Selbst nach der Installation des USB to UART Bridge VCP Drivers (https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers). Hat hier jemand Erfahrung damit gemacht?

              Jörg

              Jörg

              Hallo Marc,
              hatte bisher auch noch nie Probleme mit einem (Intel) MacBook. Wie es mit einem M1 ist, weiß ich leider nicht.
              MacBook Pro 15" 2008 mit High Sierra
              MacBook Pro 15" 2015 mit Catalina
              MacBook Pro 13" 2020 mit Big Sur

              Rudolf Reiber

              Rudolf Reiber

              Lieber Marc,
              mit den M1-Macs habe ich keinerlei Erfahrung, kann also nichts dazu sagen, ob sich diese Rechner genauso verhalten wie die Intel-Macs.
              Rudolf

              Rudolf Reiber

              Rudolf Reiber

              Lieber Marc,
              ich habe es mit diesen Geräten unter Big Sur versucht, und es lief bei allen problemlos:
              1. iMac Retina 5K 27-inch, 2017, Modellnummer A1419
              2. Mac mini 2018, Modellnummer A1993
              3. MacBook Pro 15 Zoll, 2016, Modellnummer A1707
              Die Mikrocontroller waren bei dem Mini und bei dem iMac direkt an eine seiner USB-Buchsen angeschlossen, bei dem MacBook Pro mit einem USB-C Adapter (USB-C auf USB 3.0)
              Bei keinem der Geräte war eine Treiberinstallation nötig.
              Grüße nach Luxemburg.
              Rudolf

              Marc

              Marc

              Hallo, und Danke.
              Nicht oft werden Mac-User berücksichtigt, obschon meiner Meinung nach immer mehr Entwickler auf Apple Geräten entwickeln. Eine Frage hätte ich aber noch. Wurde diese Installation auf einem iMac gemacht oder auf einem Macbook ?.
              Meiner Erfahrung nach gibt es für die Benutzung auf iMac mit BigSur keine Probleme, aber schone auf MacBooks. Ich habe mein MacBook, welches auch mit MacSur nie mit Arduiono und Boards ans Laufen bekommen.
              Mich würde Eure Erfahrung dazu interessieren, denn sobald ein Macbook mit 16 Zoll und ARM Prozessor rauskommt werde ich es kaufen..
              Mit freundlichen Grüssen aus Luxembourg.
              Marc

              Leave a comment

              All comments are moderated before being published

              Recommended blog posts

              1. Install ESP32 now from the board manager
              2. Lüftersteuerung Raspberry Pi
              3. Arduino IDE - Programmieren für Einsteiger - Teil 1
              4. ESP32 - das Multitalent
              5. OTA - Over the Air - ESP programming via WLAN