• Skip to main content
  • Skip to secondary menu
  • Skip to primary sidebar
  • Skip to footer
F-MEYER LOGO

F-MEYER

Find the best information on all topics related to.

  • Home
  • Automotive
  • Finance
  • Home & Garden
  • Lifestyle
  • Tech

You are here: Home / Technology / Using Fedora to Update Firmware on CHIP

Using Fedora to Update Firmware on CHIP

By Fernando Meyer | Monday 2:45 pm

Using Fedora to Update Firmware on CHIP

I have a lot to say about an outdoor wireless project I’m working on which dovetails into a lot of commentary about C.H.I.P. boards but I haven’t written all that yet. This post, instead, will focus on how I finally successfully flashed the firmware on a C.H.I.P. board from my Fedora laptop.

If you do not care to read (or about) all the words and explanations, feel free to skip to the SHORT VERSION

This post still has some great information, but it is largely a hack that I’m not all that proud of.  So I have refined my approach a bit.Update C.H.I.P. from a container

BACKGROUND

I bought two C.H.I.P. boards to tinker with.  Almost immediately, and without real reason, I made them both inoperable by attempting to flash the firmware on them.  Again, I had no reason for this, I hadn’t even gotten to see what they were all about yet.  But, for seemingly months, the boards would just sit there, powered but not booted.  I thought I had tried everything to get them running again and became very frustrated.

This is a good time for a disclosure:  I have no idea what I’m doing.  This is very related to protocols and processes that I am not familiar with and what I’ve done thus far is basically wandered around in the dark and I have finally gotten back to where I began.  To be completely honest, I’m not even sure what I’ve done; maybe I flashed the firmware, maybe I didn’t.  But I can at least get this thing to a “booted” state with an OS on it.  So please feel free to point out any idiotic moves I’ve made and help me learn about the errors in my ways.

To make things complicated, I’m not attacking this in the prescribed method, see, all the (great) documentation is focused on using Ubuntu for flashing/accessing it.  But I don’t use Ubuntu (although I attempted using a live Ubuntu USB, a vagrant VM, a Raspberry Pi with Ubuntu, using the Chrome extension on various computers, etc etc).  So in addition to not knowing what I was doing, I also had to try to translate all the great posts to Fedora.

Unfortunately, through all of the iterations I can’t say for certain if I’ve actually installed more that what I’ve captured below or not.  A lot of my flailing, while it didn’t get me to the point I’m at now, may have included installing something else that I don’t recognize as relevant.

MY ENVIRONMENT

For this post, I am working with the following, please modify for your own use as appropriate:

  • Host system:  Fedora 25 Workstation
  • C.H.I.P. board

I have attempted to recreate these steps on a Fedora 25 VM but I still don’t have 100% confidence.  All that to say, good luck:

01 Install some prerequisites

I’m not really sure what is necessary or what you’ve already got installed, but here are some packages that will be used:

sudo dnf install -y android-tools gcc git screen sunxi-tools uboot-tools

02 Grab hadess repository and make

For a reason that I do not understand, I got this to work by :

git clone https://github.com/hadess/CHIP-tools.git
cd CHIP-tools
make
sudo cp -v spl-image-builder.o /usr/bin/sunxi-nand-image-builder
sudo chmod +x /usr/bin/sunxi-nand-image-builder
cd ~
rm -vfr CHIP-tools

NOTE:  using the prescribed online method was specific to Ubuntu and led me down a rabbit hole of git repositories in order to get/create the sunxi-nand-image-builder binary. So instead, I’m making it from whatever work hadess did…

03 Grab the official CHIP-tools repository

Now use the official repository to do the flashing with all the current versions (the step above allows us to use the magic hadess binary):

git clone https://github.com/NextThingCo/CHIP-tools.git
cd CHIP-tools

04 Prepare C.H.I.P. for flashing

Prior to running the flash command, ensure that your C.H.I.P. board is jumpered for “fel” as noted in the documentation and seen here in a picture hosted by NextThingCo

05 Flash the firmware

I wasn’t sure how important timing was here but, without the C.H.I.P. plugged in, start the command of your choice (I’m going to flash it with a GUI-less OS):

sudo ./chip-update-firmware.sh -s

Use your USB cable to plug in the C.H.I.P. when the script outputs the following message:

waiting for fel...

NOTE:  if you have not run this before or are flashing a new version, there will be a few downloads prior to the waiting for fel message.  It will print that message a few times, so you will panic, but just let it go. Also, use sudo ./chip-update-firmware.sh -h to see all the options.

06 Reboot and log in over USB

It is very likely that this will take a while.  But once the script finishes unplug your USB cable from the C.H.I.P., remove the fel jumper, plug the cable back in to power it on.  If all went as expected, you should now be able to access your C.H.I.P. board over the USB cable using screen:

screen /dev/ttyACM0 115200

NOTE:  the default user/password is chip. You will want to change this.


NEXT STEPS

Now I am back to the starting line.  I will need to:

  • figure out how to configure the wireless through a screen session
  • perhaps bundle the wifi configuration into a custom image for flashing?
  • recompile kernel in order to use C.H.I.P. as a wifi repeater
  • use Ansible to prepare my system for flashing

WHAT I LEARNED

  • I don’t know what I’m doing/I have a lot to learn

REFERENCES:

  • Somewhat outdated article, but very helpful:  C.H.I.P. flashing on Fedora
  • Official repository:  NextThingCo/CHIP-tools
  • I thought this was going to solve it for me, but ran into space limitations on the live USB key:  Flash CHIP using ubuntu on usb
  • Hints on using it as a wifi repeater:  CHIP as wifi repeater

SHORT VERSION:

To avoid tl;dr enjoy this instead:

## 01 Install some prerequisites
sudo dnf install -y android-tools gcc git screen sunxi-tools uboot-tools
## 02 Grab hadess repository and make
git clone https://github.com/hadess/CHIP-tools.git
cd CHIP-tools
make
sudo cp -v spl-image-builder.o /usr/bin/sunxi-nand-image-builder
sudo chmod +x /usr/bin/sunxi-nand-image-builder
cd ~
rm -vfr CHIP-tools
## 03 Grab the official CHIP-tools repository
git clone https://github.com/NextThingCo/CHIP-tools.git
cd CHIP-tools
## 04 Prepare C.H.I.P. for flashing
# insert jumper in fel and gnd terminals
## 05 Flash the firmware
sudo ./chip-update-firmware.sh -s
# wait for "waiting for fel" message and plug in C.H.I.P.
## 06 Reboot and log in over USB
# once the script finishes unplug your USB cable from the C.H.I.P.
# remove the fel jumper
# plug the cable back in to power it on
screen /dev/ttyACM0 115200
# username/password: chip

Filed Under: Technology

Fernando MeyerFernando Meyer is a freelance writer and founder of fMeyer website. His writing strengths include business, financial topics, and lifestyle. He uses his life experiences to inspire his detailed and informative style of writing.

Primary Sidebar

  • Facebook
  • Instagram
  • LinkedIn
  • Pinterest
  • Twitter
  • YouTube

Looking for Something?

More to See

Denon Blu-ray Disc Player

Denon Blu-ray Disc Player: The Mercedes-Benz of Blu-Ray Players

Posted in Monday 2:03 pm

Sony BDP-S580 Overview

Sony BDP-S580 Overview

Posted in Sunday 1:52 pm

Do Stop Smoking Video Games Work?

Do Stop Smoking Video Games Work?

Posted in Saturday 12:56 pm

Why and How Gamification Works

Why and How Gamification Works

Posted in Friday 12:43 pm

My Favorite Discontinued Foods

My Favorite Discontinued Foods

Posted in Tuesday 1:02 pm

My Top Picks of Campgrounds in the DFW Area

My Top Picks of Campgrounds in the DFW Area

Posted in Wednesday 12:52 pm

5 Things to Check Before Buying a Used RV

5 Things to Check Before Buying a Used RV

Posted in Sunday 11:51 am

Footer

Disclaimer

This site is for informational and entertainment purposes only, and the content herein should not be mistaken for professional financial advice. It is highly recommended that you seek advice from a professional for serious financial matters. This site and its author may be compensated for expressing personal opinions regarding featured products and services.

Pages

  • About
  • Contact Us
  • Privacy Policy
  • Terms & Conditions

E-mail Newsletter

Copyright © 2023