Read this FIRST
Instructions at end reagarding:
    InstructionsPython30xRev1.pdf
also within this archive



1) Getting Started
Demo30x.py Sample Software supports Lawson Labs USB Data Acquisition Systems including the Model 301, Model 302, Model 302EXP, EMF2, or EMF6. A Windows XP, or later, computer with at least one USB port is required. This copy of Demo30x.py uses LL_USB_64.dll and the Lawson Labs USB windows drivers for Win10 which are documented elsewhere. Similar sample code for LINUX is available at:
    Linux sample app coded in python
    - scroll to bottom of page once there

If you have a Model 301 or EMF2, the analog outputs and input channels 2, 3, 4, & 5 are not available. Channels 0, 1, 6 and 7 are the same for all. The EMF6 has all the input channels, but no analog outputs or digital input/output.


2) Hardware Installation
The data systems are supplied with wall-mount power supplies. If the power supply is of the interchangeable plug variety, install the appropriate mains plug first. Be certain it snaps all the way into place, or a shock hazard will result when the removable plug stays behind in the outlet. Plug in the power supply at the outlet and at the data system end. The USB cable plugs into both the data system and the host. Remember that each physical USB connector is treated individually, so you will need to install the drivers for each physical USB port. It is easy to get unexpected behavior if you unintentionally plug into a different USB jack. If the drivers are installed on all the physical USB ports, it will no longer matter which you use. Make a note of the USB Device number of your data system. It is written on the USB controller chip, and on the bottom of the case, if you have an optional enclosure.


3) Software Installation
The sample code is tested with Python 3.11. Libraries required are datetime, time, msvcrt, arrays, ctypes, os, threading, and curses. Screen size is set to 140 x 53 for text.

Make a folder for your project and place the .py code, LL_USB2k_64.dll and the LL_USB.cfg file there. Your scan data will be written to a file called scan_dbg_[DEV_ID].txt in app folder. The configuration file is compatible with files written by other LLI USB sample code. Note that the configuration file saves only a minimum of information. You can add whatever other settings to the file that would be convenient.

The sample code makes use of python3.11 and curses 2.2.1 which will work with it. Those two MUST be installed together for the curses console interface to work correctly.
Link to assist installation of python3.11:
    python 3.11
    - scroll to where it says "Download Windows installer (64-bit)" once there
Link to get installation of curses 2.2.1:
    curses 2.2.1
    - download package "curses-2.2.1+utf8-cp37-cp37m-win_amd64.whl" and use pip to install
Link to instructions to install pip on Win10:
    installing pip



Now follow instructions in
   "InstructionsPython30xRev1.pdf"
   found within archive, beginning at:
   
   4) Operation

 or click here to read: InstructionsPython30xRev1.pdf
 download: DEMO30xV1.zip