Introduction ============ .. image:: https://readthedocs.org/projects/adafruit-circuitpython-qmc5883p/badge/?version=latest :target: https://docs.circuitpython.org/projects/qmc5883p/en/latest/ :alt: Documentation Status .. image:: https://raw.githubusercontent.com/adafruit/Adafruit_CircuitPython_Bundle/main/badges/adafruit_discord.svg :target: https://adafru.it/discord :alt: Discord .. image:: https://github.com/adafruit/Adafruit_CircuitPython_QMC5883P/workflows/Build%20CI/badge.svg :target: https://github.com/adafruit/Adafruit_CircuitPython_QMC5883P/actions :alt: Build Status .. image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json :target: https://github.com/astral-sh/ruff :alt: Code Style: Ruff CircuitPython driver for the Adafruit QMC5883P - Triple Axis Magnetometer - STEMMA QT Dependencies ============= This driver depends on: * `Adafruit CircuitPython `_ * `Bus Device `_ * `Register `_ Please ensure all dependencies are available on the CircuitPython filesystem. This is easily achieved by downloading `the Adafruit library and driver bundle `_ or individual libraries can be installed using `circup `_. `Purchase one from the Adafruit shop `_ Installing from PyPI ===================== On supported GNU/Linux systems like the Raspberry Pi, you can install the driver locally `from PyPI `_. To install for current user: .. code-block:: shell pip3 install adafruit-circuitpython-qmc5883p To install system-wide (this may be required in some cases): .. code-block:: shell sudo pip3 install adafruit-circuitpython-qmc5883p To install in a virtual environment in your current project: .. code-block:: shell mkdir project-name && cd project-name python3 -m venv .venv source .env/bin/activate pip3 install adafruit-circuitpython-qmc5883p Installing to a Connected CircuitPython Device with Circup ========================================================== Make sure that you have ``circup`` installed in your Python environment. Install it with the following command if necessary: .. code-block:: shell pip3 install circup With ``circup`` installed and your CircuitPython device connected use the following command to install: .. code-block:: shell circup install adafruit_qmc5883p Or the following command to update an existing version: .. code-block:: shell circup update Usage Example ============= .. code-block:: python import time import board import adafruit_qmc5883p i2c = board.I2C() sensor = adafruit_qmc5883p.QMC5883P(i2c) while True: mag_x, mag_y, mag_z = sensor.magnetic print(f"X:{mag_x:2.3f}, Y:{mag_y:2.3f}, Z:{mag_z:2.3f} G") print("") time.sleep(1) Documentation ============= API documentation for this library can be found on `Read the Docs `_. For information on building library documentation, please check out `this guide `_. Contributing ============ Contributions are welcome! Please read our `Code of Conduct `_ before contributing to help this project stay welcoming.