Skip to content
/ libmanta Public
forked from ssfrr/libmanta

A library and set of applications to interface with the Snyderphonics Manta

Notifications You must be signed in to change notification settings

mvl/libmanta

 
 

Repository files navigation

libmanta
=========

-----------------------------------------------------------
Introduction
-----------------------------------------------------------

libmanta is a library and set of example programs, and a PD/Max object for
interfacing with the Snyderphonics Manta, a touch-sensitive usb controller with
LED feedback.

libmanta is currently in beta stage, and the examples are intended simply as
starting points to show how the library may be used. The [manta] object for
Pure Data and Max/MSP will be a user-facing release released in both source and
binary forms.

[manta] (the pd/max object) is built on an abstraction layer called flext by
Thomas Grill. It allows an external to be compiled for both PD and Max and on
OS X, Linux, and Windows. You will need to build and install flext using the
included instructions before building and installing [manta].

-----------------------------------------------------------
Prerequisites
-----------------------------------------------------------

libusb-1.0
liblo (only for MantaOSC example)
CMake (to build standalone library or non-flext examples)
flext (for the PD/Max object) is included with this source package.
   If you have another version installed feel free to use that instead, and
   modify the instructions accordingly.

-----------------------------------------------------------
PureData / Max/MSP Object Build and Install Instructions
-----------------------------------------------------------

Note: commands to be typed into the terminal will appear in single quotes with
no other instruction.

* OS X:

1. Install XCode from your OS X CD.
2. Download the latest version of libusb-1.0 from
   http://sourceforge.net/projects/libusb/files/libusb-1.0/
3. Extract the libusb-1.0 tarball
4. in Terminal, navigate to the libusb directory
5. './configure CC="gcc -m32"' (the CC flag is only needed if building for Max
   instead of PD, since it can't do 64-bit)
6. 'sudo make install'
7. run the mantaswitch.sh script found in platform/osx to install the dummy driver
   that prevents the OSX hid driver from blocking our access to the manta
   NOTE: while this .kext file is installed you will be unable to use the
   non-libmanta-based manta Max object or OSC client. To switch back simply
   run the script again to uninstall it.  (only do this if you haven't     	already installed the MantaDummyDriver kext with the installer   	package.
8. reboot
9. Jump to 'Linux and OS X Common Instructions'

* Linux:

1. Install libusb-1.0 via your package manager
2. Install the "build-essential" package
3. Jump to 'Linux and OS X Common Instructions'

* Linux and OS X Common Instructions for PD:

PD on Linux or OS X
1. Download the pd source from http://puredata.info/downloads and remember
   where you extract it.
2. Navigate to extern/flext in the libmanta directory
3. './build.sh pd gcc'
4. Edit buildsys/config-lnx-pd-gcc.txt (or config-mac-pd-gcc.txt) and change:
   a. (Linux ONLY) the last line to OFLAGS+=-march=native
   b. PDPATH to point to the "pd" subdirectory of the pd source package you
      extracted in step 2
   c. INSTPATH to point to where your PD externals live
5. './build.sh pd gcc'
6. (Mac Only) Edit config.txt and comment out the line "SIMD=1"
7. './build.sh pd gcc' (yes, again)
8. './build.sh pd gcc install'
9. 'cd ../../MantaFlext'
10. '../extern/flext/build.sh pd gcc'
11. 'sudo ../extern/flext/build.sh pd gcc install'

* OS X instructions for Max/MSP

1. Download Max/MSP SDK from Cycling74.com and put it somewhere easy to find
2. Place the MaxAPI.framework folder found inside the max-includes directory
   into Library/Frameworks 
3. in Terminal, navigate to extern/flext in the libmanta directory
4. './build.sh max gcc'
5. Edit buildsys/config-mac-max-gcc.txt and change:
   b. MAXSDKPATH to point to the subdirectory of the Max SDK you extracted 	in step 1 (should be the directory right above the max-includes   	directory,
	like MaxSDK-5.1.6/c74support/)
   c. INSTPATH to point to where your Max externals live
   d. change the ARCH= line to read only ARCH=i386
6. './build.sh max gcc'
7. Edit config.txt and comment out the line "SIMD=1"
8. './build.sh max gcc' (yes, again)
9. 'sudo ./build.sh max gcc install'
10. 'cd ../../MantaFlext'
11. '../extern/flext/build.sh max gcc'
12. '../extern/flext/build.sh max gcc' (again)
13. in MantaFlext/max-darwin create an empty folder called 'core'
14. '../extern/flext/build.sh max gcc' (again)
15. 'sudo ../extern/flext/build.sh max gcc install'

About

A library and set of applications to interface with the Snyderphonics Manta

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published