Introduction: Fix an Intel Edison With a Corrupted Linux Image
Recently, while playing around with my new Intel Edison Developement board, I made a mistake while reflashing the board, and ended up with a corrupted Linux image (i.e the Linux OS) on the board. In other words, I had a "bricked" Edison. This problem made it impossible for me to login to my Edison and carry on with my tinkering.
Now many Edison users may bump into this problem, and all may not fund it easy to fix, especially if you have very little knowledge of programming and computers (like me). And the most frustrating thing is that the Edison has a very small user community; so there's not much help on the internet. The help I did get on the Intel forums was in a strange language that took me a week to understand, and still didn't solve the problem.
Therefore I came up with this Instructable to help all ya noobs out there trying to figure out the Intel Edison. Let's get started!
Step 1: Notes...
IMPORTANT: This Guide is for windows users. Mac and linux users can adapt the methods shown, but I myself have no clue of how to do that...
The Intel Edison user community is small. Also, the Edison is a fully-fledged computer. Hence its not even CLOSE to your Arduino. Hence noobs like me have a tough time troubleshooting or just simply getting the Edison to work. The forums hardly use English. I mean, there's a lot of technical language and stuff, so most of it went bonkers over my head. So here are some simple meanings of geeky terms:
- Flashing - This means loading the OS (operating system) to your Edison.
- Image - Nothing to do with pictures. In this context it means the OS.
- Upload (sketches, commands etc.) - No not to YouTube. Uploading means to transfer a file from you computer to your Edison.
Step 2: Identify the Problem...
Not all issues may be because of a corrupted image. Go through the following points to check your board...
- LEDs not lighting up? -This probably means that board is not getting power. Be sure to connect BOTH microUSB cables to the Edison. The small switch on the Edison Breakout board should be towards the MicroUSB plugs. Try using better quality cables, as cheap ones may not be able to supply enough power. Another reason could be that the Edison was turned off by the software for some reason. Press the RESET button on the breakout board and it should fix this.
- Edison not communicating via Serial port? - Firstly, check your cables. You have to connect BOTH cables to your computer. Also, check that you have selected the correct COM port. Connect your Edison with both cables. Open Device Manager. Go to "Ports (COM & LPT)". See the Port associated with "USB Serial Port". This is the port where you'll see the serial output from the Edison.
- Edison stuck in boot loop? - Thins means that either your edison won't show the Login Screen, or the crucial booting processes have "[FAILED]". This was exactly my problem. The only way to fix this is to reflash your Edison. Therefore alll your previous data on the Edison will be wiped clean.
To reflash your Edison, go to the next step...
Step 3: Reflash Your Edison...
Reflashing means loading the Linux OS onto the Edison again. For this follow the following steps:
- Download dfu-util from here.
- Put the dfu-util file in the folder of the Linux image on your computer.
- Go to Control Panel < System < Advanced System Settings < Environment variables. Check the value of "PATH". It should be "C:\Windows\System32". If it isn't, click the edit button and enter the correct name...
- Now go to the folder with the Linux Image. Double click "flashall.bat". You should see a command prompt appear.
- As soon as you open "flashall.bat", connect your Edison with BOTH cables. The flashing process should begin in a few moments.
If successful, you'll see the screen as shown in the 3rd picture. There may be some ERROR, but ignore it. If nothing happens, repeat from step 4 (above) again. The flashing process may take upto 5 minutes, so be patient. After booting twice, you shall be glad to see your login screen again... Yay!