Hudiy
Official repository of the Hudiy project. Hudiy is an application that helps you build your own head unit for your vehicle.
Install / Use
/learn @wiboma/HudiyREADME
Description
Table of Contents
- Introduction
- Supported platforms
- Requirements
- Interface
- Theming
- Actions
- API
- Menu
- Shortcuts
- Web view
- Applications
- Dashboards
- Overlays
- Bluetooth
- Audio
- Reverse Camera
- Android Auto
- CarPlay
- Updating
- Multiple screens
- Companion app
- Splash
Introduction
To get Hudiy, visit our website at hudiy.eu
Hudiy is an advanced software designed to help you build and expand your own custom infotainment system. It provides core functionalities such as communication via the OBD-II interface, hands-free calling, multimedia playback, Android Auto, CarPlay, and much more.
Hudiy supports extensive customization including:
- customizing the appearance of the UI
- creating your own menus
- adding shortcuts to frequently used functions
- creating custom applications written in HTML/JavaScript that can be fully integrated with Hudiy
- creating custom dashboards and integrate your own widgets written in HTML/JavaScript
- creating custom overlays written in HTML/JavaScript
Hudiy exposes an API for external systems to retrieve data, perform actions, and integrate with application features. It also provides a special JavaScript object, hudiy, to user-created HTML/JavaScript elements to enable even deeper integration with the application.
The Hudiy application is designed to work on Raspberry Pi and x86_64 hardware. Thanks to the extensive Raspberry Pi/Linux ecosystem, you can choose hardware such as audio devices, screens, or controllers that perfectly match your needs.
Supported platforms
Currently, Hudiy supports the x86_64 platform and selected Raspberry Pi models. For each of these platforms, we have prepared detailed descriptions in dedicated documents:
Requirements
Detailed requirements are provided in the document dedicated to a specific platform:
Interface
The interface automatically scales to screen resolution and supports widescreen, standard, and multi-screen configurations.
The application window can operate in fullscreen mode or be configured with a specific size. Elements such as Android Auto projection, CarPlay projection, the reverse camera view, and overlays can each be assigned custom width, height, and x/y coordinates to allow precise positioning on the screen.
The interface can be controlled using both touch and key events. Navigating via keys is mapped to the following events:
- Scroll left
- Scroll right
- Move focus left
- Move focus right
- Move focus up
- Move focus down
- Go back
- Trigger
Supported Key Bindings:
- Right
right arrow - Up
up arrow - Down
down arrow - Left
left arrow - Back
escape - Scroll left
1 - Scroll right
2 - Trigger
enter - Home
h - Toggle input focus (between projection, native UI and overlays)
t - Voice assistant (for projections)
m - End voice call
o - Answer voice call
p - Phone menu
g - Go to media player
j - Navigation menu
f - Play
x - Pause
c - Previous media
v - Next media
n - Toggle play/pause
b


















Theming
Hudiy follows the guidelines of Material 3 Design.
Icons
All icons used in Hudiy are defined in fonts to ensure perfect scalability across various resolutions.
You can provide your own font with icons and use it in configured shortcuts or menus.
See Main Configuration – Appearance for details on configuring custom fonts.
Colors
Material 3 Design defines two themes: dark and light.
For both dark and light themes, you can define a source color and set the contrast level.
<br><br>
<br><br>
<br><br>

See the Material Theme Builder for a live preview of colors based on the selected source color.
Actions
Actions are the primary trigger mechanism in Hudiy. Actions serve as triggers for:
- displaying menus
- displaying dashboards
- launching applications
- controlling volume
- controlling audio playback
- controlling voice calls
- controlling the reverse camera
- controlling Android Auto and CarPlay projections
Actions can be triggered through buttons, widgets, overlays, or API.
Defining an action
Each dashboard or application you define must also provide the name of an action that will trigger it. In this context, an action can be considered an identifier.
Another way to define an action is through the API. You can register an action via the API and configure, for example, a shortcut to trigger it. When triggered, Hudiy dispatches the action and notifies the client that registered it.
The name of an action must be unique. If you declare more than one action with the same name, the behavior is undefined.
List of predefined actions
Hudiy includes the following predefined actions:
-
applications_menu:
Display the main menu -
settings_menu:
Display the settings menu -
autobox_settings:
Display the Autobox settings menu -
theme_settings:
Display the theme settings menu -
android_auto_settings:
Display the Android Auto settings menu -
backup_cam_settings:
Display the reverse camera settings menu -
appearance_settings:
Display the appearance settings menu -
application_settings:
Display the application settings menu -
sound_settings:
Display the sound settings menu -
equalizer_settings:
Display the equalizer menu -
notification_settings:
Display the notification settings menu -
overlay_settings:
Display the overlay settings menu -
output_volume_up:
Increase output volume by the configured step -
output_volume_down:
Decrease output volume by the configured step -
toggle_output_muted:
Mute or unmute output audio -
input_volume_up:
Increase input volume by the configured step -
input_volume_down:
Decrease input volume by the configured step -
toggle_input_muted:
Mute or unmute input audio -
equalizer_preset_settings:
Display the equalizer presets menu -
background_applications:
Display a menu with a list of applications running in the background -
storage_music_player:
Display the storage music player menu -
storage_music_browser:
Display the storage music browser menu -
storage_music_playlist:
Display the storage music playlist menu -
now_playing_next_track:
Switch to the next track in the current player -
now_playing_previous_track:
Switch to the previous track in the current player -
now_playing_toggle_play:
Toggle play/pause in the current player -
now_playing_pause:
Pause playback in the current player -
now_playing_play:
Start playback in the current player -
now_playing_go_to_player:
Display the current player menu -
fm_radio_player:
Display the FM radio player menu -
fm_radio_presets:
Display the FM radio presets menu -
a2dp_music_player:
Display the A2DP (Bluetooth) music player menu -
status_icon_details:
Display a menu with descriptions of status icons visible on the bottom bar -
contacts:
Display the contacts menu -
favorite_contacts:
Display the favorite contacts menu -
calls_history:
Display the call history menu -
dialpad:
Display the dialpad menu -
active_call:
Display the active call menu -
autobox_player:
Display the Autobox player menu -
resume_autobox_projection:
Resume projection from the Autobox (CarPlay) device -
about_autobox_device:
Display a menu with details about the Autobox device -
connect_autobox_wifi:
Request a wireless connection to the phone from the Autobox device -
resume_android_auto_projection:
Resume Android Auto projection -
android_auto_player:
Display the Android Auto player menu -
connect_android_auto_usb:
Initiate a USB connection to Android Auto -
connect_android_auto_wifi:
Initiate a wireless connection to Android Auto -
quit_android_auto:
Request to quit the Android Auto projection -
answer_call:
Answer an incoming voice call -
end_call:
End the current voice call -
remove_paired_devices:
Display the menu to remove Bluetooth paired devices -
pairing_menu:
Display the Bluetooth pairing menu -
show_reverse_camera:
Display the reverse camera feed -
hide_reverse_camera:
Hide the reverse camera feed -
quit_hudiy:
Quits Hudiy application -
go_back:
Triggers back action on native UI -
go_home:
Triggers ho
Security Score
Audited on Mar 30, 2026
