Your Phone is Now Helping to Detect Earthquakes

Most people’s personal experience with seismographs begins and ends with simple childhood science experiments. Watching a pendulum make erratic marks on a piece of paper while your classmates banged on the table gave you an idea on how the device worked, and there’s an excellent chance that’s the last time you gave the concept much thought. Even among hackers, whose gear in general tends to be more technologically equipped than the norm, you’re unlikely to find a dedicated seismograph up and running.

But that’s not because the core technology is hard to come by or particularly expensive. In fact, one could say with almost absolute certainty that if you aren’t actively reading these words on a device with a sensitive accelerometer onboard, you have one (or perhaps several) within arm’s reach. Modern smartphones, tablets, and even some laptops, now pack in sensors that could easily be pushed into service as broad strokes seismometers; they just need the software to collect and analyze the data.

Or at least, they did. By the time you read this article, Google will have already started rolling out an update to Android devices which will allow them to use their onboard sensors to detect possible earthquakes. With literally billions of compatible devices in operation all over the planet, this will easily become the largest distributed sensor network of its type ever put into operation. But that doesn’t mean you’re going to be getting a notification on your phone to duck and cover anytime soon.

A Fair Weather Sensor

The accelerometers in our mobile devices were obviously never meant to detect earthquakes, but as any hacker knows, intent is often irrelevant when talking about hardware. The idea was for these sensors to determine the orientation of the gadget, or perhaps perform gesture detection, but they’re certainly capable of detecting subtle vibrations as well. Unfortunately, the use of this sensor for detecting earthquakes is hindered by an outside influence: the device’s owner.

Just imagine how often a smartphone is moved or shaken around on a daily basis. Or consider how the average user would react if their battery life was suddenly being reduced because Google was having their device constantly push accelerometer data upstream.

Google says they will compare data from multiple devices to filter out false positives.

For these reasons, among others, smartphones in active use are no good as seismic sensors. So Google will only poll the sensors in devices which are plugged in and not being used. In many cases, that means the phones won’t be providing any useful data until their owner has gone to sleep.

Even then, there’s always going to be a question of where the phone has been placed. A proper seismometer should be securely anchored to the ground, but you can’t expect smartphone owners to place their devices on the basement floor every night. The phone could end up laying in bed with them, or placed on a table with a fan that vibrates all night.

So even when the phone isn’t being used, the data from these devices will need to be stringently analyzed, filtered, and cross-referenced with other sensors in the area. One shaking phone does not an earthquake make; it will take a complex algorithm to divine any meaning from the tea leaves that are millions of accelerometers chirping away at night.

Resistance is Futile

Obviously, the biggest hurdle in setting up a system like this would be getting everyone to install and configure the application on their phone. It’s the same reason that voluntary COVID-19 contact tracing applications have only been of limited use. If you can’t get more than a small percentage of the population to install an application that can tell them when they might have been exposed to coronavirus, good luck getting them to install one that sniffs out earthquakes.

Which is why Google isn’t bothering to give them a choice. Not directly, at least. On devices running Android 5.0 or above, the new seismic API will be automatically installed as part of the Google Play Services framework rather than as a system update. That means even phones that have hit their End of Life (EOL) date will still pick up the new capability. You might not be getting security updates from your device manufacturer anymore, but you’ll be getting this.

In the hierarchy of invasive snooping a company can do on your mobile device, collecting anonymous seismic readings while it’s charging seems pretty low. Google has indicated that there will be some mechanism for the phones to trigger on a seismic event rather than pointing a firehose of accelerometer data back at the server whenever a charging phone is idle:

If the phone detects something that it thinks may be an earthquake, it sends a signal to our earthquake detection server, along with a coarse location of where the shaking occurred.

It is, however, unclear if there will be a way to opt-out of this program other than disabling Location Services entirely. There’s no apparent incentive for Google, and whatever agencies they ultimately share the system with, to pull anything more than the accelerometer data and generalized location for these events. However, if that data becomes compromised, it’s impossible to say what else it might be useful for.

Being part of a massive network of sensors for scientific research is a really cool idea, aside from the privacy issue. It’s fair to say that if you own an Internet connected smartphone, there were far more serious invasions of your privacy happening already.

Who’s Data Is It, Anyway?

While our devices might be producing the data, it doesn’t seem that there’s any immediate plans for us to have access to it. Eventually we might see a public API that would allow developers to utilize the Android seismometer network, but for now, Google says the data will simply be integrated into Search. The idea is that if a user feels the ground shaking and turns to Google for more information, they’ll be able to see how large of an area has been impacted. After they’ve had time to refine the system the plan is to start pushing out earthquake warning notifications, something they’ve already experimented with as part of the United States Geological Survey ShakeAlert system.

For those who’d rather not wait on their friendly neighborhood megacorp to provide the public with this potentially life saving data, there are options. On the same day Google started rolling out their system, the Linux Foundation announced it would help support the OpenEEW Project.

The OpenEEW sensor board

This system gets its seismic data from open hardware sensors that combine an ESP32 with the same type of MEMS accelerometer found in smartphones, which you can either build yourself or (eventually) purchase as a turn-key product. While the project can never hope to compete with Google in terms of the number of active sensors in the field, these devices have the advantage of being permanently mounted and operating 24/7.

Whether its in your smartphone or an IoT device you build yourself, networks of these low-cost accelerometers seem poised to change the way earthquakes are detected. When even a few seconds advanced warning can be the difference between life and death, we’ll take all the help we can get.