Andrew Lehmer | e76dcf9 | 2017-04-26 14:58:59 -0700 | [diff] [blame] | 1 | ## WALT Latency Timer ## |
| 2 | |
| 3 | **DISCLAIMER:** This is not an official Google product. |
| 4 | |
| 5 | * [Post about WALT on Android Developers Blog](http://android-developers.blogspot.ca/2016/04/a-new-method-to-measure-touch-and-audio.html) |
| 6 | * [Instructional videos showing how to use WALT](https://www.youtube.com/playlist?list=PLd6Fi7WgXfcCEJg1FDqNCoQfpWo7W3J5a) |
| 7 | * [Detailed usage instructions](docs/usage/WALT_usage.md) |
| 8 | * Mailing list - [walt-discuss](https://groups.google.com/forum/#!forum/walt-discuss) |
| 9 | * Low-traffic mailing list for major announcements [walt-announce](https://groups.google.com/forum/#!forum/walt-announce) |
| 10 | |
| 11 | WALT is designed to measure the latency of physical sensors and outputs on phones and computers. It can currently perform the following measurements: |
| 12 | |
| 13 | * [Tap latency](docs/TapLatency.md) - time from the moment a finger-like probe touches down (or up) on the screen |
| 14 | until the kernel timestamps an ACTION_DOWN (or ACTION_UP) event. This physical contact with |
| 15 | the screen is timed using an accelerometer mounted on the probe. |
| 16 | * [Drag latency](docs/DragLatency.md) (scroll). |
| 17 | * [Screen draw latency](docs/ScreenLatency.md) - using a photodiode that detects whether the screen is black or white. |
| 18 | * [Audio output and microphone latencies](docs/AudioLatency.md). |
| 19 | * MIDI input and output latencies |
| 20 | |
| 21 | The WALT app for Android can be |
| 22 | [installed from Google Play](https://play.google.com/store/apps/details?id=org.kamrik.latency.walt) |
| 23 | or downloaded in the [releases section](https://github.com/google/walt/releases); the iOS app must be built from source. |
| 24 | |
| 25 |  |
| 26 | |
| 27 | |
| 28 | ## Notes |
| 29 | * Hardware build instructions can be found in this repository under `hardware/`. |
| 30 | * Clock synchronization details are described [here](android/WALT/app/src/main/jni/README.md). |
| 31 | * The Android/iOS device and Teensy clocks have a tendency to diverge due to |
| 32 | differing clock frequencies. This means they will go out of sync after |
| 33 | several minutes. The workaround is to use the app to re-sync the |
| 34 | clocks. Some, but not all tests in the app will sync the clocks when starting a measurement. |
| 35 | * Python code used to communicate with WALT from Linux and ChromeOS can be found |
| 36 | [here](https://chromium.googlesource.com/chromiumos/platform/touchbot/+/master/quickstep/). |
| 37 | |