Difference between revisions of "MacBuild Laptop Build"

From FreekiWiki
Jump to navigation Jump to search
 
(20 intermediate revisions by 3 users not shown)
Line 4: Line 4:
 
# Harvesting
 
# Harvesting
 
# Evaluation
 
# Evaluation
# QC
 
 
# Build
 
# Build
  
Line 13: Line 12:
  
 
When there is no need for additional parts, only the HD, RAM, and AirPort card should be removed, and all screws and adapters removed from the HD should be taped to the inside of the HD cavity in the laptop.
 
When there is no need for additional parts, only the HD, RAM, and AirPort card should be removed, and all screws and adapters removed from the HD should be taped to the inside of the HD cavity in the laptop.
 
When there is a need for additional parts, this harvesting process should be followed:
 
 
<graphviz>
 
digraph harvest {
 
 
  node [fontname="Helvetica", fontsize="11"]
 
  edge [fontname="Helvetica"]
 
 
  parts [label="Does it have a PARTS label?"]
 
  incoming [label="Put it in Apple\n laptop incoming" shape=box style=bold]
 
  nogood [label="Is the NO GOOD checkbox checked?"]
 
  harvest [label="Harvest all parts checked\n on the PARTS label" shape=box]
 
  harvestdead [label="Harvest the HD,\n optical drive, and keyboard" shape=box]
 
  crackeddis [label="Is the display visibly\n cracked or damaged?"]
 
  harvestdis [label="Harvest the display assembly" shape=box]
 
  uedsticker [label="Does it (or did it) have an 'Uncovered\n Electronic Device' sticker on it?"]
 
  ced [label="Place the remainder in the\n Oregon eCycles bin\n under the workbench" shape=box style=bold]
 
  nonced [label="Remove all batteries, and\n place the remainder in the\n 'Uncovered Electronic Device' bin\n under the workbench" shape=box style=bold]
 
 
  parts -> nogood [label="Yes"]
 
  parts -> incoming [label="No"]
 
  nogood -> harvestdead [label="Yes"]
 
  nogood -> harvest [label="No"]
 
  harvestdead -> crackeddis
 
  crackeddis -> harvestdis [label="No"]
 
  crackeddis -> uedsticker [label="Yes"]
 
  harvest -> uedsticker
 
  harvestdis -> uedsticker
 
  uedsticker -> ced [label="No"]
 
  uedsticker -> nonced [label="Yes"]
 
 
}
 
</graphviz>
 
  
 
===Evaluation===
 
===Evaluation===
 
The Evaluation process involves sorting through the incoming stack of Apple laptops and determining whether or not they should be built or have parts pulled from them.  The [[MacBuild_Laptop_Eval|Evaluation flowchart]] documents the procedure.
 
The Evaluation process involves sorting through the incoming stack of Apple laptops and determining whether or not they should be built or have parts pulled from them.  The [[MacBuild_Laptop_Eval|Evaluation flowchart]] documents the procedure.
===QC===
+
 
 
===Build===
 
===Build===
 
  
 
==What we build==
 
==What we build==
We presently work on translucent white iBook G3s and better, PowerBook G4s and better, and any newer models that come in. The specs we build the most common models to are as follows:
+
We only build out Intel systems. All PPC systems are subject to the as-is process.
===Specs===
 
====iBook====
 
{{IBook Specs}}
 
====PowerBook G4====
 
{{Powerbook Specs}}
 
  
 
==What we don't build==
 
==What we don't build==
 
We don't build anything below the specs listed above.
 
We don't build anything below the specs listed above.
 +
 +
==As-Is Procedure==
 +
Before running a system through the as-is process, look at [http://wiki.freegeek.org/index.php?title=MacBuild_Laptop_Build&action=submit#What_we_don.27t_build what we don't build] to make sure it should be tested through the as-is process.  If you are uncertain, please ask an instructor.
 +
 +
# Fill all RAM slots with RAM
 +
# Boot the system into OS X:
 +
#* Connect the OS X 10.4 FireWire HDD to the system
 +
#* Make sure the FireWire HDD is turned on (there's a power switch on the back of the drive)
 +
#* Hold the ''Option'' key on the keyboard while system starts up to enter the Startup Manager
 +
#* Select the FireWire drive from the Startup Manager to boot into OS X 10.4
 +
# When at the desktop, insert a CD into the optical drive and check if it mounts on the desktop
 +
# Click on the apple icon in the upper-left corner of the screen
 +
# Select the '''About this Mac''' option from the menu
 +
# Click the '''More info''' button to launch the System Profiler
 +
# Check the information for ATA and Memory in System Profiler to ensure that the system can see all devices on IDE channels and each memory module in each memory slot
 +
#* If it fails to see the HD or reports the amount of memory incorrectly, the system should be recycled
 +
# Eject the CD
 +
# Power the system down and remove components
 +
#* Leave only 256 MB of RAM in the system
 +
# Fill out the appropriate information on an As-Is sticker and attach it to the system
 +
# For the HDD:
 +
#* Run it through our [[Hard_drive_wiping_checklist | HDD wiping procedure]] before continuing the as-is process
 +
#** If the HDD wiping procedure tells us the system has a bad HDD, let an instructor know so we can either replace the HDD during a less-busy day or use it as a training tool for newer volunteers
 +
#** If the laptop has a bad HDD, the HDD '''MUST''' be removed before it leaves the area
 +
# Take it to the store
 +
 +
==Wiping HDs in laptops==
 +
If you've just received a Mac laptop from TARDIS and need to wipe its drive without opening the laptop up, refer to the [[Hard drive wiping checklist]] for wiping instructions.
  
 
==Tips==
 
==Tips==
Line 71: Line 58:
  
 
==Laptop Build Checklist==
 
==Laptop Build Checklist==
{| fontname="Helvetica" fontsize="12" border="1"
+
Please refer to the [[MacBuild Laptop Checklist]] for build instructions.
|-
 
|width="40%" align="center"|Steps
 
|width="53%" align="center"|Notes/Detailed Instructions
 
|width="7%"  align="center"|Done
 
|-
 
| Install/verify RAM ||
 
Make sure the system has at least 512 MB of RAM.  Keep in mind that some systems may have some RAM directly on the logic board.
 
||
 
|-
 
| Install wireless card (if not present already)||
 
Ask the instructor
 
||
 
|-
 
| Attach network cable and power cord ||
 
||
 
|-
 
| Clear the PRAM ||
 
While starting up, hold the '''Option+Apple+p+r''' keys.  Continue holding the keys until the system chimes three times.  Release the keys after the third chime is heard.
 
||
 
|-
 
| Set the system clock in Open Firmware ||
 
While starting up, hold the '''Option+Apple+o+f''' keys.  Release the keys when the Open Firmware prompt comes up.  Run the following command:
 
decimal dev rtc [sec min hour day month year] set-time
 
All values aside from the year should be two-digit numbers in 24-hour format.  The year should be a four-digit number.  Additionally, the clock needs to be set to UTC, so remember to add 7 hours to the current time if on regular time or 8 hours during Daylight Saving Time.  For example, to set the clock to 1:58 PM on September 18th, 2009, the command would be
 
decimal dev rtc 00 58 20 18 09 2009 set-time:
 
 
 
||
 
|-
 
| Reset the NVRAM ||
 
While starting up, hold the '''Option+Apple+o+f''' keys.  Release the keys when the Open Firmware prompt comes up.  Run the following commands in the specified order:
 
reset-nvram
 
set-defaults
 
reset-all
 
 
 
The system will reboot after the '''reset-all''' command is entered.
 
||
 
|-
 
| Install Ubuntu ||
 
Please note that any values not explicitly defined here (HTTP proxies and such) should be left blank.
 
# Make sure network cable is attached
 
# Insert Ubuntu CD
 
#* Use 8.04 for iMac G5s
 
#* Use 9.04 for all other systems
 
# Start up the system while holding the '''C''' key on the keyboard
 
# At '''''boot:''''' prompt, press Enter; eventually the install screen will appear
 
# Select '''English''' as the language for the installation and '''United States''' as the country
 
# Enter '''No''' for keyboard detection, and select '''USA''' for all keyboard language options
 
# If prompted for which network device to use, select the wired network
 
# When prompted for a hostname, delete the current entry and enter '''macbox''' in its place
 
# Select '''Pacific''' as the time zone
 
# When prompted for HD partitioning, select the '''Guided - use entire disk''' option, and confirm the HD the changes will be made to (there should only be one option available unless there are multiple HDs in the system)
 
# When asked about writing the changes to disk, select '''Yes'''
 
#* At this point, the base system will begin installing, so prepare to wait for a few minutes
 
# When prompted for the user's full name, enter '''oem'''
 
# When prompted for a username for the account, enter '''oem'''
 
# When prompted for a password, enter '''freegeek'''.  You will be asked to verify the password after entering it.  Enter '''freegeek''' again.  If the passwords don't match, it will prompt you for a password again
 
# If asked to provide a HTTP proxy, leave it blank and press Enter
 
# If asked to download additional language support, select '''Yes'''
 
# If asked to encrypt the user's home directory, select '''No'''
 
# When asked if the system clock is set to UTC, select '''Yes'''
 
# When installation is complete, select the '''Continue''' option to reboot the system
 
||
 
|-
 
| Start up Ubuntu ||
 
* Let the system use its default options in the bootloaders during the startup process
 
* If the system has problems starting up, refer to [http://wiki.freegeek.org/index.php/MacBuild_Desktop_Build#Special_Configurations the Special Configurations list]
 
||
 
|-
 
| Check for updates ||
 
There are a few ways to do this:
 
* From the desktop, go to System -> Administration -> Update Manager
 
* From the command line, run:
 
sudo apt-get update
 
sudo apt-get upgrade
 
Install all updates if any are found
 
||
 
|-
 
| Set up the environment and install extra apps ||
 
* Add the Terminal to the panel so it can be launched quickly
 
* If the machine has a CD-RW or DVD-RW drive, open up a terminal and run:
 
sudo apt-get install k3b
 
* If the machine has a wireless card, open up a terminal and run:
 
sudo apt-get install b43-fwcutter
 
||
 
|-
 
| Test USB/FireWire ports ||
 
USB:
 
* Plug in a USB mouse
 
* See that the cursor moves and can interact with things
 
* Repeat with all USB ports
 
FireWire:
 
* Plug in an external FireWire drive
 
* Insert a data CD in FireWire drive
 
* See if it mounts on the desktop
 
* Repeat with all FireWire ports
 
If all ports of one of these types don't work, the machine should be recycled
 
||
 
|-
 
| Check if wireless works ||
 
Use Network Manager to see if you can connect to Free Geek's wireless network.  If you can, the wireless card works.  Remember to write the type of wireless card (e.g. AirPort, AirPort Extreme) on the printed report at the end of the build.
 
||
 
|-
 
| Test CD data and sound ||
 
# Insert, play, and eject a music CD
 
# Insert data CD, inspect directory contents
 
# If machine has a DVD drive, insert a data DVD, inspect directory contents
 
# If machine has a CD-RW or DVD-RW, use '''k3b''' to erase a CD-RW disk, and create/burn a new data project.
 
||
 
|-
 
| Generate "printme" report for system ||
 
# Make sure you are on the local wired network
 
# Configure system so it can use network printers
 
## From the desktop, go to System -> Administration -> Printing
 
## In the Printer Configuration window, go to Server -> Settings...
 
## Check the "Show printers shared by other systems" checkbox, and click the '''OK''' button
 
# In a terminal, generate a lshw XML file for the printme process
 
#* '''''lshw -xml > printme.xml'''''
 
# Open a web browser and go to '''''http://data/spec_sheets/new'''''
 
# Fill out the form with the following:
 
#* Enter your volunteer ID in the Volunteer ID field
 
#* Job should be left as Quality Checker
 
#* System ID should be left blank
 
#* Type should be changed to Laptop
 
#* Keeper label type should be set to No Sticker
 
#* Notes should include the following information:
 
#** System type, processor speed, # of processors
 
#** Amount of system memory
 
#** Type of optical drive
 
#** Any components that show up in lshw (modems, certain wireless cards) that aren't supported by Ubuntu should be listed
 
#** Any special issues the machine has
 
# Upload the '''printme.xml''' file, and print out the report
 
# Remember to add the wireless card type
 
||
 
|-
 
| Test battery life ||
 
To start the battery test:
 
# Make sure battery is fully charged
 
# Open a web browser and go to '''''http://llama.freegeek.org/~serge/batterytest.sh'''''
 
# Save file to disk
 
# Insert an audio CD into optical drive
 
# Launch audio player, play disc, and set on repeat
 
# In a terminal, navigate to the directory you saved batterytest.sh to and run:
 
#* '''''sh batterytest.sh'''''
 
# Disconnect power supply
 
# Leave the system running until it powers off
 
To check the results of the battery test
 
# In a terminal, navigate to the directory you saved batterytest.sh to and run:
 
#* '''''sh batterytest.sh'''''
 
# Record the results on the "printme" report
 
||
 
|-
 
| Clean outside cover ||
 
Clean case monitor face, connector panel, keyboard, and trackpad as well
 
||
 
|-
 
| Attach "printme" report to system ||
 
||
 
|-
 
| Bundle system with power supply || ||
 
|}
 
 
 
==Special Configurations==
 
{| fontname="Helvetica" fontsize="12" border="1"
 
|-
 
|width="40%" align="center"|Steps
 
|width="53%" align="center"|Notes/Detailed Instructions
 
|width="7%"  align="center"|Done
 
|-
 
| Starting up Ubuntu on a difficult system ||
 
There are startup options set by default in the bootloader, so startup will usually not require any input.  However, the following are the default options that you can enter yourself if you don't want to wait for the bootloader to do it automatically.
 
# For the first-stage Ubuntu bootstrap, enter '''l''' for Linux
 
# For the yaboot boot prompt, enter '''Linux''' for the Ubuntu install that was just completed (it's case-sensitive, so make sure the L in '''Linux''' is capitalized)
 
 
 
Some systems will not boot properly due to video issues.  These systems will usually hang with a white or black screen after the yaboot boot prompt.  For these systems, providing it with '''Linux video=ofonly''' at the yaboot boot prompt should fix the problem.  If '''Linux video=ofonly''' does not work, try using '''Linux nosplash vga=1''' instead.
 
||
 
|-
 
| If necessary: permanently make the ''video=ofonly'' or ''nosplash vga=1'' addition to yaboot ||
 
If you needed to use the ''video=ofonly'' option to get the system to start up properly, you can permanently make the addition to yaboot.  This is how you do it:
 
# In a terminal, edit the file ''/etc/yaboot.conf'' as root
 
#* ''sudo nano /etc/yaboot.conf
 
# Locate the line that reads ''image=/boot/vmlinux''
 
# Move the cursor to the end of the line that starts with ''append''
 
#* The line, in its unaltered state, should read ''append="quiet splash"''
 
# Make the necessary change:
 
#* For ''video=ofonly'', add ''video=ofonly' to the end of the ''append'' line (make sure to add it within the quotes of the original ''append'' entry
 
#** The line should now read ''append="quiet splash video=ofonly"''
 
#* For ''nosplash vga=1'', delete ''splash'' at the end of the ''append'' line and replace it with "nosplash vga=1"
 
#** The line should now read ''append="quiet nosplash vga=1"''
 
# Save and close the file
 
#* '''Ctrl+o''', then '''Ctrl+x'''
 
# Update the bootloader with the changes to yaboot by running the following in a terminal:
 
#* '''''sudo ybin -v'''''
 
# Restart the system to test the change
 
||
 
|-
 
| If necessary: enable the Ubuntu startup splash screen||
 
Sometimes a system will show a blank screen during startup instead of the normal Ubuntu splash screen.  If this is the case, we can enable the Ubuntu splash screen by doing the following:
 
# Identify the display resolution
 
#* From the desktop, go to System -> Preferences -> Screen Resolution
 
#* The screen resolution should be displayed in this window.  The first number will be the ''xres'' value for the next few steps, and the second number will be the ''yres'' value.
 
# In a terminal, edit the file ''/etc/usplash.conf'' as root
 
#* ''sudo nano /etc/usplash.conf''
 
# Move the cursor down to the first empty line
 
# Example: if the screen resolution is 1024x768:
 
#*Type '''xres=1024''', press Tab, and type '''yres=768'''
 
#* So the line should read:  <code>xres=1024    yres=768</code>
 
#* Remember to change these values if your system's display resolution is different
 
# Save and close the file
 
#* '''Ctrl+o''', then '''Ctrl+x'''
 
# Update the startup files with the changed resolution values by running the following in a terminal:
 
#* '''''sudo update-initramfs -u'''''
 
#* The command takes a couple of of minutes to complete
 
||
 
|}
 
  
[[Category:Macintosh]]
+
[[Category:Macintosh Archive]]

Latest revision as of 13:55, 16 February 2014

Building a laptop in MacBuild is a fairly freeform process. Aside from the Laptop Build Checklist, there is no standard method for resolving or repairing laptops with issues. It is not uncommon to swap optical drives and displays in an effort to turn two broken laptops into one working one. We presently only build up a few different models, so it's easy to learn the basics of working with each type.

Laptop Build steps

The idea behind the steps in the Laptop Build process is to provide volunteers with an easy, worry-free way to acquire the skills they need to successfully build Apple laptops. The step sequence is as follows:

  1. Harvesting
  2. Evaluation
  3. Build

Harvesting

The idea behind harvesting is to get volunteers used to working with Apple laptop hardware by having them disassemble and pull out reusable parts that can be put to use in other Apple laptops. Given the intricate nature of these systems, volunteers can cut their teeth on machines destined for recycling or as-is sale without worrying about damaging machines.

We should only harvest components from laptops when we have a need for individual parts and don't have a backstock, as it's easier to get rid of laptops when they're in one piece.

When there is no need for additional parts, only the HD, RAM, and AirPort card should be removed, and all screws and adapters removed from the HD should be taped to the inside of the HD cavity in the laptop.

Evaluation

The Evaluation process involves sorting through the incoming stack of Apple laptops and determining whether or not they should be built or have parts pulled from them. The Evaluation flowchart documents the procedure.

Build

What we build

We only build out Intel systems. All PPC systems are subject to the as-is process.

What we don't build

We don't build anything below the specs listed above.

As-Is Procedure

Before running a system through the as-is process, look at what we don't build to make sure it should be tested through the as-is process. If you are uncertain, please ask an instructor.

  1. Fill all RAM slots with RAM
  2. Boot the system into OS X:
    • Connect the OS X 10.4 FireWire HDD to the system
    • Make sure the FireWire HDD is turned on (there's a power switch on the back of the drive)
    • Hold the Option key on the keyboard while system starts up to enter the Startup Manager
    • Select the FireWire drive from the Startup Manager to boot into OS X 10.4
  3. When at the desktop, insert a CD into the optical drive and check if it mounts on the desktop
  4. Click on the apple icon in the upper-left corner of the screen
  5. Select the About this Mac option from the menu
  6. Click the More info button to launch the System Profiler
  7. Check the information for ATA and Memory in System Profiler to ensure that the system can see all devices on IDE channels and each memory module in each memory slot
    • If it fails to see the HD or reports the amount of memory incorrectly, the system should be recycled
  8. Eject the CD
  9. Power the system down and remove components
    • Leave only 256 MB of RAM in the system
  10. Fill out the appropriate information on an As-Is sticker and attach it to the system
  11. For the HDD:
    • Run it through our HDD wiping procedure before continuing the as-is process
      • If the HDD wiping procedure tells us the system has a bad HDD, let an instructor know so we can either replace the HDD during a less-busy day or use it as a training tool for newer volunteers
      • If the laptop has a bad HDD, the HDD MUST be removed before it leaves the area
  12. Take it to the store

Wiping HDs in laptops

If you've just received a Mac laptop from TARDIS and need to wipe its drive without opening the laptop up, refer to the Hard drive wiping checklist for wiping instructions.

Tips

  • Use a guide - some procedures for removing/exchanging parts are very complicated, so it's always good to have documentation. iFixit's guides for laptops are particularly good, as they provide not only fairly easy steps to follow but also make note of the different types of screws and parts removed in each step, which makes it easy to keep track of.
  • Keep track of your screws/part - it is not uncommon to end up removing 50+ screws from a system when swapping a HD in a laptop. You can use either an ice cube tray or a screw guide from iFixit (it should be linked in PDF form to whatever guide you reference) to keep track of what came from where.
  • Allot sufficient time for a project - working on Apple laptops can be very time-consuming due to the level of deconstruction one has to go through to swap parts. For example, swapping a hard drive in an iBook can easily take over an hour and a half if you've never done it before (or if you don't do it on a regular basis). If you decide to start a project, make sure you have enough time to at least put the system back together before you leave or develop a good system for keeping track of your progress.

Laptop Build Checklist

Please refer to the MacBuild Laptop Checklist for build instructions.