Skip to content

Instantly share code, notes, and snippets.

@skvark
Last active February 9, 2022 08:48
Show Gist options
  • Star 8 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save skvark/794217634c5024da9052 to your computer and use it in GitHub Desktop.
Save skvark/794217634c5024da9052 to your computer and use it in GitHub Desktop.
Flashing Intel Edison using only serial connection and wifi

Do this at your own risk. I take no responsibility for any damage caused to your board.

My Intel Edison was shipped to me with old and buggy version of the Yocto Linux image. I purchased only the console block via Sparkfun (which has only one USB port connected to UART2 (serial connection) of the Edison therefore it's not connected to the actual USB on Edison) so I could not update to a new build the normal way.

I assume you have successfully connected to the Edison via the serial connection and can use the linux console on Edison.

  1. Connect the Edison into a local WiFi network with configure_edison --wifi
  2. Check that you can access to the Edison via SSH or with browser
    • if you can't, vi /etc/systemd/system/basic.target.wants/network-gadget-init.service and change the ip addresses to i.e 192.168.99.15
  3. On Edison, cd /
  4. mkdir update
  5. mkfs.vfat -F32 -I /dev/mmcblk0p9 (mmcblk0p9 is the partition which will contain the new FW files, command formats it to FAT32)
  6. mount -t vfat /dev/mmcblk0p9 /update/ (mount the partition to the /update)
  7. Connect to the Edison i.e. with FileZilla and move the update .zip file (can be found from Intel www site) to the /update folder on Edison
  8. cd /update
  9. mkdir temp
  10. unzip update_file.zip -d temp
  11. rm update_file.zip
  12. mv temp/ota_update.scr . (ota_update.scr must be first in the folder hence this)
  13. mv temp/* .
  14. rm -rf temp
  15. reboot ota

If everything is fine, Edison should now boot and start the upgrade process automatically. It takes couple of minutes and after that you have more robust version of the Yocto image up and running. I recommend running configure_edison --setup after the update process.

@maestr0
Copy link

maestr0 commented Nov 2, 2015

If you want to update to Yocto 2.1
download edison-image-ww25.5-15 on your computer

connect Edison
open a screen session
go to edison-image-ww25.5-15 directory on your computer and run sudo ./flashall.sh (For osx)

run reboot command on Edison
wait for the update to complete. It should take 5 min. If it took less than that, it means something went wrong.
You should be able to see the update progress on the screen terminal. The longest part is this progress bar...

Writing GPT: success!
Saving Environment to MMC...
Writing to redundant MMC(0)... done
Flashing already done...
GADGET DRIVER: usb_dnl_dfu

@thomasck
Copy link

thomasck commented Feb 1, 2017

Is there a way to get this to work with the latest image? During the unzip process it says the edison runs out of space.
I am using the mini breakout board but unfortunately the lower usb port has broken off and I only can connect via serial usb or wifi.

@skvark
Copy link
Author

skvark commented Feb 17, 2017

I tried this last year and had the same issue. I'm not sure if it is possible to use this method anymore.

Copy link

ghost commented Apr 2, 2021

Steps to update Intel Edison on Ubuntu:

  1. Download latest image (iot-devkit-prof-dev-image-edison-20160606.zip)
  2. Unzip it on your host computer
  3. On your host computer run ./flashall.sh. If you get error
dfu-util: Device has DFU interface, but has no DFU functional descriptor
dfu-util: Cannot open DFU device 8087:0a99

then run it with root privileges.
If you get error with dfu-util not found then run sudo apt install dfu-util
4) Plug in your Intel Edison board with both cables.
5) Flash procedure starts.

You don't need to copy image to Intel Edison partition.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment