Product Specification


Use this Specification Sheet when specifying Ctrl for iPad in a tender document.


  1. All editing to be made in-app without reliance on external computer or network session.
  2. The application should be native to the hardware it is running on. A web browser or an app displaying remotely served content shall not be acceptable.
  3. The application and hardware should be capable of supporting a ‘Guided Access Mode’ or ‘Kiosk’ mode to ensure the hardware runs only this application.
  4. The appearance and content of the user interface may be customized by the user.
  5. The user interface may be used in either a landscape or portrait orientation
  6. The application shall display the user interface on the touch screen as soon as the application is launched.
  7. The application must support user permissions with passcodes to enter certain pages.
  8. The application shall store show data and the user interface configuration locally in non-volatile solid-state memory.
  9. Workspaces should be able to be exported in bundles (including all audio, video and image assets, custom themes ect. With the ability to export them locally.
  10. Workspace bundles should be able to be imported from the same or previous versions of the application.
  11. The Application shall be capable of providing show playback progress via the user interface.
  12. The Application shall be capable of monitoring the connectivity of multiple remote devices connected via Ethernet.
  13. The Application should contain a full user manual capable of being viewed whilst the application and host device is disconnected from the internet. This manual should be able to be hidden from end users of the system.


  1. The software should allow a live output for programming verification purposes.
  2. Each trigger event may be configured to initiate one or more command.
  3. It should be possible to create individual playlists with pre-delay, post-delay, loop, hold, follow and wait time settings.
  4. Playlists should be able to be triggered from different pages within the interface.
  5. Output protocols shall be able to be defined using a patching system to eliminate the need to re-enter the endpoint each time a string is defined.
  6. Output protocols should include:
    • MIDI (Note + Channel)
      • Note ON
      • Note OFF
      • Program Change
      • Channel Pressure
      • Key Pressure
      • Pitch Bend Change
    • OSC (float and string)
    • HTTP & HTTPS (Header & Body)
      • GET
      • POST
      • PUT
      • DELETE
      • OPTIONS
      • HEAD
      • PATCH
      • TRACE
    • TCP
    • UDP
    • sACN (Universe + priority + channel)
    • Audio control
      • Volume and Playback
    • Video Output ()
      • Support full screen video output with an appropriate AV adaptor
      • Per clip layering
      • Opacity
      • X & Y Positioning
      • X & Y Scaling
      • Master Opacity
  7. The application should support an input API method OSC & HTTP) to modify the state of buttons in the interface from an external system. This includes:
    • Remotely changing interface page
    • Enabling / Disabling the controls
    • Updating label descriptions
    • Changing control colour themes
    • Setting controls to flash

User Interface#

  1. User interface configuration features shall include:
    • Drag and drop placement of controls.
    • The ability to define the canvas size of each interface.
    • The ability to define each page canvas to snap each control position to a grid, or to position it in free space.
    • The option to create linear interfaces in a playlist format allowing the playback status of each action to be shown.
  2. Multiple pages of user interface controls with simple navigation.
  3. A library of page control layouts with push buttons, toggle buttons, sliders, steppers, rotary encoders, crossfaders.
  4. Toggle buttons that provide an option for only one button to be active at a time.
  5. Change the appearance of individual pages and controls by applying themes.
  6. Apply themes from the theme library, or create custom colour themes within the application.
  7. A side bar that can be shown or hidden.
  8. Assign a background image to each page with options to scale the image to fit within the application.
  9. Assign a background image to each button with options to scale the image to fit within the application.
  10. Assign icons to the background of each button within the application.
  11. Interface Background colour.
  12. Each control should be able to be stylised to have square or round corners.
  13. Assign local functionality to control buttons, e.g. change page, trigger a linear interface or audio.
  14. Modules for control of 3rd party external software over a network showing, thumbnails and live previews.