/generans

Pulse generator for Phidget

Primary LanguageRubyGNU Lesser General Public License v3.0LGPL-3.0

generans

A pulse generator and DSL for the Phidget 1018 and 1018_2 I/O boards.

generans in action

installation

  1. Install Ruby (2.0 or later, 2.2.2 recommended) and bundler.
  2. Install the Phidget drivers.
  3. run bundle install to fetch and install all the Ruby libraries needed by generans.

usage

$ ./generans --help
Generates pulses on a Phidget 1018 I/O board.
    -v, --verbose                    Be chatty about status to STDOUT
    -t, --timeout MS                 Connection timeout in ms
    -p, --pulses NUM                 Number of pulses to generate
    -f, --frequency HZ               Frequency of pulses to generate (Hz)
    -d, --duty DUTY                  Duty cycle (%)
    -o, --output OUTPUT              Output port to which to send pulses (0 - 7)

troubleshooting

an error occurred: Given timeout has been exceeded.

This usually indicates a failure to communicate with the board.

  • Check that your Phidget board is physically connected to a USB port with a reliable cable.
  • If using Linux, configure udev to allow access to the device as a non-root user.

licence

generans is licensed under the GNU Lesser General Public License.

why the LGPL?

The GPL is specifically designed to reduce the usefulness of GPL-licensed code to closed-source, proprietary software. The BSD license (and similar) don't mandate code-sharing if the BSD-licensed code is modified by licensees. The LGPL achieves the best of both worlds: an LGPL-licensed library can be incorporated within closed-source proprietary code, and yet those using an LGPL-licensed library are required to release source code to that library if they change it.

thanks

Thanks to the good folks at GreenSync for the office time to work on generans, and also for the use of their hardware to test the output.