Buttons Wiring:
The user interface on the controller can be accessed in Ruby using a USB keyboard, a rotary encoder, or using 4 push buttons for: Menu, Cancel, Up and Down. There are also some optional buttons, that enable auxiliary functions in Ruby like starting a video recording, taking a picture, changing OSD layouts, changing camera settings on the fly and more. They are not mandatory, but make life easier and the user experience more enjoyable.Note: The user interface can be accessed and used now also using a rotary encoder. Please see the Peripherals section to see how to setup a rotary encoder.
If you choose to use buttons for interface navigation, you need to wire the buttons as in the pictures below. There is a common rail to all buttons, connected to 3.3v and one individual connection from each button to a GPIO pin on the Raspberry Pi:
Menu Navigation Buttons Wiring
Optional Buttons Wiring
You can assign what actions to do when pressing the Quick Actions buttons from the Preferences menu:
Quick Actions buttons
Other GPIO hardware connections:
There are few other hardware connections you can make to Ruby, that are optional, but can be used if needed.They are as follows:
* A LED that will blink when video recording is turned on (on the controller side);
* A LED that will blink when there are major hardware or software issues (on the controller side);
* A GPIO pin (GPIO 19) that you can use to force a Pi to boot as a vehicle/relay, even if it has no camera (on the vehicle side);
* A GPIO pin (GPIO 26) that you can use to force a Pi to boot as a controller, even if a camera is present (on the controller itself);
The wiring for those is as in the picture below:
Optional LEDs and buttons