The vxi11.py code, which supports the vxi11 and lxi protocols, depends on xdrlib, which is being removed (unfortunately) from python 3.13. However, it is being maintained in pypi at https://pypi.org/project/py-xdrlib/, and can be installed as pip install py-xdrlib.
I have added a lot more doxygen documents to the C2Functions package. See:
http://pythonlabtools.sourceforge.net/analysisdocs/html/index.html
Also, new tarballs of the whole set of modules have been posted (as usual) at:
http://pythonlabtools.sourceforge.net
so if you want current CVS results, you can get almost the same thing there. I will update that tarball any time significant changes have been made to the CVS tree. ... read more
I am working on updating the major modules in analysis to be Numeric and numpy compatible. I have reworked C2Functions, fitting_toolkit, and voigt_profile to be capable of using either package. They will 'prefer' numpy, in that if numpy exists, they will use it, but should fall back gracefully to Numeric if numpy is not available.
I have started creating real documentation (beyond the docstrings) for this package. It is appearing in http://pythonlabtools.sourceforge.net/analysisdocs/html/index.html and will be updated as I have time. So far, I have done the fitting_toolkit. I am using Doxygen to generate these files.
This is a package which introduces the concept of a C2Function, which is a function which which returns its value and first two derivatives. The package provides utilities for creating composed (nested) functions and binary functions of functions. It also provides support for cubic splines of tabulated data. It allows extremely efficient numerical integration (10th order convergence) and root finding using the exact derivatives, along with the ability to transparently handle ratio functions with 0/0 points in them. ... read more
I have added support to the LabPro module to allow a LabPro unit to be used on a network via the iPocket ethernet-serial interface device. Put your LabPro anywhere, and control it as if it were local! Get it from CVS or from the up-to-date tarball.
because the SourceForge anonymous CVS servers are still running a little behind (more than 24 hours), I have started posting a tarball of the current CVS files for the complete package at
http://pythonlabtools.sourceforge.net
so if you want current CVS results, you can get almost the same thing there. I will update that tarball any time significant changes have been made to the CVS tree.
Remember, this tarball follows the CVS tree, so if you don't want the bleeding edge, use the release files on the project page. I try not to submit horribly incompatible files into CVS, but it happens sometimes.
The package (in CVS) which supports Measurement Computing, Inc.'s PMD-xxxxLS devices is working now with fairly complete support for single analog input & output, single digital input & output, block analog capture, streaming analog capture, and counter control. Also, access to the NVRAM is available, so serialization information, calibrations, etc. can be maintained. Right now, it works on MacOSX with a kext to protect the device from being assimilated into the HID system. It probably will work on Linux & BSD. I doubt that it works as it stands under Windows, but have not had the time to check it since this is not my primary platform. Anyone want to help there?
In CVS, there is now _very basic_ support for the Measurement Computing, Inc. line of USB data acquisition bricks, such as the MiniLab1008 and the PMD-1208LS. So far, it just does single analog readings, and analog outputs. DIO will be very easy, but the scanning modes for these takes some coding, since they apparently have firmware which doesn't do anything to help out. Decent support should be about a week off, or so.
It works! Really! Now that libusb-win32 works (see elsewhere at sourceforge), the Vernier LabPro is now compatible with USB on Win32. To use it, first install libusb-win32 (the filter driver), per their instructions. Then, from this project's CVS, get LabPro_176.inf, and put it in the libusb-win32 bin/ folder. When you plug in a LabPro, and Windows asks for a driver, point it to this file, and it should install a stub driver correctly. Then, you need cygwin installed and copy cygwin/lib/cygwin1.dll into the pythonlabtools/data_acquisition folder (this is easier than figuring out paths). Also, download the binary of LabProUSBServer.exe and put it in the same place. Everything should work now. Someday, a distutils script will handle this.
Using the libusb package (also at sourceforge), I have extended my MacOSX support for USB operation of the LabPro to work with any platform which supports libusb, which should include MacOSX, Linux and *BSD. try it out & let me know if it works!
I just added a module to support communications with the DeLorme Earthmate GPS unit, and with minor subclassing, probably most Rockwell/Conexant/Navman/SiRF Zodiac-based GPS units, including Jupiter boards.
The LabPro support now includes USB connections on MacOSX, throught ehLabPro_USB.py module and the LabProUSBMacServer.c server. The server is a relatively trivial IOKit client which connects its stdin and stdout to the out and in USB pipe of the LabPro. Support for other platforms should be easy to develop by anyone who is willing to help, by writing a similar pipe server or by directly talking to the USB from Python.
PythonLabTools now has a module which implements support for much of the functionality of the Vernier LabPro data acquisition module (see www.vernier.com for lots of information on this very useful, low-cost data acquisition unit). The module supports ascii and binary data transfers, serial communications at either 38.4k or 115.2kbaud, analog and digital input and output, and other useful things. It is only a week old now, so I am still adding at a high rate. It is in the cvs repository under data_acquisition/LabPro.py.
Pythonlabtools is a new repository at Sourceforge for miscellaneous python tools of use in a laboratory environment. It currently contains a base of tools providing: data acquisition support using the vxi-11 protocol (a protocol for gpib (IEEE-488) like devices over TCP/IP); the National Instruments DSTP protocol (for communicating between LabVIEW and external servers); an optics modelling module for treating diffracting and refracting optics with (for now) paraxial TEM00 gaussian beams; and lots of fitting and analysis tidbits. Stop by if you are interested.