Source selection buttons and rotary

MCP23017

Source select at startup

This requires the use of the MCP23017. When the MCP23017 (with address=0x00) is detected at startup, then the source selection by means of external input is enabled.

When source=systime and auto_start=1 (see configuration), then the source select is bypassed.

    1. A rotary encoder can be used for selecting the source.

    2. Two buttons <LEFT>/<RIGHT> can be used for selecting the source. Mapping on the rotary encoder behavior:

      • <LEFT>= CCW

      • <RIGHT>=CW

When the appropriate source is selected, then the <SELECT> button must be pressed.

Up to 8 led's can be used for showing the selection. The selection is also showed on all other supported displays.

The mapping for the buttons/rotary encoder is as following:

    • GPA0 -> Rotary encoder Pin A

    • GPA1 -> Rotary encoder Pin B

    • GPA2 -> Button <SELECT>

    • GPA3 -> Button <LEFT>

    • GPA4 -> Button <RIGHT>

    • GPA5 -> Button <START>

    • GPA6 -> Button <STOP>

    • GPA7 -> Button <RESUME>/<RESET>

The GPA pins are active low (connecting the other side of the button to ground).

The source select led's are mapped as following:

    • GPB0 -> led0 [source=ltc]

    • GPB1 -> led1 [source=artnet]

    • GPB2 -> led2 [source=midi]

    • GPB3 -> led3 [source=tcnet]

    • GPB4 -> led4 [source=internal]

    • GPB5 -> led5 [source=rtpmidi]

    • GPB6 -> led6 [source=systime]

    • GPB7 -> led7 - currently not used

The MCP23017 INTA must be connected to GPIO7 (pin 12).

Using the rotary for setting Start/Stop time

When in source select and Internal is selected then press <START> for changing the Start time and/or Frame rate. With pressing <START> there is toggle between editing the Start time and Frame rate.

With <LEFT>/<RIGHT> the cursor can be moved in the Start time. Then with the rotary encoder you can change the digit/tens.

Press <SELECT> for activating the selected/updated Start time and/or Frame rate.

Press <RESUME> for getting out of editing mode.

Skip Forward and Backward

After <STOP> is pressed or triggered, then with buttons <LEFT> or <RIGHT> the seconds are skipped as defined with skip_seconds=.