Soft66lc FTDI driver issues in Mac Os

Notes: Since Mavericks, the Soft66lc SDR external has not been working in Max. Although I was not able to update the external, there is a temporary workaround.

Mac OS is hijacking the FTDI USB device with its own driver. You can unload the driver from terminal:

sudo kextunload -bundle

To reload the driver use “kextload”.

Here is  article from Sparkfun with details about this workaround:

And a more elaborate workaround that removes the Apple driver:

Notes about latency and FTDI

The real solution involves using the new Apple driver to communicate with the device:

Or spoofing the driver with a codeless kext:




ep-426 Interactive video – Spring 2015 week 1

Interactive video programming and performance



Information between words: “Palin Biden Silences” David Tinapple, 2008:

“We used to be Friends” By Benjamin Roberts:

Reverse engineering example: Naoto Fushimi

frame sub
vizzie –
case study
attributes : attrui


Read Jitter tutorials 1-3
  • Playing a quicktime movie
  • Create a Matrix
  • Math Operations on a Matrix

Also, be familiar with the difference between messages, attributes, and arguments with Max objects

Do the lessons in Max 7 that use video and computer graphics
  • fantastic sounds
  • RGB music
  • geometric dreams
Reverse engineer a prototype of one of the examples shown in class

“Palin Biden Silences” or “We used to be Friends”

Either sketch out the design, or make an example using Vizzie that demonstrates some aspect of the process.

ep-341 Max/MSP – Spring 2015 week 1

Programming interactive audio software and plugins in Max/MSP



  • Making prototypes
  • Connecting things
  • Building tools
  • Design
  • Reverse engineering
  • DSP, plugins
  • Video and computer graphics
  • Experiments



leap motion
midi osc thing / chat
frame subtraction
voice cancellation thing
max for live – granulator or convolution reverb

show basics of max
make a spectrum analyzer
make a pitch detector tweet thing


Read Max tutorials 1-4
  • Hello
  • Bang!
  • Numbers and Lists
  • Metro and Toggle
Build a control panel that does nothing

in Max. It should look amazing. It should be the coolest control panel you can imagine. Use any objects, colors, shapes that you can find. But… it shouldn’t actually control anything.

Be ready to show it in class next week.

Do at least two of the built-in lessons in Max 7

Pick any two.

Jitter reverse engineering case study – part 1

Case study: Adapting and transforming an interactive video performance.

under construction

Video and programming by Naoto Fushimi

Here is a case study of how you might approach an interactive video project. For example, if you had an opportunity to design a realtime visualization tool for a band.


Knowing that cool video things can be designed with Max/MSP/Jitter, I opened up Google web search and typed in: jitter max

Here are the results:

Screen Shot 2015-01-18 at 12.00.05 PM

The second entry looked interesting: [Share Patch] Simple Audio Reactive Set [Max/MSP Jitter]. (It is the cool video at the top of this post). There is a link to the Max patch in the video description – but the link is broken.  So I entered the title of the video into Google: Share Patch Simple Audio Reactive Set

Here are the results:

Screen Shot 2015-01-18 at 12.02.12 PM

The second entry is a link to the Cycling 74 forum. Here I was able to find a link to a modified version of Naoto Fushimi’s Max patch – in a post by Giorgio.

Understanding the Max patch

Screen Shot 2015-01-18 at 9.14.08 PM

It appears that audio input is supposed to trigger the interactive graphics. But immediately on starting the audio, it begins to feedback, and there is apparently no way to stop it. I notice there is an ezadc~ object as well as an IO abstraction – but can’t quite see how they are hooked up due to the maze of segmented overlapping patch cords.

By selecting everything (<cmd> a) you can restore normal patch cords by selecting Arrange | remove all segments. After doing this, it appears that the ezadc~ is redundant, so I deleted it. Now the patch looks like this:

Screen Shot 2015-01-18 at 9.58.07 PM

Much easier to understand. In the IO abstraction I loaded an audio file and then was able to get graphic output by toggling on the metro at the top of the patch and using the 3 toggles in the center of the patch.

Screen Shot 2015-01-18 at 10.01.08 PM

It works, but how?



3 openGL subpatches

rotatexyz message


ep-426 syllabus – Spring 2015

Interactive video programming and performance

Spring 2015

teacher: Tom Zicarelli –

You can reach me at:  [email protected]

Office hours: Tuesday 1-2 PM, or Tuesday 4-5PM, at the EPD office #401 at 161 Mass Ave. Please email or call ahead.

Assignments and class notes will be posted to this blog: before or after the class. Search for: ep-426 to find the notes

Examples, software, links, and references demonstrated in class are available for you to use. If there is something missing from the notes,  please ask about it. This is your textbook.


Everybody calls this course “The Jitter class” – referring to Max/MSP jitter from Cycling 74. You will learn to use Jitter. But the object is to create interactive visual art. Jitter is one tool of many available.

The field of interactive visual art is constantly evolving.

After you take the course, you will have designed projects. You might design a new tool for other artists. You will have opportunities to solve problems.  You will become familiar with how others make interactive art. You will explore the connection between sound, video, graphics, sensors, and data. You will be exposed to to a world of possibilities – which you may embrace or reject.

We will explore a range of methods and have opportunities to use them in projects. We’ll look at examples by artists – asking the question: How does that work?

Topics: (subject to change)

  1. Jitter
  2. Matrixes
  3. Reverse engineering
  4. Visualization of audio
  5. Visualization of live data, API’s
  6. Video analysis (realtime)
  7. Video hardware and controllers
  8. Prototyping
  9. Video signal processing
  10. OpenGL
  11. Other tools: Processing, WebGL, Canvas, 2d graphics
  12. Portfolios
  13. Live performance

Grading and projects:

Grades are based on two projects that you will design – and class participation. Please see Neil Leonard’s EP-426 syllabus for details. I encourage and will give credit for: collaboration with other students, outside projects, performances, independent projects, and anything else that will foster your growth and success.

I am open to alternative projects. For example, if you want to use this course as an opportunity to develop a larger project or continue a work in progress.

Reference material