dept-of-scrapyard-robotics / msa311
Drive MSA311 3-axis accelerometers over I2C with PHP
Package info
github.com/DeptOfScrapyardRobotics/MSA311
pkg:composer/dept-of-scrapyard-robotics/msa311
0.4.0
2026-06-10 02:16 UTC
Requires
- php: ^8.3
- scrapyard-io/bare-metal: ^0.4.0
- scrapyard-io/reality-interface: ^0.4.0
- scrapyard-io/waveforms: ^0.4.0
Suggests
- scrapyard-io/gpio: ^0.4.0 - For direct linux-based GPIO
- scrapyard-io/i2c: ^0.4.0 - For direct linux-based I2C
- scrapyard-io/mpsse: ^0.4.0 - For I2C/GPIO over an FTDI Serial-to-USB Device
This package is auto-updated.
Last update: 2026-08-11 22:15:10 UTC
README
Drive the MSA311 3-axis I2C accelerometer from PHP (ScrapyardIO 0.7).
Install
composer require dept-of-scrapyard-robotics/msa311:^0.7.0
Requires scrapyard-io/gpio-framework and scrapyard-io/waveforms (^0.7).
Quick use
use DeptOfScrapyardRobotics\Sensors\MSA311\MSA311; $accel = MSA311::i2c('/dev/i2c-1'); // slave 0x62, boots by default echo $accel->x(), ' ', $accel->y(), ' ', $accel->z(); // g $accel->close();
Circuit profiles
php workshop msa311:make-profile
use GeneralPurposeIO\Core\MagicAliases\Circuit; $accel = Circuit::profile('msa311_board'); $gX = $accel->x();
Smoke: php workshop runner msa311-smoke --profile=msa311_board
Notes
- PARTID register
0x01must read0x13. - Default I2C address
0x62. - Implements
Waveforms\Contracts\Motion\MeasuresAcceleration.