SivyerLab / pyCrafter4500

Python USB controller for the TI LCR4500EVM
https://pycrafter4500.readthedocs.io/en/latest/
GNU General Public License v3.0
18 stars 18 forks source link

version_badge downloads_badge license_badge docs_badge

pycrafter4500

This is an unofficial API for some functionality of the Texas Instruments Lightcrafter 4500. It is no longer maintained.

Code adapted for the TI Lightcrafter 4500 from https://github.com/csi-dcsc/Pycrafter6500

The DLPC 350 is the controller chip on the LCR 4500.

TI DLPC 350 documentation can be found at: http://www.ti.com/product/DLPC350/technicaldocuments

pycrafter4500 documentation can be found at: https://pycrafter4500.readthedocs.io/en/latest/moduledoc.html

Doc strings adapted from dlpc350_api.cpp source code.

To connect to the LCR4500, the libusb-win32 driver is required. The recommended way to do is this is with Zadig. The pyusb package is also required.

Install

pycrafter4500 is available through pypi

pip install pycrafter4500

Usage

import pycrafter4500

Waking up from and going into standby:

pycrafter4500.power_up()
pycrafter4500.power_down()

Toggling back to video mode from pattern sequence mode:

pycrafter4500.video_mode()

Starting a pattern sequence:

# for example: 222 hz, 7 bit depth, white
pycrafter4500.pattern_mode(num_pats=3,
                           fps=222,
                           bit_depth=7,
                           led_color=0b111,  # BGR flags                 
                           )

If you wish to send other commands, this can be done using the dlpc350 class. See source documentation for further details.

from pycrafter4500 import dlpc350, connect_usb
from pycrafter4500 import bits_to_bytes, conv_len

with connect_usb() as lcr:
    lcr.command('w', 0x00, CMD2, CMD3, payload)