Ollin

Integration

  • OSC - import OllinOSC sends and receives OSC messages over UDP, to and from TouchOSC, Max/MSP, TouchDesigner, and other apps. You read a message in draw() or bind it to a @Param.
  • OSCQuery - import OllinOSC publishes the sketch's @Param parameters as a namespace a control app finds on the network, reads, and builds its own controls from, with the values coming back over OSC at the same port number.
  • TUIO - import OllinOSC reads a tangible surface: touches, tagged pieces, and shapes arriving from a marker table, a touch wall, or a phone app over the protocol they all speak. Positions come in measured the way the canvas is, and each report keeps its id while it stays on the surface.
  • MIDI - import OllinMIDI reads from and sends to MIDI controllers and keyboards over Core MIDI. You read a control in draw() or bind it to a @Param. A TempoClock locks motion to MIDI clock.
  • Link - import OllinLink joins the shared tempo-and-phase session on the local network (the Link protocol most music apps support). The sketch then moves on the same beat and lands on the same downbeat as the whole rig, with no cabling or setup.
  • Serial - import OllinSerial reads a USB microcontroller's sensor lines. You read them in draw() or bind them to a @Param. It also writes lines back to drive servos and LEDs. The page covers IOKit discovery, automatic reconnection, and the classic physical-computing loop.
  • Bluetooth - import OllinBluetooth reads a Bluetooth Low Energy sensor and writes back to it. You read its values in draw() or bind them to a @Param. It lists the devices in range, and a connection waits for its device and comes back by itself. The standard's own values are already named, and the page covers the permission the first run needs.
  • MQTT - import OllinMQTT joins the message bus a building speaks. A sensor publishes a reading to a topic, and a sketch that subscribed to it reads that value in draw() or binds it to a @Param. The sketch publishes back the same way, which is how it drives a lamp or a machine. The page covers topics and their wildcards, what the devices write in a payload, the two service levels, retained values, the last will, and a connection that reconnects and resubscribes on its own.
  • Remote - import OllinRemote serves the sketch's @Param parameters to a phone or a second machine on the local network. They appear as a touch surface in any browser. Changes travel in both directions, so you can tune an installation from in front of it.
  • Room - import OllinRoom lets several machines on one network draw one work. They find each other by the room's name with no server, and they trade values and @Param parameters. They also agree on one clock, so motion stays in step. When the work is split across screens, each machine takes one seat, the API's name for its share of the work.
  • DMX - import OllinDMX drives stage lights and dimmers from draw() over Art-Net or sACN, through a DMXUniverse of 512 channels with named-fixture sugar. It also sends the canvas's own pixels to LED strips and matrices through an LEDMap, sampled on the GPU each frame. A lighting console can drive a sketch the other way, with its channels read in draw() or bound to a @Param.
  • Laser - import OllinLaser draws with a show laser from draw(). It turns your line work into the point stream a projector scans. That covers spacing, corner and blanking dwell, path order, and the point budget. An arm gate and a stopped-beam rule guard the output, and the stream goes to a network DAC or into an ILDA file.
  • Syphon - import OllinSyphon shares live visuals with other Mac apps, such as openFrameworks, Resolume, MadMapper, and VDMX. It publishes a sketch's frames as a Syphon source, and it draws an incoming Syphon feed as an Image.
  • Virtual camera - import OllinCamera feeds a sketch's frames to the Ollin Camera system camera. Webcam apps and browser tools then read the sketch as a live camera. Zoom, OBS, and Hydra through getUserMedia are examples.
  • Game controllers - import OllinController reads a game controller in draw(). Any pad gives you sticks, triggers, and buttons, and hardware that has them adds motion and a touchpad. Several players can play at once.
  • Haptics - import OllinHaptics adds touch under the hand beside the picture. You compose a pattern of taps and hums the way you would a phrase, and play it from draw(). On the trackpad, Ollin translates the pattern to the trackpad's three feelings and one strength. Where a full haptic engine exists, the pattern plays as written.
  • Screen capture - import OllinScreen takes any display, app, or window on the Mac as a live GPU-textured frame source. You draw and filter it like any image, and the vision trackers can read it. It is the non-cooperative counterpart to Syphon, and it includes the feedback tunnel that appears when a sketch captures the screen it is drawn on.

↑↓ move ↩ open