Skip to main content

Built to interface with any Limelight Smart Camera

Project description

LimelightLib Python

Discover all connected Limelights, and interact with them via REST and Websockets

import limelight
import limelightresults
import json
import time

discovered_limelights = limelight.discover_limelights(debug=True)
print("discovered limelights:", discovered_limelights)

if discovered_limelights:
    limelight_address = discovered_limelights[0] 
    ll = limelight.Limelight(limelight_address)
    results = ll.get_results()
    status = ll.get_status()
    print("-----")
    print("targeting results:", results)
    print("-----")
    print("status:", status)
    print("-----")
    print("temp:", ll.get_temp())
    print("-----")
    print("name:", ll.get_name())
    print("-----")
    print("fps:", ll.get_fps())
    print("-----")
    print("hwreport:", ll.hw_report())

    ll.enable_websocket()
   
    # print the current pipeline settings
    print(ll.get_pipeline_atindex(0))

    # update the current pipeline and flush to disk
    pipeline_update = {
    'area_max': 98.7,
    'area_min': 1.98778
    }
    ll.update_pipeline(json.dumps(pipeline_update),flush=1)

    print(ll.get_pipeline_atindex(0))

    # switch to pipeline 1
    ll.pipeline_switch(1)

    # update custom user data
    ll.update_python_inputs([4.2,0.1,9.87])
    
    
    try:
        while True:
            result = ll.get_latest_results()
            parsed_result = limelightresults.parse_results(result)
            if parsed_result is not None:
                print("valid targets: ", parsed_result.validity, ", pipelineIndex: ", parsed_result.pipeline_id,", Targeting Latency: ", parsed_result.targeting_latency)
                #for tag in parsed_result.fiducialResults:
                #    print(tag.robot_pose_target_space, tag.fiducial_id)
            time.sleep(1)  # Set this to 0 for max fps


    except KeyboardInterrupt:
        print("Program interrupted by user, shutting down.")
    finally:
        ll.disable_websocket()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

limelightlib_python-0.9.6.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

limelightlib_python-0.9.6-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file limelightlib_python-0.9.6.tar.gz.

File metadata

  • Download URL: limelightlib_python-0.9.6.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for limelightlib_python-0.9.6.tar.gz
Algorithm Hash digest
SHA256 515fbae330582feeb09b5b74ef4ca0bb40868aa01358b2117354cbb53ea8ca75
MD5 069fc7249f6222e287540fd4f00ccf38
BLAKE2b-256 084558e63a0aeec9191a89b08e5f8ae9ee949dfd69858ee47abbb099438c3826

See more details on using hashes here.

File details

Details for the file limelightlib_python-0.9.6-py3-none-any.whl.

File metadata

File hashes

Hashes for limelightlib_python-0.9.6-py3-none-any.whl
Algorithm Hash digest
SHA256 8f34e24c009bbe469bfe564f8024aad90971c2659eb65a8f721fb03596993ae4
MD5 d98f4f232826248365ff2fa3a89c58e7
BLAKE2b-256 eaa3c88fcefaa6dc498c02c6d6627252ee8a6efc066a9bd63010e8d7fbe46719

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page