Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
JoshuaCurry authored Jun 24, 2020
1 parent 9d86261 commit a7572d0
Showing 1 changed file with 43 additions and 2 deletions.
45 changes: 43 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,48 @@
# padsys.py
Python-based implementation of Padsys by Electronics (https://github.com/electronics/padsys)
Python-based implementation of Padsys by Electronics (https://github.com/electronics/padsys).

## Usage:
Padsys allows you to control Chamsys MagicQ Exec Pages over OSC using Novation Launchpads.
The current implementation was tested with two Launchpad MK2's (RGB), but theoretically even first generation launchpads should work.

## Getting Started

The first step is to create a 10x10 exec page in MagicQ. This can be on any page number, just note down which exec page it's on.

This 10x10 dimension includes the launchpad and a border at the left and top edges for adding groups and other non-launchpad-controlled items.

Make sure that OSC control is enabled (set to Tx and Rx) in MagicQ Setup under Network.

The next step is to install the requirements for padsys.py. Do this by running `pip3 install -r requirements.txt`, which will collect all the packages.

Then, connect a launchpad to your PC and run PadSys.py with the following arguments:

```
padsys.py -n 1 -e <EXEC_PAGE_NO>
```

Now, assuming you have some blue hardware connected which unlocks OSC control, you should be able to push buttons on your Launchpad which control Chamsys, and active exec page items should mirror back to the launchpad with feedback.

In order to set colours of buttons, press `Record arm`, `Volume`, `User 2` and `Mixer` at the same time. This puts the launchpad into "edit" mode.

Cycle through colours with `User 2` and paint them onto the launchpad where you want them. Press `Mixer` when done to save.

The pad layout saves to a `json` file which is loaded if present at next startup so you don't have to re-make your layout every time.

## Multiple Launchpads

To use multiple launchpads, simply connect as many as you need to your system.

The `-n` flag states how many launchpads you have connected.

In its default mode, this will make launchpad 1 control the exec page passed by `-e`, launchpad 2 control (`-e + 1`), launchpad 3 control (`-e + 2`), etc.

The `-c` flag combines launchpads together in a horizontal row, so if you have two and pass `-c`, they will control a 20x10 exec page.

## Ports

At the moment, Padsys.py allows you to change the Chamsys OSC port for information sent to Chamsys, (referred to in setup as "OSC rx port"), but has a static listening port for feedback from Chamsys on Port 9000. This may be updated in future versions.

## Full Usage:

```
usage: padsys.py [-h] [-n PADS] [-e EXEC] [-c] [--host HOST] [--port PORT]
Expand Down

0 comments on commit a7572d0

Please sign in to comment.