The only CrOS device I've tested this in is a Chromebook Pixel (Samus), with both M71 and M72.
For some reason, this excerpt
['Accelerometer', 'Gyroscope'].forEach(sensor_type => {
let s = new window[sensor_type];
s.onerror = e => console.log(e);
s.start();
})
causes both sensor types to report a NotReadableError, whereas having only 'Accelerometer' (or any other combination of sensor types without a Gyroscope) works fine. It's also possible to test this via https://intel.github.io/generic-sensor-demos/sensor-tester/build/bundled/ -- none of the sensors are shown as available on Samus, but I've had a colleague with a newer Pixebool test it and things worked correctly (i.e. only the last 2 sensor types were reported as missing).