Car Battery Startup and Shutdown Voltage Curves

Written 2020-09-23

Tags:Battery Voltage 

Test Setup

My car is a 2002 Toyota Highlander with either a 100 or 130 Amp alternator. The car battery was last replaced about four years ago with an auto parts store brand. I used a Mooshimeter for data logging at about roughly 1.5Hz logging rate. Of note, my car currently sometimes has a low idle, I believe due to a sticky idle air control valve.



Around 2 seconds I opened the car door and sat down. Around 7 seconds I turned the key to the on-position. Around 15 seconds I started the car, sagging the voltage significantly, then the alternator began and the voltage quickly approached 14v. I then left for the grocery store.



After unpacking the groceries, I reattached the meter, waited a few seconds, then shut off the engine completely. The voltage dropped quickly initially then recovered a little and relaxed slower. It appears that around one minute after shutdown another load was removed.

Interestingly, the voltage lowered between leaving the house and returning. This could be alternator regulation changing to float-charge, or it could be that my engine was idling lower when I returned then when I left.


This is, of course, a single data-point taken with a low sample-rate. I was simply looking to see if I could pick out the alternator easily. If you are looking to design your own vehicle-powered device, please refer to ISO 7637.

Alcatel Lucent O-010S-P GPON Teardown

Written 2020-08-21

Tags:GPON Fiber 

On a recent DSL-Reports thread I noticed that Alcatel-Lucent O-010S-P was marked as untested. I ordered a used one to take apart and see what was inside. For reference, here it is next to a Nokia G-010S-A(with infamous SFP linkup issue). As we can see, the cases are quite different, in addition to the different fiber connectors/polishes (SC/APC and SC/UPC).

Alcatel-Lucent O-010S-P

First to go are these little tabs on the right(other matching tab on other side of SFP). These can be bent out with a steel probe from the end of the SFP.

Alcatel-Lucent O-010S-P

Next, the outer case/shield just sort of slides off. Note this will likely scratch your labels and jack up your thermal pad if it is old and dry.

Alcatel-Lucent O-010S-P

Removing the heatsink we can see a Broadcom chip under it. Due to stains from the heatsink insert, it's a little hard to read the number, but I believe it to be BCM685131FBG, BCM685161FBG, or BCM685181FBG.

Alcatel-Lucent O-010S-P

From the side, we can see this is indeed a lot of electronics in a small package, with two PCBs soldered together, and what I would guess is RAM in the middle. Also, you need to smoosh the laser module and PCB assembly together a bit like shown before continuing.

Alcatel-Lucent O-010S-P

Apologies for this next shot, but to remove the PCB, you need to continue smooshing the PCB assembly towards the laser until the PCB can be rotated up and off the metal notches like shown.

Alcatel-Lucent O-010S-P

Apologies again for not taking the last photo of the back - the main feature is a Spansion FL256SAIF00 3v, 256mbit/32MByte Quad-SPI Flash.

Nokia G-010S-A Pin 6 Issue

Written 2020-08-15

Tags:GPON Fiber SFP 

As part of setting up a GPON lab at home, I noticed that my Nokia G-010S-A SFP refused to connect to my HP 530SFP+ NIC. Some research showed that a NIC modification was needed.

Nokia G-010S-A PCB

I decided to dig in a little deeper to figure out what was wrong. The SFP specification states that SFP pin 6 should be grounded on the SFP module, so that the NIC can detect and respond to hotplugged modules. According to the link above, the Nokia G-010S-A doesn't do so, but that's not quite the whole story. After disassembling the SFP housing(a tricky and risky venture, bent sheet metal may cause interference on reinsertion to the NIC), I was able to trace out enough of the PCB to figure out what Nokia did. Instead of directly grounding pin 6, they placed a 1k SMT resistor between pin 6 and the SFP ground(also pins 1/9/10). This forms a voltage divider between the NIC and the G-010S-A. I suspect the issue is that different NICs may use different pull-up resistors connected to pin 6, or have different levels of VIL(Voltage Low Level, the minimum voltage required to read as a zero reliably), causing some systems to detect the G-010S-A correctly(if their pull-up is high enough), others to flutter(if their pull-up is middle-sized, or not using Schmitt triggered inputs), and mine to fail to detect entirely(pull-up too low).

Nokia G-010S-A PCB

The fix seems to be simple enough, short out this resistor(there are three white boxes above the 5 pin chip, the middle box has two resistors, the left is a zero-ohm, and the right is our 1k culprit, it's connected to pin 6, starting with pin 1 on the far right).

And it is! After soldering all four pads together, because my iron is far too large to solder over a single SMT resistor, rebooting the machine, setting the speed to 1000mbps with

sudo ethtool -s ens4f1 1000
, configuring my IP address as, I can ping and SSH into it as ONTUSER:SUGAR2A041@, it works!

Nokia G-010S-A Solder Fix Nokia G-010S-A Solder Fix ONTUSER:SUGAR2A041@

Inside a PON Splitter

Written 2020-08-15

Tags:GPON Fiber 

As part of setting up a GPON lab at home, I needed a fiber splitter. Of course, I had to see what was inside.

PON Splitter Exterior

PON Splitter Interior

It seems the true magic is inside the thin aluminum box. I dare not open it further or risk damaging it.

Installing Debian 10 on a PowerMac G5

Written 2020-07-03

Tags:PowerPC Debian Apple Linux 


Press power button

Enter OpenFirmware

As soon as the mac chimes, press and hold ALT+WIN+O+F or Apple+Option+O+F to enter openfirmware.

Insert the Debian disk

Boot the installer bootloader

Type "boot cd:,\install\yaboot"

Select installer kernel and boot the installer

At the boot prompt press enter or type "install" then enter

Run through some Debian installer steps

At this point we should be greeted with the familiar Debian text-based installer. Most of this is bog-standard, but there's a few gotchas later.

Select Partitioning Method

It seems that yaboot is not familiar with the latest ext4 partition features, namely extents and 64-bit block mode. This means we must create a /boot partition. However, none of the guided partitioning options do so. Also, I'm assuming a clean Linux install without dual-booting, as this is complicated enough already. So,

More standard Debian installer steps

Skip the apt mirror setup

We need to switch to a debian-ports mirror. However, there's no keychain for debian-ports loaded into the installer. For now, we're going to skip this and fix it later. But the process for doing so is not exactly clear, so I have documented it below: At this point the installer should continue until it complains that it cannot access the security repositories. Pick continue then wait while the installer selects and installs software.

Configure Popularity-Contest

I recommend participating in the package usage survey, to give feedback to the Debian project about what packages you use, but you are free not to.

Select software package

Just joking, there is only one package included with the CD, 'standard system utilities', which you probably want. Hit continue.

Wait for the CD to eject, take it out, but do not reboot. Time to fix what we broke

At this point, we're going to add a ports mirror, and install SSH in case the GPU fails.

What to do if you have an NVIDIA GPU and the screen turns black on reboot

In short, we need to create this file: /etc/modprobe.d/blacklist-nvidia-nouveau.conf, with the following contents:
blacklist nouveau

With SSH

Without SSH