Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/bobthechemist/goiolink

Interact with your Vernier sensors on the Raspberry Pi with Mathematica
https://github.com/bobthechemist/goiolink

Last synced: about 1 month ago
JSON representation

Interact with your Vernier sensors on the Raspberry Pi with Mathematica

Awesome Lists containing this project

README

        

# GoIO Link
A device driver and *Mathematica* package to access Vernier Software & Technology sensors on your Raspberry Pi using
a Go! Link USB adapter and the Wolfram Language. The flagship component of my VernierPiLink project.

# Installation

## The new way

A script is available that downloads the SDK, compiles the drivers, installs the files and does a basic check of functionality. It's a work in progress and has only been tested on a clean Buster image (recommended software build, not the smaller builds). Assumes that the script is run in pi's home directory.

```
cd ~
wget https://raw.githubusercontent.com/bobthechemist/goiolink/master/vernierlink.sh
bash vernierlink.sh
```

You should have the GO!Link adapter and a sensor attached to the RPi before you start. The process will take 10-15 minutes, depending on how quickly the required packages can be downloaded.

## The easy way
You may head on over to the releases and download the zip file containing the driver (goio) and *Mathematica* package (GoIO.m). These two files must be copied into a directory named '/home/pi/.WolframEngine/Applications/GoIO'. You can replace "pi" with your username if you have done so.

## The other way (only slightly less easy)

### Important note
Recently (January, 2021) I observed that the SDK is not compiling properly. I do not know why this is the case; however there is a workaround. From the directory in which you installed the SDK:

```
cd GoIO_cpp
cp NonSmartSensorDDSRecs.cpp NonSmartSensorDDSRecs.cpp.bak
sed -i '/\-1.*Averaging/s/\-1/(unsigned char)(\-1)/g' NonSmartSensorDDSRecs.cpp
sed -i '/\-1.*CurrentRequirement/s/\-1/(unsigned char)(\-1)/g' NonSmartSensorDDSRecs.cpp
```

Do this before running `./build.sh` below.

### Install and compile the Vernier SDK
The following set of commands will allow you to download and install the Vernier Software & Technology Software Development Kit for Go! Link devices.
```
cd ~
wget http://www2.vernier.com/download/GoIO-2.53.0.tar.gz
tar zxvf GoIO-2.53.0.tar.gz
sudo aptitude install build-essential automake1.9 dpkg-dev libtool libusb-1.0-0-dev
sudo apt-get install git uuid-dev
cd GoIO-2.53.0
./build.sh
```
Check to see that the SDK was installed properly by running the example file that came with the SDK:
```
cd ~/GoIO-2.53.0/GoIO_DeviceCheck
./build.sh
./GoIO_DeviceCheck
```
### Clone this repository
use `git clone https://github.com/bobthechemist/goiolink.git` and after entering the newly created directory type `make goio`. The makefile does not do any installing, so you will have to manually move the goio and GoIO.m files as mentioned above.

## How to use
In a Mathematica session (initiated either from the command line with `wolfram` or the notebook interface via `mathematica`) you need to first load the package with `<