Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Ports

Ports is an OSC to CV/Gate and MIDI converter. Built to run on raspberry pi zero w (or other raspberry pi variants). It listens for incoming OSC messages on port 5000.

It will convert them into CV/Trigger and gate on the MAX11300 chip or MIDI messages (see API section of this readme)

Installation

During this procedure we assume that you have access to your pi, using a screen + keyboard, or over SSH.

get your raspberry pi setup:

Ports could work on other linux flavours such as osmc etc, but the automatic WLAN fallback might not work as expected as WLAN is distro specific.

/install.sh (below) assumes the system is a raspbian jessie.

install ports

Clone ports repository git clone https://github.com/hdavid/ports.git

  • if git is not installed, just run sudo apt-get update && sudo apt-get install git

Then from the ports directory run ./install.sh

This will:

  • download and install the SPI broadcom drivers
  • install liblo osc lib package
  • install dnsmsaq package (dns, dhcp for accesspoint mode)
  • compile ports
  • configure fall back access point ssid: ports, psk: portsports
  • configure ports to start at boot time automatically

you can also install pink, to provide ableton link. run ./install-pink.sh

Accessing

If no known wifi network is in range, ports will create an access point :

  • ssid: ports
  • psk: portsports

You can add your own wifi networks in /etc/wpa_supplicant/wpa_supplicant.conf. Make sure to enter your network before the one added by ports (identified by ssid="ports" and mode=2), as wpa_supplicant try the networks in the order they appear in this configuration file.

Example of network configuration :

network={
	str_id="myNetworkFriendlyName"
    ssid="myNetwork"
    psk="MyPassword"
}

Running

Port must run as root on order to access SPI bus used to communicate with the MAX11300. Note that ports is started automatically at boot time. (done by ./install.sh)

you can however start manually from

sudo /usr/local/bin/portsd no-daemon

OSC API

OSC Port: 5000

CV Outputs

/out/<[1-20]>/<mode> <float>

mode is one of : trig, gate, flipflop, cvuni, cvbi, lfosine, lfosaw, lfotri, lfosquare

unipolar is [0v 10v]. bipolar is [-5v +5v]. LFO rates are in Hertz. other input values are in the range [0 1] and mapped to the cv voltage.

MIDI Output

for now the MIDI device is hardcoded in the code to be the first usb device plugged. /dev/snd/midiC1D0 is easily changeable in Ports.cpp.

/midi/<channel>/cc/<midiCC> <value>

/midi/<channel>/noteOn/<noteNumber> <velocity>

/midi/<channel>/noteOff/<noteNumber> <velocity>

channel: 1-16

noteNumber, midiCC, velocity, value : 1-127

Possible Improvements

About

Ports is an OSC to CV/Gate and MIDI converter. Built to run on raspberry pi zero w (or other variants), using max11300 chip over SPI.

Topics

Resources

Releases

No releases published

Packages

No packages published