Unbrick an Acer C720 and install Debian Wheezy

I bricked my Acer C720-2420 playing with bios update. Opps.  Here’s how I 
unbricked it.  I used John Lewis’ excellent website <https://johnlewis.ie/> 
(thanks John, you are the man!) as a general outline.  These instructions 
outline the concept: 
http://johnlewis.ie/unbricking-a-samsung-series-5-550-chromebook/ 

FYI only, info on the bios chip

http://www.nexflash.com/NR/rdonlyres/591A37FF-007C-4E99-956C-F7EE4A6D9A8F/0/W25Q64BV.pdf
 
Buy this equipment:

Bus Pirate v3.3: http://dangerousprototypes.com/docs/Bus_Pirate from this 
site:

http://www.seeedstudio.com/depot/bus-pirate-v3-assembled-p-609.html?cPath=61_68

CPT-063 Test Clip SOIC8 Pomona 5250

http://www.amazon.com/gp/product/B00HHH65T4/ref=oh_aui_detailpage_o09_s00?ie=UTF8&psc=1

Female to Female Solderless Flexible Breadboard Jumper Cable Wire

http://www.amazon.com/Female-Solderless-Flexible-Breadboard-Jumper/dp/B00D7SCMZ8/ref=pd_sim_e_1?ie=UTF8&refRID=126G793PR1R05W7T74DD

Un-brick

DISCONNECT THE CHROMEBOOK BATTERY and the AC POWER SUPPLY!

Connect the female ends of the jumper cables to the Bus Pirate (BP) and the 
SOIC8 clip such that the SOIC8 connects to the bios chip ports (ports?) as 
shown in the text below.  I used the Bus Pirate (BP) pin-out on this 
website: 
http://dangerousprototypes.com/forum/viewtopic.php?f=40&t=5187&view=unread#p50375
 

I reviewed the manual for both the W25Q64FV and the W25Q32B to confirm that 
both chips have the same pin-out.  

On BP .......... On SOIC Clip => W25Q32B chip

CS     <=======> CS (1)

GND    <=======> GND (4)

CLK    <=======> CLK  (6)

3V3    <=======> VCC (8)

MOSI   <=======> DI (IO0)

MISO   <=======> DO (IO1)

Keep in mind that 2 of the wires connected to the bios chip won’t be used 
and 4 of the pins on the BP won’t be used.  Triple-check the pinouts or you 
may permanently fry the chip.  When you are done it should look like this:



To run the Bus Pirate (BP) I used a MacBook Air with Debian 3.6 installed 
on Parallels.  I used Debian only in command line mode (no GUI) and 
followed the instructions below to set up the BP on the Mac: 

http://hardcoreforensics.com/research-hardware/tool-setup/buspirate-v3/

I did not use ZTerm but I did use the instructions to install FTDI drivers 
for my Mac, after which I connected to the BP using ‘screen’ as discussed 
below.

Update BP firmware using instructions posted here (I did not upgrade until 
after I fixed my Chromebook but I hear it goes much faster if you do 
upgrade):  
http://wiki.yobi.be/wiki/Bus_Pirate#7816-3_T.3D0_at_arbitrary_baudrate

If you haven’t yet, connect the USB cable from the Mac to the BP.

If Parallels asks, choose to connect the new device to your Linux virtual 
machine (VM).

In Linux either open a Terminal (black screen with DOS-looking console 
interface) or otherwise get to a bash prompt.  Assuming you logged in as 
‘root’ simply type the commands below.  If you aren’t root then preface 
each set of commands with sudo.

If Linux says you aren’t in the sudoers list then follow this guide (
https://www.digitalocean.com/community/tutorials/how-to-edit-the-sudoers-file-on-ubuntu-and-centos)
 
to fix the problem (FYI, I always use the program nano to edit 
/etc/sudoers/ and have never had a problem.

apt-get install screen

apt-get install flashrom upx

cd /home/<your username>

mkdir core

cd /core

Any folder name will do; I used core just for the heck of it.

wget "https://johnlewis.ie/Chromebook-ROMs/coreboot-peppy-seabios-180714.rom
"

This is the file for an Acer C720 Chromebook.  If you are flashing any 
other system this is not the right file.  You can search on John’s 
excellent site (https://johnlewis.ie/custom-chromebook-firmware/rom-archive/) 
for other bioses built for other Chromebooks.  There are a ton of bios 
downloads available on the web.

Find which port your BP is using to connect to your computer:

cd /sys/class/tty

ls -la | less

look for something with a USB in it, such as ....USB1, etc

connect to BP:

screen /dev/ttyUSB1 115200 8N1

If screen failed to connect and aborted you may have the wrong number next 
to ‘USB’.  Double check the files in the /sys/class/tty folder….or just try 
...ttyUSB0 and see if it works :)

hit the i key and you should see:

Bus Pirate v3b

Firmware v5.10 (r559)  Bootloader v4.4

DEVID:0x0447 REVID:0x3046 (24FJ64GA002 B8)

http://dangerousprototypes.com

If so your BP is working.  If not...google for help.

Quit BP with: Ctrl-a \

I did not update the BusPirate firmware but folks indicated that it works 
much faster if you do.

Check that flashrom is install and can communicate with the bios chip:

sudo flashrom -p buspirate_spi:dev=/dev/ttyUSB0

** You must run the flashrom commands as root or with the sudo construct.

If flashrom is not installed: sudo apt-get install flashrom

I ended up with flashrom v0.9.5.2-r1546

Make sure you are in the directory that contains the .rom file you 
downloaded from John’s site, then:

/sys/class/tty# flashrom -V -p buspirate_spi:dev=/dev/ttyUSB1 -w 
coreboot-peppy-seabios-180714.rom

The command assumes that you are using USB1 to connect to the BP and that 
‘coreboot-peppy...’ is the right firmware file.

Wait between 30 minutes and 10 hours and it should work.  I started it and 
went to sleep.  It was done when I woke up the next morning.  Remove the 
SOIC clip and then hit the power button on the laptop.  It should boot and 
stop at “Select boot device:” screen (see below).  Now you can install 
Linux using a USB pen drive installation.



FYI: I found instructions on the web that directed the command “flashrom 
-VVV -p buspirate_spi:dev=/dev/ttyUSB0 -w bios.bin” but that did not work 
for me.

Install Debian Linux

Download the newest version of Debian (
https://www.debian.org/releases/wheezy/debian-installer/)

and create a bootable USB stick using these instructions: 
http://okomestudio.net/biboroku/?p=1986 

These instructions assume you are using a working linux installation (I 
used Debian on Parallels) but they might work on OSX, dunno.

I used debian-7.7.0-amd64-netinst but the newest version (as of 1/29/2015 
is 7.8.0) would be this file:

http://cdimage.debian.org/debian-cd/7.8.0/amd64/iso-cd/debian-7.8.0-amd64-netinst.iso

These commands worked for me.  They help you locate the USB stick 
(/dev/sdb1) and mount it (to the /media directory.  dd copies the 
installation iso file to the USB stick.  The last command unmounts the USB 
stick.

sudo fdisk -l

sudo mkdir /media/USB

sudo mount -t vfat /dev/sdb1 /media/USB -o 
uid=1000,gid=1000,utf8,dmask=027,fmask=137

sudo dd if=debian-7.7.0-amd64-netinst.iso of=/dev/sdb bs=4M; sync

umount /media/USB

Now insert the USB drive into the Chromebook, startup, press the ESC key to 
select the boot menu, select the USB drive, run the installer, and 
hopefully you now have Debian.

FYI, for the install I choose to use the “Guided - use entire” option to 
install Debian on the entire disk.  In hindsight I should have created a 10 
gig partition for the OS so it would be easier to back up.

The screen, trackpad, and kernel will need work.


Fix the screen resolution: 

Once booted change your screen resolutions:

sudo nano /etc/default/grub

then add these entries: 

GRUB_GFXMODE=1024x768x32

GRUB_GFXPAYLOAD_LINUX=keep

Save and close.  Then type update-grub


Fix the trackpad

sudo nano /etc/apt/sources.list

then add these lines: 

deb http://http.debian.net/debian wheezy-backports main

deb-src http://http.debian.net/debian wheezy-backports main

Save and close.  Then type sudo apt-get update to download a list of 
possible upgrades

Type: sudo apt-get install linux-image-3.16.0-0.bpo.4-amd64 -t 
wheezy-backports

Reboot.

Enter the following commands: 

wget 
“https://raw.githubusercontent.com/liangcj/AcerC720CrunchBang/master/c720crunchbangtp_v2”

sudo chmod 0755 c720crunchbangtp_v2

sudo ./c720crunchbangtp_v2

Reboot. Touchpad should be working.


Update the kernel

On your Chromebook go here: https://blog.mdosch.de/ and either 1) click the 
“kernel”  tag (usually in red) to download the kernel (.deb file) or copy 
the link and use wget to download it in terminal.  Either way, get the file.

Example file: 
http://files.mdosch.de/2015-01/linux-image-3.18.4-c720_20150127_amd64.deb

Ex: wget “
http://files.mdosch.de/2015-01/linux-image-3.18.4-c720_20150127_amd64.deb 
<http://files.mdosch.de/2015-01/linux-headers-3.18.3-c720_20150122_amd64.deb>
” 

Using the terminal go to the folder containing the file you just downloaded 
and type this (remember to use the name of the file you just downloaded):

sudo dpkg -i linux-image-3.18.4-c720_20150127_amd64.deb 
<http://files.mdosch.de/2015-01/linux-headers-3.18.3-c720_20150122_amd64.deb>

Restart your Chromebook.  When it boots up you should be presented with a 
list of installed kernels.  Choose the newest one.  I won’t claim that what 
worked for me will definitely work for you, but I hope it does.  Thanks 
again to the tech geniuses who posted the various fixes that I borrowed.

Have fun!

Josh

-- 
-- 
You received this message because you are subscribed to the Linux Users Group.
To post a message, send email to [email protected]
To unsubscribe, send email to [email protected]
For more options, visit our group at 
http://groups.google.com/group/linuxusersgroup
References can be found at: http://goo.gl/anqri
Please remember to abide by our list rules (http://tinyurl.com/LUG-Rules or 
http://cdn.fsdev.net/List-Rules.pdf)

--- 
You received this message because you are subscribed to the Google Groups 
"Linux Users Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to