{"id":6417,"date":"2015-12-14T01:11:53","date_gmt":"2015-12-14T00:11:53","guid":{"rendered":"http:\/\/blog.wenzlaff.de\/?p=6417"},"modified":"2021-11-22T17:14:22","modified_gmt":"2021-11-22T16:14:22","slug":"wie-kann-pyserial-und-esptool-auf-einem-mac-os-x-el-capitan-zum-flashen-von-esp8266-installiert-werden","status":"publish","type":"post","link":"http:\/\/blog.wenzlaff.de\/?p=6417","title":{"rendered":"Wie kann PySerial und Esptool auf einem Mac OS X El Capitan zum flashen einer neuen Firmware f\u00fcr den ESP8266 installiert werden?"},"content":{"rendered":"<p>Wie kann das Flashen eines ESP8266 von einem Mac laufen?<\/p>\n<p>Wie <a href=\"https:\/\/learn.adafruit.com\/building-and-running-micropython-on-the-esp8266\/flash-firmware\" target=\"_blank\" rel=\"noopener noreferrer\">hier<\/a> beschrieben brauchen wir <a href=\"http:\/\/Examples of using AT commands\" target=\"_blank\" rel=\"noopener noreferrer\">pyserial<\/a> und esptool. Die werden wie folgt installiert:<\/p>\n<pre class=\"lang:default decode:true \" >\r\n# pyserial\r\n# Verzeichnis erstellen und rein wechseln\r\nmkdir pyserial\r\ncd pyserial\/\r\n# Aktuelles Archive holen von https:\/\/pypi.python.org\/pypi\/pyserial\r\nwget https:\/\/pypi.python.org\/packages\/source\/p\/pyserial\/pyserial-2.7.tar.gz\r\n# auspacken\r\nsudo tar -xzf pyserial-2.7.tar.gz\r\n# in das Verzeichnis wechseln\r\ncd pyserial-2.7\r\n# Installieren\r\nsudo python setup.py install\r\n# in das Verzeichnis wechseln\r\ncd pyserial-2.7\r\n# Testen, mal alle Ports ausgeben\r\npython -m serial.tools.list_ports\r\n# Ergebnis: die Seriellen-Ports des Systems\r\n# ...\r\n# \/dev\/cu.usbserial\r\n# 3 ports found\r\n# Es gibt auch ein kleines Konsolen Terminal Programm, Miniterm, das kann wie folgt aufgerufen werden:\r\npython -m serial.tools.miniterm \/dev\/cu.usbserial -b 115200\r\n# Ausgabe der AT Befehle:\r\n<\/pre>\n<p><a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2015\/12\/Bildschirmfoto-2015-12-13-um-18.35.50.png\" rel=\"attachment wp-att-6424\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2015\/12\/Bildschirmfoto-2015-12-13-um-18.35.50.png\" alt=\"miniterm\" width=\"1205\" height=\"400\" class=\"aligncenter size-full wp-image-6424\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2015\/12\/Bildschirmfoto-2015-12-13-um-18.35.50.png 1205w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2015\/12\/Bildschirmfoto-2015-12-13-um-18.35.50-300x100.png 300w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2015\/12\/Bildschirmfoto-2015-12-13-um-18.35.50-768x255.png 768w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2015\/12\/Bildschirmfoto-2015-12-13-um-18.35.50-1024x340.png 1024w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2015\/12\/Bildschirmfoto-2015-12-13-um-18.35.50-900x299.png 900w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n<pre class=\"lang:default decode:true \" ># esptool\r\n# Verzeichnis erstellen und rein wechseln\r\nmkdir esptool\r\ncd esptool\r\n# Esptool landen\r\ngit clone https:\/\/github.com\/themadinventor\/esptool.git\r\ncd esptool\r\n# Testen, ausgeben der Programm Parameter\r\npython esptool.py -h \r\n<\/pre>\n<p><strong>Flashen einer neuen Firmware<\/strong><\/p>\n<p>Erster Versuch soll mal die MicroPython Firmware von <a href=\"https:\/\/learn.adafruit.com\/building-and-running-micropython-on-the-esp8266\/build-firmware\" target=\"_blank\" rel=\"noopener noreferrer\">hier<\/a> sein.<\/p>\n<p>So nun kann die Firmware geflasht werden. Dazu das <a href=\"https:\/\/s3.amazonaws.com\/adafruit-download\/MicroPython_ESP8266_Firmware_5_12_2015.zip\" target=\"_blank\" rel=\"noopener noreferrer\">Archive<\/a> downloaden und in das Verzeichnis des esptool kopieren. <\/p>\n<p>Vor dem Flashen muss der ESP noch in den Flash Modus geschaltet werden. Dazu den GPIO 0 auf Masse mit einem Pullup von 1KOhm gegen Plus schalten.<\/p>\n<p>Dann das flashen starten:<\/p>\n<pre class=\"lang:default decode:true \" >\r\npython esptool.py -p \/dev\/cu.usbserial write_flash 0x00 firmware-combined.bin\r\nConnecting...\r\nErasing flash...\r\nWrote 318464 bytes at 0x00000000 in 31.0 seconds (82.2 kbit\/s)...\r\n\r\nLeaving...\r\n<\/pre>\n<p>Ok, das Flashen hat geklappt. Nun den Pin GPIO 0 wieder mit einem 10 KOhm an Plus 3,3 Volt legen und starten.<\/p>\n<p>Nun mit einem Terminal Programm verbinden:<\/p>\n<pre class=\"lang:default decode:true \" >python -m serial.tools.miniterm \/dev\/cu.usbserial -b 115200<\/pre>\n<p>und schon haben wir <a href=\"https:\/\/micropython.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">MicroPython<\/a> auf dem ESP. Ein erster Check mit<\/p>\n<pre class=\"lang:default decode:true \" >\r\nprint(\"Hallo Welt, ich bin MicroPython vom ESP8266\")\r\nHallo Welt, ich bin MicroPython vom ESP8266\r\n<\/pre>\n<p>Oder ein Soft-Reset mit den Tasten <strong>Ctrl+D<\/strong> ausf\u00fchren:<\/p>\n<pre class=\"lang:default decode:true \" >PYB: soft reset\r\n&gt;&gt;&gt;\r\nMicro Python v1.4.2-99-g6738c1d on 2015-05-12; ESP module with ESP8266\r\nType \"help()\" for more information.\r\n&gt;&gt;&gt;<\/pre>\n<p>Welche Firmware ist noch gut? Oder welches Python Script ist n\u00fctzlich?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wie kann das Flashen eines ESP8266 von einem Mac laufen? Wie hier beschrieben brauchen wir pyserial und esptool. Die werden wie folgt installiert: # pyserial # Verzeichnis erstellen und rein wechseln mkdir pyserial cd pyserial\/ # Aktuelles Archive holen von https:\/\/pypi.python.org\/pypi\/pyserial wget https:\/\/pypi.python.org\/packages\/source\/p\/pyserial\/pyserial-2.7.tar.gz # auspacken sudo tar -xzf pyserial-2.7.tar.gz # in das Verzeichnis wechseln cd &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/blog.wenzlaff.de\/?p=6417\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eWie kann PySerial und Esptool auf einem Mac OS X El Capitan zum flashen einer neuen Firmware f\u00fcr den ESP8266 installiert werden?\u201c <\/span>weiterlesen<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[220,2305,79],"tags":[2341,2338,474,241,2339,2337,2340],"class_list":["post-6417","post","type-post","status-publish","format-standard","hentry","category-anleitung","category-esp8266","category-programmierung","tag-espflash","tag-esptool","tag-firmware","tag-mac-os-x","tag-micropython","tag-pyserial","tag-python"],"_links":{"self":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts\/6417","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=6417"}],"version-history":[{"count":0,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts\/6417\/revisions"}],"wp:attachment":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=6417"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=6417"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=6417"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}