Illuminating Face ID

Introduction

Apple’s new iPhone X uses Face ID1 instead of a fingerprint sensor. The basic idea, as explained on Wikipedia2, is to take a 3D, infra-red image of your face, and unlock the phone if it matches an internal model.

Tech Insider have a nice video3 showing how the phone projects a pattern of dots onto the subject, but I wondered how things looked in the time-domain.

So, I connected a photo-transistor to my oscilloscope and plotted the results. The circuit is in no sense optimal, rather I just threw together things I had lying around. The sensor, a Vishay TEFT43004 photo-transistor has a light current of about 3mA, which should drop about 2V across 620Ω.

I must emphasize that this whole experiment was very crude: I held the detector close to my face, then pointed the phone at me. Given that we know Face ID projects dots of light, the variations below could easily come from small changes in the relative positions of the sensor and phone.

Results

As you might expect, it’s far from just constant illumination, but I was surprised by how much structure I found. I suppose in part, all this enables some sort of synchronous detection which makes the system resistant to changes in ambient illumination, and prevents two nearby iPhone Xs from interfering with each other.

Basic traces

We begin with full-traces of two unlocking manœuvres.

5

6

You can see there are many pulses of varying width and intensity. Both traces show two very high pulses, one of which is the last pulse in the sequence. I’ve no idea if this is generally true.

Timing

Although the two pulse trains are quite different, the both last about the same time: a shade under 450ms. That sets some sort of scale on how quickly Face ID can unlock the phone.

7

8

Spikes

Although both traces show two large spikes, they are not delayed by the same amount. In the first trace, they are 267ms apart; in the second 325ms.

910

Pulse detail

On the other hand, the pulse widths do seem to be consistent. Short pulses last 3ms; long ones 9ms. The gaps aren’t nice multiples of 3ms though, so perhaps the time quantum is smaller.

There is also intensity variation in the bright pulses.

1112

1314

1516

Conclusions

It’s nice to see that even very simple experiments can give interesting results. The data here show that the Face ID scan takes about 450ms, and that it is modulated with pulses of 3ms and 9ms duration.

It would be interesting to see a video of the scan, taken with a IR camera at about 1000 frames per second. Sadly I don’t have such an animal!