adafruit-circuitpython-lidarlite


Nameadafruit-circuitpython-lidarlite JSON
Version 1.3.12 PyPI version JSON
download
home_pageNone
SummaryA CircuitPython & Python library for Garmin LIDAR Lite sensors over I2C.
upload_time2025-10-20 16:48:35
maintainerNone
docs_urlNone
authorNone
requires_pythonNone
licenseMIT
keywords adafruit lidarlite lidar garmin i2c hardware sensor micropython circuitpython
VCS
bugtrack_url
requirements Adafruit-Blinka adafruit-circuitpython-busdevice
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Introduction
============

.. image:: https://readthedocs.org/projects/adafruit-circuitpython-lidarlite/badge/?version=latest
    :target: https://docs.circuitpython.org/projects/lidarlite/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_LIDARLite/workflows/Build%20CI/badge.svg
    :target: https://github.com/adafruit/Adafruit_CircuitPython_LIDARLite/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

A CircuitPython & Python library for Garmin LIDAR Lite sensors over I2C

**Does not work with Lidar Lite v4 at this time, no ETA when it may be added - PRs accepted!**

Dependencies
=============
This driver depends on:

* `Adafruit CircuitPython <https://github.com/adafruit/circuitpython>`_
* `Bus Device <https://github.com/adafruit/Adafruit_CircuitPython_BusDevice>`_

Please ensure all dependencies are available on the CircuitPython filesystem.
This is easily achieved by downloading
`the Adafruit library and driver bundle <https://github.com/adafruit/Adafruit_CircuitPython_Bundle>`_.

Installing from PyPI
====================

On supported GNU/Linux systems like the Raspberry Pi, you can install the driver locally `from
PyPI <https://pypi.org/project/adafruit-circuitpython-lidarlite/>`_. To install for current user:

.. code-block:: shell

    pip3 install adafruit-circuitpython-lidarlite

To install system-wide (this may be required in some cases):

.. code-block:: shell

    sudo pip3 install adafruit-circuitpython-lidarlite

To install in a virtual environment in your current project:

.. code-block:: shell

    mkdir project-name && cd project-name
    python3 -m venv .venv
    source .venv/bin/activate
    pip3 install adafruit-circuitpython-lidarlite

Usage Examples
==============

V3 Example
----------

.. code-block:: python

	import time
	import board
	import busio
	import adafruit_lidarlite

	# Create library object using our Bus I2C port
	i2c = busio.I2C(board.SCL, board.SDA)

	# Default configuration, with only i2c wires
	sensor = adafruit_lidarlite.LIDARLite(i2c)

	while True:
    	    try:
                # We print tuples so you can plot with Mu Plotter
                print((sensor.distance,))
    	    except RuntimeError as e:
                # If we get a reading error, just print it and keep truckin'
                print(e)
    	    time.sleep(0.01) # you can remove this for ultra-fast measurements!


V3 HP Example
-------------

.. code-block:: python

    import time
    import busio
    import board
    import adafruit_lidarlite

    i2c = busio.I2C(board.SCL, board.SDA)

    sensor = adafruit_lidarlite.LIDARLite(i2c, sensor_type=adafruit_lidarlite.TYPE_V3HP)

    while True:
        try:
            print(f"Sensor ID#: {sensor.unit_id}")
            print(f"Distance = {sensor.distance}")
            print(f"  Strength: {sensor.signal_strength}")
        except RuntimeError as e:
            print(e)
        try:
            print(f"Status: 0b{sensor.status:b}")
            print(f"  Busy: {bool(sensor.status & adafruit_lidarlite.STATUS_BUSY_V3HP)}")
            print(f"  Overflow: {bool(sensor.status & adafruit_lidarlite.STATUS_SIGNAL_OVERFLOW_V3HP)}")
            print(f"  Health: 0b{sensor.health_status:b}")
            print(f"  Power Control: 0b{sensor.power_control:b}")
            print(f"  I2C Config: 0b{sensor.i2c_config:b}")
            print(f"  Test Command: 0b{sensor.test_command:b}")
            print(f"  Correlation: 0b{sensor.correlation_data}")
        except RuntimeError as e:
            print(e)

        print()
        time.sleep(1)

Documentation
=============

API documentation for this library can be found on `Read the Docs <https://docs.circuitpython.org/projects/lidarlite/en/latest/>`_.

For information on building library documentation, please check out `this guide <https://learn.adafruit.com/creating-and-sharing-a-circuitpython-library/sharing-our-docs-on-readthedocs#sphinx-5-1>`_.

Contributing
============

Contributions are welcome! Please read our `Code of Conduct
<https://github.com/adafruit/Adafruit_CircuitPython_LIDARLite/blob/main/CODE_OF_CONDUCT.md>`_
before contributing to help this project stay welcoming.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "adafruit-circuitpython-lidarlite",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "adafruit, lidarlite, lidar, garmin, i2c, hardware, sensor, micropython, circuitpython",
    "author": null,
    "author_email": "Adafruit Industries <circuitpython@adafruit.com>",
    "download_url": "https://files.pythonhosted.org/packages/79/27/0c764a1a1effe517bd93555febcf9f0e7f0d08cf425385fe04b2f71cfce0/adafruit_circuitpython_lidarlite-1.3.12.tar.gz",
    "platform": null,
    "description": "Introduction\n============\n\n.. image:: https://readthedocs.org/projects/adafruit-circuitpython-lidarlite/badge/?version=latest\n    :target: https://docs.circuitpython.org/projects/lidarlite/en/latest/\n    :alt: Documentation Status\n\n.. image:: https://raw.githubusercontent.com/adafruit/Adafruit_CircuitPython_Bundle/main/badges/adafruit_discord.svg\n    :target: https://adafru.it/discord\n    :alt: Discord\n\n.. image:: https://github.com/adafruit/Adafruit_CircuitPython_LIDARLite/workflows/Build%20CI/badge.svg\n    :target: https://github.com/adafruit/Adafruit_CircuitPython_LIDARLite/actions/\n    :alt: Build Status\n\n.. image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json\n    :target: https://github.com/astral-sh/ruff\n    :alt: Code Style: Ruff\n\nA CircuitPython & Python library for Garmin LIDAR Lite sensors over I2C\n\n**Does not work with Lidar Lite v4 at this time, no ETA when it may be added - PRs accepted!**\n\nDependencies\n=============\nThis driver depends on:\n\n* `Adafruit CircuitPython <https://github.com/adafruit/circuitpython>`_\n* `Bus Device <https://github.com/adafruit/Adafruit_CircuitPython_BusDevice>`_\n\nPlease ensure all dependencies are available on the CircuitPython filesystem.\nThis is easily achieved by downloading\n`the Adafruit library and driver bundle <https://github.com/adafruit/Adafruit_CircuitPython_Bundle>`_.\n\nInstalling from PyPI\n====================\n\nOn supported GNU/Linux systems like the Raspberry Pi, you can install the driver locally `from\nPyPI <https://pypi.org/project/adafruit-circuitpython-lidarlite/>`_. To install for current user:\n\n.. code-block:: shell\n\n    pip3 install adafruit-circuitpython-lidarlite\n\nTo install system-wide (this may be required in some cases):\n\n.. code-block:: shell\n\n    sudo pip3 install adafruit-circuitpython-lidarlite\n\nTo install in a virtual environment in your current project:\n\n.. code-block:: shell\n\n    mkdir project-name && cd project-name\n    python3 -m venv .venv\n    source .venv/bin/activate\n    pip3 install adafruit-circuitpython-lidarlite\n\nUsage Examples\n==============\n\nV3 Example\n----------\n\n.. code-block:: python\n\n\timport time\n\timport board\n\timport busio\n\timport adafruit_lidarlite\n\n\t# Create library object using our Bus I2C port\n\ti2c = busio.I2C(board.SCL, board.SDA)\n\n\t# Default configuration, with only i2c wires\n\tsensor = adafruit_lidarlite.LIDARLite(i2c)\n\n\twhile True:\n    \t    try:\n                # We print tuples so you can plot with Mu Plotter\n                print((sensor.distance,))\n    \t    except RuntimeError as e:\n                # If we get a reading error, just print it and keep truckin'\n                print(e)\n    \t    time.sleep(0.01) # you can remove this for ultra-fast measurements!\n\n\nV3 HP Example\n-------------\n\n.. code-block:: python\n\n    import time\n    import busio\n    import board\n    import adafruit_lidarlite\n\n    i2c = busio.I2C(board.SCL, board.SDA)\n\n    sensor = adafruit_lidarlite.LIDARLite(i2c, sensor_type=adafruit_lidarlite.TYPE_V3HP)\n\n    while True:\n        try:\n            print(f\"Sensor ID#: {sensor.unit_id}\")\n            print(f\"Distance = {sensor.distance}\")\n            print(f\"  Strength: {sensor.signal_strength}\")\n        except RuntimeError as e:\n            print(e)\n        try:\n            print(f\"Status: 0b{sensor.status:b}\")\n            print(f\"  Busy: {bool(sensor.status & adafruit_lidarlite.STATUS_BUSY_V3HP)}\")\n            print(f\"  Overflow: {bool(sensor.status & adafruit_lidarlite.STATUS_SIGNAL_OVERFLOW_V3HP)}\")\n            print(f\"  Health: 0b{sensor.health_status:b}\")\n            print(f\"  Power Control: 0b{sensor.power_control:b}\")\n            print(f\"  I2C Config: 0b{sensor.i2c_config:b}\")\n            print(f\"  Test Command: 0b{sensor.test_command:b}\")\n            print(f\"  Correlation: 0b{sensor.correlation_data}\")\n        except RuntimeError as e:\n            print(e)\n\n        print()\n        time.sleep(1)\n\nDocumentation\n=============\n\nAPI documentation for this library can be found on `Read the Docs <https://docs.circuitpython.org/projects/lidarlite/en/latest/>`_.\n\nFor information on building library documentation, please check out `this guide <https://learn.adafruit.com/creating-and-sharing-a-circuitpython-library/sharing-our-docs-on-readthedocs#sphinx-5-1>`_.\n\nContributing\n============\n\nContributions are welcome! Please read our `Code of Conduct\n<https://github.com/adafruit/Adafruit_CircuitPython_LIDARLite/blob/main/CODE_OF_CONDUCT.md>`_\nbefore contributing to help this project stay welcoming.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A CircuitPython & Python library for Garmin LIDAR Lite sensors over I2C.",
    "version": "1.3.12",
    "project_urls": {
        "Homepage": "https://github.com/adafruit/Adafruit_CircuitPython_LIDARLite"
    },
    "split_keywords": [
        "adafruit",
        " lidarlite",
        " lidar",
        " garmin",
        " i2c",
        " hardware",
        " sensor",
        " micropython",
        " circuitpython"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "76113b0b6bc093aaac00b736fcc1b3aa8a07b697933a9f3c35b9d45b82389f6f",
                "md5": "8d3861a1affae3dde8b6ce6ed8e7476f",
                "sha256": "dacfd590e77ce3f750603c80d29e35f52cf60e2f22932b617ed597f76e0b59a1"
            },
            "downloads": -1,
            "filename": "adafruit_circuitpython_lidarlite-1.3.12-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8d3861a1affae3dde8b6ce6ed8e7476f",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 7271,
            "upload_time": "2025-10-20T16:48:34",
            "upload_time_iso_8601": "2025-10-20T16:48:34.120968Z",
            "url": "https://files.pythonhosted.org/packages/76/11/3b0b6bc093aaac00b736fcc1b3aa8a07b697933a9f3c35b9d45b82389f6f/adafruit_circuitpython_lidarlite-1.3.12-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "79270c764a1a1effe517bd93555febcf9f0e7f0d08cf425385fe04b2f71cfce0",
                "md5": "8a866dbcd510fd2ae292e9baacb6f758",
                "sha256": "fbfe5ffacd594a3bef8eeb994a5a91ffac83a4da046a8f3a8ce10f1469a6b93a"
            },
            "downloads": -1,
            "filename": "adafruit_circuitpython_lidarlite-1.3.12.tar.gz",
            "has_sig": false,
            "md5_digest": "8a866dbcd510fd2ae292e9baacb6f758",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 25103,
            "upload_time": "2025-10-20T16:48:35",
            "upload_time_iso_8601": "2025-10-20T16:48:35.035053Z",
            "url": "https://files.pythonhosted.org/packages/79/27/0c764a1a1effe517bd93555febcf9f0e7f0d08cf425385fe04b2f71cfce0/adafruit_circuitpython_lidarlite-1.3.12.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-20 16:48:35",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "adafruit",
    "github_project": "Adafruit_CircuitPython_LIDARLite",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "Adafruit-Blinka",
            "specs": []
        },
        {
            "name": "adafruit-circuitpython-busdevice",
            "specs": []
        }
    ],
    "lcname": "adafruit-circuitpython-lidarlite"
}
        
Elapsed time: 9.33016s