Close

Page 2 of 3 FirstFirst 123 LastLast
Results 11 to 20 of 21

Thread: IOIH control

  1. #11

    Default Re: IOIH control

    Hi
    Is the IOIH Control sending pay-load yet? I can connect, but receive only zeros... :-(
    3 * TIO1608 + AIC-128 + X-Touch + Dante -> AES + DADC-144DT

    SATlive is my measurement software
    DIN 15905-5 (German SPL Limit)

  2. #12

    Default Re: IOIH control

    The IOIH is currently only working with the Montarbo prototype boxes which never reached the market.

    Bob L

  3. #13

    Default Re: IOIH control

    Hi Bob
    Thanks for your answer.
    I've set up a TCP server listening on the port specified in the ioih setup.
    It seems that SAC likes it an reports a successful connection.
    I also see data coming in every time I change a setting in the IOIH control.
    But ... all data seem to be zeros.
    So I think there are three possiblities.
    First SAC does not send real data, second I'm doing something wrong, third SAC needs a certain reply during connection to set up correct data format to send.

    Why I'm asking for that? Currently I'm finishing the Dante(R) version of my gain - control SAC plugin. It is working, but I'd prefer using a control interface integrated into SAC.

    Tomy
    3 * TIO1608 + AIC-128 + X-Touch + Dante -> AES + DADC-144DT

    SATlive is my measurement software
    DIN 15905-5 (German SPL Limit)

  4. #14

    Default Re: IOIH control

    Here is the protocol developed with Montarbo... it worked very well.

    Bob L


    SAC I/O Interface Hardware (IOIH) Control Protocol

    An I/O interface hardware box designed to be compatible with SAC control must present itself on the SAC ethernet standard network as an IP address and/or computer name. The address, and/or name should be adjustable and be able to be set in the box itself. The I/O port that it uses for communication over the network should also be adjustable and settable within the box. This can easily be done within a webpage style setup page reachable from any browser on the network by linking directly to the box base IP address. Other box specific parameters may be set in the same manner or with physical hardware controls on the box.

    The I/O box ethernet control port is used by SAC to adjust settings for mic preamp variables.

    The network communication is done using standard TCP/IP ethernet packets. SAC will open a socket to connect to the box over the specified I/O port and then begin its dialog for controlling the mic pre hardware itself. If multiple boxes can be cascaded for more channels, then the master box should handle all network communication and be able to slave the other boxes internally. SAC will only open one IOIH port to the master box and expect the master box to pass on proper channel data to the appropriate box.

    The protocol is simple and all data is passed as Intel Little Endian format; a set of small packets of data formatted as follows:

    DWORD (4 Bytes) - Command ID
    DWORD (4 Bytes) - Parameter Byte count of the data values that follow
    DWORD (4 Bytes) - Channel Number (Starts at 0)
    DWORD (4 Bytes) - Data Value

    The format can easily be expanded to handle label strings and other variations in the future where the actual data value might become a string of char bytes or other data. The overall format of the packet stays the same with the Parameter Byte count representing the number of characters in the string or number of bytes of data, instead of a single DWORD value.

    The Command IDs currently supported are:

    #define IOIH_CTRL_SET_MIC_GAIN 50000
    Values from +10db to +65db

    #define IOIH_CTRL_SET_LINE_GAIN 50001
    Values from 0db to +20db

    #define IOIH_CTRL_SET_MIC_LINE 50002
    Value 0 = MIC and 1 = LINE

    #define IOIH_CTRL_SET_48V 50003
    Value 0 = 48V Off and 1 = 48V On

    #define IOIH_CTRL_SET_PAD 50004
    Value 0 = Pad OFF and 1 = Pad ON

    #define IOIH_CTRL_CAPTURE_BLOCK_CMDS 50005
    Parameter Byte Count Set To Zero
    No Other Parameters Follow

    #define IOIH_CTRL_EXECUTE_BLOCK_CMDS 50006
    Parameter Byte Count Set To Zero
    No Other Parameters Follow

    Any box specific commands used for internal programming of the box should begin at 50100 or higher, or develop your own internal protocol that does not interfere with the SAC defined control protocol.

    As new commands are added to the protocol in the future, the current code should be capable of properly skipping unknown commands. Read the Command_ID***8230; if your code does not recognize it, then read the parameter count value and skip that number of bytes and begin reading the next command.

    The Block Commands are sent in front of and after a block of back to back commands that will need to process as quickly as possible, for instance when the hardware is initialized at the start of the program, or when a mix session is opened or when a scene is recalled that changes many controls at once. If your hardware is capable of instant command processing with no appreciable latency involved between commands, then you can skip over the Block ID commands and simply execute the block of commands as they come in one after the other. Otherwise, capture the following block of commands and then execute them all at once after the Block Execute command is received. Please do what is necessary to keep the actual latency of command execution as low as possible.


    Examples of the base commands:

    Set Mic Gain For Chan 1 To 20db:

    DWORD (50000)
    DWORD (08)
    DWORD (00)
    DWORD (20)


    Set Mic Gain For Chan 3 To 40db:

    DWORD (50000)
    DWORD (08)
    DWORD (02)
    DWORD (40)


    Set Line Gain For Chan 1 To 4db:

    DWORD (50001)
    DWORD (08)
    DWORD (00)
    DWORD (04)


    Set Chan 6 To Line Mode:

    DWORD (50002)
    DWORD (08)
    DWORD (05)
    DWORD (01)


    Set Chan 1 To Mic Mode:

    DWORD (50002)
    DWORD (08)
    DWORD (00)
    DWORD (00)


    Set Chan 10 48V Phantom ON:

    DWORD (50003)
    DWORD (08)
    DWORD (09)
    DWORD (01)


    Set Chan 3 Pad ON:

    DWORD (50004)
    DWORD (08)
    DWORD (02)
    DWORD (01)


    Start A Block Of Commands:

    DWORD (50005)
    DWORD (00)

    Command
    Data

    Command
    Data

    Command
    Data

    End And Execute The Last Block Of Commands:

    DWORD (50006)
    DWORD (00)

  5. Default Re: IOIH control

    Quote Originally Posted by TomyN View Post
    Currently I'm finishing the Dante(R) version of my gain - control SAC plugin
    Hi Tomy

    I've been looking into writing such a plugin myself, but I have not been able to find any documentation of the remote control protocol. Could you point me in the right direction? Or how have you learned the protocol?

    Best regards
    Peter Olsen

    Hardware: Asus Prime Z690-P D4, Intel Core i5-12600K, 8 GB ram, 500GB NVMe SSD, 2 RayDAT, 2 DSB2408 preamp/converters.
    OS: Windows 10. Buffer: 1X32.

  6. #16

    Default Re: IOIH control

    Hi
    @Bob THANK YOU!!!!
    @Peter O: I've just asked Yamaha support for that information. But I had to sign a contract that I must not communicate the specification.

    Tomy
    3 * TIO1608 + AIC-128 + X-Touch + Dante -> AES + DADC-144DT

    SATlive is my measurement software
    DIN 15905-5 (German SPL Limit)

  7. Default Re: IOIH control

    Quote Originally Posted by TomyN View Post
    @Peter O: I've just asked Yamaha support for that information. But I had to sign a contract that I must not communicate the specification.
    Ok, thank you for telling me.
    Peter Olsen

    Hardware: Asus Prime Z690-P D4, Intel Core i5-12600K, 8 GB ram, 500GB NVMe SSD, 2 RayDAT, 2 DSB2408 preamp/converters.
    OS: Windows 10. Buffer: 1X32.

  8. #18

    Default Re: IOIH control



    Proof of concept... :-)
    3 * TIO1608 + AIC-128 + X-Touch + Dante -> AES + DADC-144DT

    SATlive is my measurement software
    DIN 15905-5 (German SPL Limit)

  9. Default Re: IOIH control

    Nice :-)
    Peter Olsen

    Hardware: Asus Prime Z690-P D4, Intel Core i5-12600K, 8 GB ram, 500GB NVMe SSD, 2 RayDAT, 2 DSB2408 preamp/converters.
    OS: Windows 10. Buffer: 1X32.

  10. Default Re: IOIH control

    Quote Originally Posted by TomyN View Post


    Proof of concept... :-)

    Way to go Tomy!
    I hope this will be implemented into Sac ;-)


Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •