{"id":527,"date":"2022-11-01T11:42:33","date_gmt":"2022-11-01T16:42:33","guid":{"rendered":"http:\/\/almost.solutions\/?p=527"},"modified":"2022-11-10T11:15:55","modified_gmt":"2022-11-10T17:15:55","slug":"un-bricking-my-ender-3-pro","status":"publish","type":"post","link":"https:\/\/almost.solutions\/?p=527","title":{"rendered":"Un-Bricking My Ender 3 Pro"},"content":{"rendered":"\n<p>I recently had the pleasure of learning how to un-brick my Ender 3 Pro, and the usual helpful guides online were not helping me&#8211;everything I was trying was not working! In the end, I prevailed, and the magic bullet turned out to be (spoiler alert) <strong>COMPLETELY<\/strong> WIPING THE SD CARD.<\/p>\n\n\n\n<p>The first hurdle you have to overcome is to understand which printer you have, so that you can know how the firmware flash\/upgrade process works:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>Printer<\/td><td>Board<\/td><td>Flash Mechanism<\/td><\/tr><tr><td>Ender 3<\/td><td>v1.1.x<\/td><td><a href=\"https:\/\/all3dp.com\/2\/ender-3-pro-firmware-update-marlin\/\" target=\"_blank\" rel=\"noreferrer noopener\">Arduino w\/ bootloader<\/a><\/td><\/tr><tr><td>Ender 3 Pro<\/td><td>v1.1.x<\/td><td><a href=\"https:\/\/all3dp.com\/2\/ender-3-pro-firmware-update-marlin\/\" target=\"_blank\" rel=\"noreferrer noopener\">Arduino w\/ bootloader<\/a><\/td><\/tr><tr><td>Ender 3 Pro<\/td><td>v4.2.x<\/td><td><a href=\"https:\/\/tutorial.cytron.io\/2021\/08\/19\/firmware-update-for-32-bit-controller-board-on-ender-3-pro-or-v2\/\" target=\"_blank\" rel=\"noreferrer noopener\">SD Card Flash<\/a><\/td><\/tr><tr><td>Ender 3 V2<\/td><td>N\/A<\/td><td><a rel=\"noreferrer noopener\" href=\"https:\/\/tutorial.cytron.io\/2021\/08\/19\/firmware-update-for-32-bit-controller-board-on-ender-3-pro-or-v2\/\" target=\"_blank\">SD Card Flash<\/a><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>This guide will only work for printers that have the capability to flash from an SD card.<\/p>\n\n\n\n<p>I have an Ender 3 Pro with a 4.2.2 board, so the SD card flash mechanism <em>should<\/em> work for me. However, after trying multiple times using multiple SD cards and multiple firmware files, I was still getting the dreaded &#8220;<a href=\"https:\/\/www.reddit.com\/r\/FixMyPrint\/comments\/lea7h3\/blue_screen_of_death_on_ender_3_pro_ive_tried_two\/\" target=\"_blank\" rel=\"noreferrer noopener\">blue screen of death<\/a>.&#8221;<\/p>\n\n\n\n<p>In the end, <em>just before the new SD cards I ordered arrived<\/em>, I was able to get my printer to flash. First, though, I had tried all the following, which I found as recommendations floating around the web (and <a href=\"https:\/\/www.reddit.com\/r\/ender3\/\" target=\"_blank\" rel=\"noreferrer noopener\">reddit.com\/r\/ender3<\/a>):<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Deleting all the files from the SD card<\/li>\n\n\n\n<li>Adding a firmware file<\/li>\n\n\n\n<li>Renaming the file to something completely unique<\/li>\n\n\n\n<li>Removing the SD card and rebooting to see if the SD card was <em>causing<\/em> the boot failure<\/li>\n\n\n\n<li>Leaving the printer unplugged for an hour<\/li>\n\n\n\n<li>Leaving the printer on with the SD card for a prolonged time (30m) to see if the firmware flash was taking a long time<\/li>\n\n\n\n<li>Trying a different firmware file<\/li>\n\n\n\n<li>Reformatting the SD card with MacOS Disk Utility (GUI)<\/li>\n\n\n\n<li>Reformatting the SD card with MacOS diskutil (command line)<\/li>\n\n\n\n<li>Deleting the partitions and recreating them with Linux (command line)<\/li>\n<\/ul>\n\n\n\n<p>In the end, what worked was <em>completely zeroing out the SD card, then recreating the partition and reformatting.<\/em> If I were to have the same trouble with an SD card not flashing an Ender 3 today, here is what I would do:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Zero the SD card\n<ul class=\"wp-block-list\">\n<li>MacOS:\n<ul class=\"wp-block-list\">\n<li>Insert the SD card to my computer<\/li>\n\n\n\n<li>Press <em>Cmd+Space<\/em> and enter <em>Terminal<\/em> to open the terminal<\/li>\n\n\n\n<li>Type <code>diskutil list<\/code> to get a list of disks attached<\/li>\n\n\n\n<li>Locate the disk that is the SD card (e.g. <code>disk2<\/code>)<\/li>\n\n\n\n<li>!! For everything following, replace <code>disk2<\/code> with your actual disk that you found in the previous step !!<\/li>\n\n\n\n<li>Unmount the partitions with <code>diskutil unmountdisk disk<\/code>2<\/li>\n\n\n\n<li>Zero the disk with <code>sudo dd if=\/dev\/zero of=\/dev\/rdisk2 conv=sync status=progress bs=16m<\/code> (note that the leading &#8216;r&#8217; on the disk name is not a typo)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Windows\n<ul class=\"wp-block-list\">\n<li>Use Steve Gibson&#8217;s <a rel=\"noreferrer noopener\" href=\"https:\/\/www.grc.com\/initdisk.htm\" target=\"_blank\">InitDisk<\/a><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Linux\n<ul class=\"wp-block-list\">\n<li>Insert the SD card to my computer<\/li>\n\n\n\n<li>Open a terminal\/command line<\/li>\n\n\n\n<li>Run <code>dmesg | tail<\/code> and look for the disk name in the recent history, likely something like <code>\/dev\/sdc<\/code><\/li>\n\n\n\n<li>!! Use the name of the correct disk in place of <code>\/dev\/sdc<\/code> from here on !!<\/li>\n\n\n\n<li><code>sudo dd if=\/dev\/zero of=\/dev\/sdc bs=16M conv=sync status=progress<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Format the SD card and make the partition\n<ul class=\"wp-block-list\">\n<li>MacOS\n<ul class=\"wp-block-list\">\n<li>Format the SD card with <code>sudo diskutil erasedisk FAT32 Ender3 MBR \/dev\/disk2<\/code><\/li>\n\n\n\n<li>&#8220;Ender3&#8221; is the label for the card. You can change that to whatever you want, but keep it simple and short.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Windows\n<ul class=\"wp-block-list\">\n<li>If you used Steve Gibson&#8217;s <a rel=\"noreferrer noopener\" href=\"https:\/\/www.grc.com\/initdisk.htm\" data-type=\"URL\" data-id=\"https:\/\/www.grc.com\/initdisk.htm\" target=\"_blank\">InitDisk<\/a> as stated above, this is already done<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Linux\n<ul class=\"wp-block-list\">\n<li><code>sudo fdisk \/dev\/sdc<\/code>\n<ul class=\"wp-block-list\">\n<li>&#8216;n&#8217; for new partition<\/li>\n\n\n\n<li>&#8216;p&#8217; for primary<\/li>\n\n\n\n<li>&#8216;1&#8217; for first<\/li>\n\n\n\n<li>Take the default for first sector<\/li>\n\n\n\n<li>Take the default for last sector<\/li>\n\n\n\n<li>&#8216;t&#8217; to change the type<\/li>\n\n\n\n<li>&#8216;b&#8217; to set the type to &#8216;0x0b&#8217; W95 FAT32<\/li>\n\n\n\n<li>&#8216;w&#8217; to write the changes<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><code>sudo mkfs.vfat \/dev\/sdc1<\/code>\n<ul class=\"wp-block-list\">\n<li>Note that the &#8216;1&#8217; is not a typo. <code>\/dev\/sdc<\/code> is the disk, <code>\/dev\/sdc<strong>1<\/strong><\/code> is the first partition on the disk<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><code>sudo sync<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Place the firmware file on the SD card\n<ul class=\"wp-block-list\">\n<li>Eject and re-insert, likely your OS will automatically mount the filesystem<\/li>\n\n\n\n<li>You don&#8217;t need much advice on how to do this, except&#8230;<\/li>\n\n\n\n<li>Only place one file on the card.<\/li>\n\n\n\n<li>Give the file a random name. Literally. Like <code>fghdgddyanbnd55.bin<\/code><\/li>\n\n\n\n<li>Change it <strong>every time<\/strong> you attempt an upgrade. The printer remembers (at least) the last file name used, and will not re-attempt an upgrade if the filename is the same.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Upgrade the firmware on the Ender 3\n<ul class=\"wp-block-list\">\n<li>Power off the machine<\/li>\n\n\n\n<li>Insert the SD card<\/li>\n\n\n\n<li>Power on the machine<\/li>\n\n\n\n<li>If you don&#8217;t get a printer status screen or any sort of change in the first <strong>fifteen seconds<\/strong>, it didn&#8217;t work right.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>I recently had the pleasure of learning how to un-brick my Ender 3 Pro, and the usual helpful guides online were not helping me&#8211;everything I was trying was not working! In the end, I prevailed, and the magic bullet turned out to be (spoiler alert) COMPLETELY WIPING THE SD CARD. The first hurdle you have &hellip; <a href=\"https:\/\/almost.solutions\/?p=527\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Un-Bricking My Ender 3 Pro<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-527","post","type-post","status-publish","format-standard","hentry","category-general"],"_links":{"self":[{"href":"https:\/\/almost.solutions\/index.php?rest_route=\/wp\/v2\/posts\/527","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/almost.solutions\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/almost.solutions\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/almost.solutions\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/almost.solutions\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=527"}],"version-history":[{"count":8,"href":"https:\/\/almost.solutions\/index.php?rest_route=\/wp\/v2\/posts\/527\/revisions"}],"predecessor-version":[{"id":537,"href":"https:\/\/almost.solutions\/index.php?rest_route=\/wp\/v2\/posts\/527\/revisions\/537"}],"wp:attachment":[{"href":"https:\/\/almost.solutions\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=527"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/almost.solutions\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=527"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/almost.solutions\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=527"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}