BU-303 GPS Receiver

(Found on a Korean electronics dealer's website, edited to fix the English and remove promotional crap.)

Features:
1. | "SiRF Star II/LP" high performance and low power consumption chipset.
2. | All-in-view 12-channel parallel processing.
3. | Built-in active antenna.
4. | High sensitivity to satellite signal.
5. | Cold start under 45 seconds, average.
6. | Superior urban canyon performance.
7. | FoliageLock for weak signal tracking.
8. | Build-in SuperCap to reserve system data for rapid satellite acquisition.
9. | Supported NMEA 0183 command: GGA, GSA, GSV, RMC, GLL, VTG
10. | Magnetic base for mounting on a car.
11. | LED indicator for GPS fix or not fix. LED OFF: Receiver is off LED ON : No fix, searching LED Flashing: Position Fixed
12. | Non-slip on the bottom
13. | USB interface connection port

Specifications:
Interface | USB
Output Messages | NMEA0183 V2.2 protocol, and supports commands: GGA, GSA, GSV, RMC, GLL, VTG
Datum | WGS84
Hot Start | 8 sec.average
Warm Start | 38 sec.average
Cold Start | 48 sec.average
Altitude Limit | 18,000m(60,000 feet)Max.
Re-acquisition | 100ms
Velocity Limit | 515 meters/sec(1000knots)Max
Jerk Limit | 20 m/sec**3
Horizontal Accuracy | 15m 2d RMS without SA 10m 2d RMS WAAS enabled 1-5m DGPS corrected .
Vertical Accuracy | 40m 95%
Velocity Accuracy | 0.1m/sec 95%
Time Accuracy | 1us synchronized to GPS time
Dimension | 59 mm*47mm*21mm
Power Consumption | 90 mA(include Antenna)
Storage Temperature | -40C ~ 85C
Operation Temperature | -40C - 80C
Humidity | Up to 95% non - Condensing

And this is from the spec sheet for the RoyalTek Sapphire, another SiRF-II-based GPS:

    Altitude 18000 meters (60000 feet) max.
    Velocity 514 meters / second max.
    Jerk 20 meters / second, max.
    Acceleration 4 G, max.

And now ESR tells a hardware-repair war story:

Older versions of the BU-303 (before mid-September 2004) had a design flaw. The device has an internal SuperCap, probably used to drive static RAM holding fix information when the unit is unplugged or powered down. The only thing holding the battery on the PCB was the solder on its leads.

Mechanical vibration and shock (from events like allowing the GPS to fall on the floor) could stress and eventually break the solder bond. If you start hearing a rattling noise from inside the BU-303 case, this has probably happened. The least-bad effect this can have is that the unit will start taking longer to acquire a first fix, because every time you plug it in will effectively be a cold start. If the loose SuperCap's contacts land in the right places, they can destroy or subtly derange the unit. At worst, this actually presented an explosion hazard.

After the battery has been loose for a while, the USB transciever in the device may go catatonic. You will know this has happened if the indicator LED still lights when the BU-303 is plugged in but the USB system on your laptop no longer sees the device. Check this by running lsusb(1); you should see a line that looks like this:

    Bus XXX: Device YYY: ID 067b:2302 Prolific Technology Inc. PL2303 Serial Port

If you don't see this line, do not despair — it is actually possible to repair the unit. Here is how:

1. Collect the right tools. You will need one (1) Philips-blade jewelers' screwdriver, one (1) tube of epoxy superglue, and one (1) clean well-lighted suface on which tiny parts won't disappear. If your fingers are clumsy, get a pair of tweezers or a really small pair of needlenose pliers.
2. There's a rubber nonskid pad on the bottom of the BU-303. Peel back the edge closest to where the USB cable emerges from the case (it isn't necessary to remove the whole thing). You'll see two Philips screws. Remove and save them.
3. Carefully pry the case apart along the seam near the cable hole. Inside, you'll see a single small PCB (printed-circuit board). Watch for two small parts that may be loose inside the case. One is the battery. The other is a transparent plastic light-diffuser plug that sits in the hole over the LED. You want to not lose either of these! There is nothing really holding the diffuser in the LED hole but the presence of the PCB. I dropped mine and it was only rescued from oblivion by my sharp-eyed wife.
4. Look for a place near the edge of the PCB that has a white circle stenciled on it. That is where the loose battery making the rattling noise should be secured. You'll notice that there are two parallel pads on the PCB, like trenches a fraction of a millimeter deep, pointing parallel to the board-edge towards the middle of one side, that match two metal fingers on the loose battery.
5. Place the battery within the white circle so that its figers sit on the pads. There will be only one way it fits. Once you know how to put it in that position with your fingers or a pair of tweezers, get out a tube of epoxy superglue. Put some on the metal rectangle on the bottom face of the battery and put the battery into position. Hold it there long enough for the glue to set.
6. Unplug the USB cable from the connector on the PCB and plug it back in. This step is voodoo; it's what actually seemed to rouse the USB transciever from catatonia, though I don't know how or why.
7. Reassemble the case around the PCB. You'll know the right way for the PCB in fit in it because it puts the LED on the PCB edge right underneath its hole. Be careful not to drop the transparent plastic diffuser! If you still have the glue handy, glue it in too, just in case.

If you are lucky, your BU-303 now works again. But you need to be luckier than me; I got my USB subsystem to see it again, but it still doesn't send bits.