- What is it?
- Video
- How the Tornado effect was made
- Running the code
- CoreMidi
- Communications
- Minimum Requirements
- Optional Requirements
- Questions and Answers
- Links
- Things I'd like to know
- Things to change
The OP-1 is an amazing synthesizer from Teenage Engineering. One of the cool things about it are the effects, like NITRO(My Favourite), DELAY, GRID, PHONE, PUCH and SPRING. They all have a unique user interface, and I wanted to make my own for iOS, controlled by the OP-1.
Vimeo link: https://vimeo.com/60339682
The tornado swirls are created by calculating a bezier in 2d space, top-down. This 2d space is then rotated approximately 70 degrees on the x-axis. After rotation, I use CGPointApplyAffineTransform to work out the 2d CGPoint from the 3D rotation, I then draw the bezier using these points.
This line of code searches for and connects to the OP-1
[[MidiManager instance] findAndCreateOP1];
Turn on your OP-1 and go into MIDI mode Shift+Com->Option 2(CTRL)
Make sure the App is completely closed and not running, plug in the cable, then open the app.
If you get: "Accessory Unavailable: The attached accessory uses too much power", you need to restart your iPad, and charge your iPad/OP-1 to 100%. If anyone knows of a cable that can charge and use the camera connection kit at the same time, can they let me know?
OP-1 Settings - from CoreMidi
I've changed the code so that now it will pick up the OP-1 device automatically
I tried to use the Redpark cables (DB9 and DB9V) to connect to an iPod Touch 4th Gen, but I just couldn't get it to work. In the end I used a iPad Camera Connection Kit, this ONLY works on an iPad.
Camera Connection Kit
- OP-1 ->
- OP-1 (Mini-USB to USB Cable) ->
- iPad Camera Connection Kit ->
- iPad 2
Redpark Cable
When using the Redpark cable, this was my setup, it didn't work for me. I think the problem is that, there are too many adapaters.
- OP-1 ->
- OP-1 (Mini-USB to USB Cable) ->
- Female to Female USB Adapter ->
- USB to Serial Cable ->
- Female to Female serial adapter ->
- RedPark Serial to iPhone connector ->
- iPod Touch 4th Gen
- OP-1 - www.teenageengineering.com
- iPad - www.apple.com
- iPad Camera Connection Kit - www.apple.com
- Xcode - Mac App Store
- Redpark cable - www.redpark.com (Again, I couldn't get this to work, if you can get it working, please show me how!)
Why didn't you use OpenGL ES?
I don't know how to use it, and I wanted to play with CoreGraphics :-)
Why not draw the bezier in 2d space, then rotate the layer and be done with it?
Well, if you do that, the layer has no-depth and the bezier looks flat, doing it this way, the bezier appears to have depth.
- Can anyone get the Redpark cable working?
- Is there a cable that can supply power to the iPad/OP-1 with the camera kit connected?
- Change code to just use just us CALayers.
- Change frame rate configuration