Drive MSA311 3-axis accelerometers over I2C with PHP

Maintainers

Package info

github.com/DeptOfScrapyardRobotics/MSA311

Homepage

pkg:composer/dept-of-scrapyard-robotics/msa311

Transparency log

Statistics

Installs: 3

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

0.4.0 2026-06-10 02:16 UTC

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 0x01 must read 0x13.
  • Default I2C address 0x62.
  • Implements Waveforms\Contracts\Motion\MeasuresAcceleration.