# Flashing problem on Ubuntu (SOLVED)

**URL:** <https://community.keyboard.io/t/flashing-problem-on-ubuntu-solved/628>\
**Category:** Help and Getting Started\
**Created:** [October 31, 2017, 11:27am UTC](https://community.keyboard.io/t/flashing-problem-on-ubuntu-solved/628 "2017-10-31T11:27:21Z")\
**Posts on this page:** 1\
**Showing post:** 13

<div class="post-metadata">

**Author:** ![jesse](https://yyz1.discourse-cdn.com/flex031/user_avatar/community.keyboard.io/jesse/32/361_2.png) [@jesse](https://community.keyboard.io/u/jesse)\
**Post date:** [November 1, 2017, 11:53pm UTC](https://community.keyboard.io/t/flashing-problem-on-ubuntu-solved/628/13 "2017-11-01T23:53:45Z")

</div>

> [@richard.east](#):
>
> The only thing that works on my Keyboardio is the Prog key. No other keys register. I’m out of ideas. Any suggestions that I can try?

@richard.east It _sounds_ like what happened was that the sketch you flashed onto the keyboard was, in some way, buggy and is crashing once you get out of the bootloader.

The fact that holding down `Prog` gets you into the bootloader is a very good sign.

If you’re comfortable at the command line, I think the next thing to try is to try to get you back to the shipping firmware.

Once that’s done, and you have a reliable way to do it again, it’ll make experimentation much, much easier.

This procedure is a little bit ‘off the cuff’, as I’m out and don’t have hardware in front of me. I may mess up the exact commandline invocation, but nothing we do will _hurt_ your keyboard. (It’ll just embarrass me for getting it wrong.)

I’m assuming you’re doing this on your linux box and that you have another (working) keyboard handy.

You’ll either need to have added yourself to the ‘dialout’ group to access the serial ports and then logged out and back in or execute the ‘avrdude’ command as root.

First, grab a copy of [https://raw.githubusercontent.com/keyboardio/Model01-Firmware-Builds/master/v1.13-MP1-BUILD/atmega32u4\_firmware.hex](https://raw.githubusercontent.com/keyboardio/Model01-Firmware-Builds/master/v1.13-MP1-BUILD/atmega32u4_firmware.hex)

That’s the regular firmware shipped on your keyboard.

Then, starting with your keyboard unplugged, type the command `ls /dev/ttyACM*`

If there are entries there, it means you’ve got something else acting as a serial port that may throw off some of our autodetection logic. If you do, stop there and tell me that. If you don’t, continue on to the next step.

While holding down `Prog`, plug in your Model 01. `Prog` should light up red.  
type `ls -al /dev/ttyACM*`

You should see a single entry. That’s the serial port for the Model 01’s bootloader.

After about 8 seconds, the keyboard will give up waiting, try to run your program and (presumably) crash.

The next thing to do is to use the `avrdude` commandline tool to flash an updated firmware onto your keyboard.

The command, if I have it right is:

`avrdude -patmega32u4 -cavr109 -D -P /dev/ttyACM0 -b57600 -Uflash:w:atmega32u4_firmware.hex:i`

If you got a different port number in response to your `ls`, you’ll want to change `ttyACM0` to that.

Before you execute this command, unplug your Model 01, and reconnect it, holding in the Prog key. When the Prog key turns red, run the command. You should see a bunch of debugging output, maybe a text progress bar and then the “LED” key should glow blue.

If that _doesn’t work_, paste the results of running avrdude in here and we’ll keep going from there.

---

_[View the full topic](https://community.keyboard.io/t/flashing-problem-on-ubuntu-solved/628)._
