Disclaimer: This works for me on my portable dev box which is a MBA 2010, running OS X 10.11.6, but it should work for other set-ups too.
Download and install the USB <-> UART drivers from here: https://www.silabs.com/documents/public ... Driver.zip
Download the latest .img Odroid-Go firmware from here: https://github.com/OtherCrashOverride/o ... e/releases (this doesn't need to be mounted or extracted, it's the firmware image to be written directly to the Go).
Install brew from here: https://brew.sh
Then type the following terminal commands:
Code: Select all
mba2010:~ misterbiro$ brew install python3
mba2010:~ misterbiro$ sudo easy_install pip
mba2010:~ misterbiro$ sudo pip install esptool
After ESP Tool is installed connect your Odroid-Go to your computer via the supplied (or a known compatible) USB cable and power it on.
(I have a number of cables that work fine with RPi's, etc, but which will refuse to allow me to flash any ESP* devices.)
Assuming you installed the SI Labs drivers earlier, the ODGo should appear as /dev/cu.SLAB_USBtoUART. If it doesn't appear as this, it may be available as /dev/tty.SLAB_USBtoUART.
You can check with the following command:
Code: Select all
mba2010:~ misterbiro$ ls /dev/cu.*
Before flashing any of the ESP devices, I find it's useful to test if it's detected (correctly):
Code: Select all
mba2010:~ misterbiro$ python3 -m esptool --port /dev/cu.SLAB_USBtoUART flash_id
Once the device is detected, change the directory containing the firmware, for example:esptool.py v2.3.2-dev
Connecting....
Detecting chip type... ESP32
Chip is ESP32D0WDQ6 (revision (unknown 0xe))
Features: WiFi, BT, Dual Core, VRef calibration in efuse
Uploading stub...
Running stub...
Stub running...
Manufacturer: c8
Device: 6018
Detected flash size: 16MB
Hard resetting via RTS pin...
Code: Select all
mba2010:~ misterbiro$ cd ~/Downloads/odroid-go
Code: Select all
mba2010:odroid-go-firmware-bin misterbiro$ python3 -m esptool --chip esp32 --port /dev/cu.SLAB_USBtoUART --baud 921600 write_flash --flash_mode dio --flash_freq 40m --flash_size detect 0 odroid-go-firmware-20180915.img
And that's it... The firmware should be updated to the latest.esptool.py v2.3.1
Connecting........_
Chip is ESP32D0WDQ6 (revision (unknown 0xe))
Features: WiFi, BT, Dual Core, VRef calibration in efuse
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Configuring flash size...
Auto-detected Flash size: 16MB
Compressed 301904 bytes to 146444...
Wrote 301904 bytes (146444 compressed) at 0x00000000 in 3.1 seconds (effective 772.7 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
Once the firmware is updated, when the Go restarts you will be dropped into the firmware update screen and can see that you're now on version 20180915. Choose the Go Play firmware, Doom or whatever you like.
Go-Play firmware
If you want to flash the latest Go-Play firmware:
Downloaded the latest release from here: https://github.com/OtherCrashOverride/go-play/releases
Make sure you have turned off the Odroid-Go after flashing the firmware above (or if you're just updating this, make sure the device is turned off)
Take the SD card out of the Odroid-Go and use either a USB adapter or micro->full size SD card adapter to connect it to your Mac.
Copy the downloaded 'Go-Play.fw' to the /odroid/firmware/ directory in the root of the SD card, and then eject either by dragging to the Trash or pressing the 'eject' icon.
Put the SD card back into the Odroid-Go and hold down the 'B' button.
While continuing to keep 'B' held down, power on the Odroid-Go, and ensure you keep 'B' held until the firmware update screen is displayed. As per @CrashOverride, this will take 5 seconds.
When prompted select the firmware you want to flash (in this case Go Play), press 'Start' and the previously copied Go-Play firmware will be flashed to the Odroid-Go.