Skip to end of metadata
Go to start of metadata

Issue:

I would like to create my own application to control the Iconasys 360 Product Photography Turntable. The SDK Is available for Iconasys Silver and Platinum Series Turntables.

OS versionHow To Build
Windows

Steps for building your application with our Turntable SDK (we added a IconasysTurntableTest.cpp file as an example of how to use the Turntable SDK)

Add to the C++ compiler include directories option these paths:
1. "include" dir from our zip package
2. "include/ShutterStream" dir from our zip package

Add to the linker library search these paths:
1. "lib" dir from our zip package

MacOS
Linux

Install the FTDI drivers. This is needed only if you don't have ShutterStream already running with the turntable. If ShutterStream already works, then the drivers are installed and you can skip this step:

OSDriversNotes
Windowshttps://iconasys.com/Downloads/IconasysTurntableController/Drivers/D2XX/CDM21228_Setup.exe
Machttps://iconasys.com/Downloads/IconasysTurntableController/Drivers/D2XX/D2xxHelper_v2.0.0.pkgSee also: Mac Turntable Troubleshooting
Linux

If running on Linux then proceed as follows:

  1. After unzipping the turntable controller software, switch to the Iconasys Turntable Controller location.
  2. Run the command: sudo ./IconasysTurntableController (or you can add usb permission to standard user if sudo is not permitted)
  3. If you receive the message "Turntable not opened", the kernel automatically loaded another driver for the FTDI usb device, so you need to unload them as follows:
    1. sudo rmmod ftdi_sio
    2. sudo rmmod usbserial
No driver in Linux, just the steps listed.

Solution:

The Platinum and Silver Series Iconasys Turntable SDK is available in the table below.

Operating SystemCompilerSDKNotesRelease Date
Linuxx86_64 - gcc 9.3.0
arm-v7 - gcc 8.3.0
IconasysTurntableSDK.3.0.29876-l.tar.xz
  • Added Debug library for ARM arch
  • Update the checking if turntable is (really) opened
  • Fix the number of steps for ExtraLarge and LargeMarkII turntables
March 29th, 2021
Linuxx86-64 - gcc 9.3.0IconasysTurntableSDK.3.0.29796-l.tar.xz
  • Updated to latest FTDI chip library
  • Added the Debug libraries
March 4, 2021
MacOSXcode 9.3IconasysTurntableSDK-3.0.29521-mac.zip
  • Remove the UI dependencies
  • Added the debug libraries
January 6, 2021
WindowsVC++ 2015IconasysTurntableSDK.3.0.29520-win.zip
  • Remove the UI dependencies
  • Added the debug libraries
January 6, 2021
Linux

x86-64 - gcc 9.3.0
ARM v7 - gcc 8.3.0

IconasysTurntableSDK.3.0.29447-l.tar.xz
  • Added support for ARM v7 architecture, tested on Raspberry Pi OS & hardware
  • Remove the Qt dependencies (if the UI from stand-alone controller application is needed, please contact us, else you'll need to implement your own UI)
November 25, 2020
WindowsVC++ 2015IconasysTurntableSDK.2.0.28614-win.zip
  • Minor fixes
  • Works with VC++ 2015, 2017 and 2019
February 18, 2020
MacOSLLVM 8.0 (Xcode 8.2.1)IconasysTurntableSDK.2.0.28613-mac.zip
  • Initial version
  • Works with Xcode 9, 10, 11
February 18, 2020
Linuxgcc-7.4.0IconasysTurntableSDK.2.0.28579-l.zip
  • Minor fixes
February 18, 2020





WindowsVC++ 2013IconasysTurntable.2.0.26867-win.zipAny references to DC motors refer to the USB Iconasys Turntables and any reference to stepper motors refer to the Platinum series turntables.December 14, 2018
WindowsVC++ 2015IconasysTurntableSDK-VC2015.zip February 04, 2019
Linuxgcc-7.3.0IconasysTurntableSDK-2.0.27362.zip

Starting with this version we added support for UI turntable configuration.

  • For linux operating system we don't develop any native UI support.
  • Instead we use Qt framework under LGPL license
  • Hence our turntable SDK is linked with Qt library
  • For building & linked your application with our turntable SDK, you need to download our Qt framework version used in Turntable SDK

Additional build steps for linked with Qt:

    • Add to the C++ compiler include directories option these paths:
      - "include" dir from Qt framework distribution
    • Add to the linker library search these paths:
      - "lib" dir from Qt framework distribution


Now you should have your binary application. But it does not start at this point because it does not find the necessary libraries.

You can tell the app where to search for dependent libraries in two modes:

  1. Using LD_LIBRARY_PATH environment, put in this environment variable the "lib"s folders from C++ linker library search from above .
    OR
  2. Copying the needed libraries where your executable is located
    - the two libraries from "lib" folder from our zip package
    - these libraries from Qt framework: libQt5Core.so.5, libQt5Gui.so.5, libQt5Network.so.5, libQt5Qml.so.5, libQt5Quick.so.5


At this point you should be able to run the your application:

sudo IconasysTurntableTest (or you can add usb permission to standard user if sudo is not permitted)

If you receive the message "Turntable not opened", the kernel automatically loaded another driver for the FTDI usb device, so you need to unload them as follows:

  • sudo rmmod ftdi_sio
  • sudo rmmod usbserial

At this point you should be able to open the turntable and play with SDKfunctions.

March 07, 2019

Related articles