Overview
Explore features and capabilities of Hudiy.
Explore features and capabilities of Hudiy.
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:
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 hardware. Thanks to the extensive Raspberry Pi ecosystem, you can choose hardware such as audio devices, screens, or controllers that perfectly match your needs.
For more detailed documentation visit our GitHub page.
Mandatory:
Optional:
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:
Supported Key Bindings:
right arrow
up arrow
down arrow
left arrow
escape
1
2
h
t
m
o
p
g
j
f
x
c
v
n
b
Actions are the primary trigger mechanism in Hudiy. Actions serve as triggers for:
Actions can be triggered through buttons, widgets, overlays, or API.
Hudiy follows the guidelines of Material 3 Design.
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.
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.
See the Material Theme Builder for a live preview of colors based on the selected source color.
Hudiy allows you to define a custom image file as the background for each menu in both dark and light themes.
Menus are identified by their corresponding actions.
The applications menu serves as the primary interface for launching actions. The applications menu has a default structure that can be fully customized.
All items in the applications menu can be organized into categories, though this is not mandatory.
Each menu item has a configurable label, icon, category, and associated action.
Shortcuts for frequently used actions can be placed on the bottom bar.
Each shortcut has a configurable icon and an associated action.
The available space on the bottom bar can be used for shortcuts, but it is limited by the status icon container.
Hudiy supports emulation of an Android Auto-capable head unit. Android Auto can be connected via both USB and Wi-Fi.
For wireless connections, Hudiy can create a Wi-Fi hotspot that the phone connects to in order to stream projection data.
Alternatively, it is also possible to use an existing external Wi-Fi network instead of the built-in hotspot.
Hudiy can retrieve media metadata and navigation information from Android Auto, and exposes this data through the API.
CarPlay projection is served via CarlinKit CPC200-CCPA dongle. CarlinKit CPC200-CCPA supports both USB and Wi-Fi connections.
Hudiy can retrieve media metadata from CarlinKit CPC200-CCPA, and exposes this data through the API.
Hudiy exposes an API for external systems to retrieve data, perform actions, and integrate with application features.
There are two endpoints exposed by Hudiy:
Both endpoints use Protocol Buffers for communication protocol definition.
API Features:
All custom applications, widgets, and overlays written in HTML/JavaScript are displayed in the Hudiy interface using an embedded web view based on the Chromium engine.
The web view can display local HTML files or load web pages from a provided URL.
All web views can communicate with Hudiy via its API. Hudiy also exposes a special hudiy
object with a set of callbacks and properties that can be used to match the current UI theme or handle input events.
Additionally, Hudiy integrates with the Media Session API to control audio focus and playback, and to obtain media metadata.
Note: DRM support plugins are not included with Hudiy, are untested, and must be configured manually by the user.
For deep integration of HTML/JavaScript elements, Hudiy delivers UI-relevant key events (e.g., directional keys, selection keys) via callbacks, and allows direct touch event handling through the Chromium engine to provide a consistent way of controlling the interface.
Web view elements can be controlled using both touch and key events. Handling key events is optional in web views, but to ensure the best consistency with the native UI, it is recommended to implement it.
Touch events are handled directly by the Chromium engine, whereas key events are delivered to the web view via a set of dedicated callbacks provided by the application.
Users can switch between touch and key input at any time. Both the switch event and the current input method are exposed via callbacks and properties in the hudiy
object.
Functionalities of the Hudiy can be extended by custom applications. You can create your own applications in HTML/JavaScript and integrate them with Hudiy using Web view.
Custom applications can be used, for example:
… and much more.
Note: The integration of any vehicle-specific features is the responsibility of the user.
You can also load a link to any web page, such as YouTube Music, and use it as a player for your favorite music.
Dashboards are customizable screens for arranging and displaying widgets. Each dashboard can present different types of information or controls, such as real-time data, system status, media playback, or sensor readings. Multiple dashboards can be created, modified, and switched between for different use cases.
Hudiy includes predefined widgets, but users can also create their own using HTML/JavaScript, and add them to the dashboard as web views.
Widgets are part of the dashboard. Hudiy includes predefined widgets such as:
Widgets can also load a local HTML file or a web URL in a web view.
Widgets visible on the dashboard have two width options (narrow and wide) and three height options (small, medium, and large).
Overlays are interface elements that appear on top of all other content. They can, for example, provide data display and quick-access controls.
Custom overlays can be created in HTML/JavaScript and displayed in web views.
Each overlay can have a custom width, height, and screen position (x, y). It can be repositioned using drag-and-drop gestures, the Left, Right, Up, and Down key strokes.
Hudiy includes two built-in overlays: volume controls and navigation.
Overlays can be also used to create split-screen layouts, where, for example, the native UI is shown on one side (e.g., the left) and the overlay is shown on the other side (e.g., the right), displaying additional information or controls.
Hudiy exposes configuration options for two types of sinks: the volume sink and the playback sink. Separate sinks can be configured for audio playback and volume control.
This separation allows greater flexibility — for example, users can route audio through a virtual sink provided by a PipeWire plugin (such as the equalizer or other audio effects), while controlling volume on a different sink directly associated with a physical audio device.
Based on the PipeWire configuration, Hudiy can detect the following speaker setups:
Stereo
FRONT_LEFT, FRONT_RIGHT
4.0
FRONT_LEFT, FRONT_RIGHT, REAR_LEFT, REAR_RIGHT
4.1
FRONT_LEFT, FRONT_RIGHT, REAR_LEFT, REAR_RIGHT, SUBWOOFER
Depending on the detected setup, it is possible to control balance, fade, and subwoofer balance in the audio settings.
The equalizer is implemented as a PipeWire plugin.
The equalizer features 15 adjustable frequency bands, allowing precise control over the audio spectrum. Each band’s gain can be individually configured to shape the overall sound. This allows for custom tuning or the use of predefined equalizer presets.
Equalizer presets are defined in the configuration file. Unlimited equalizer presets can be defined.
Hudiy supports playback from multiple audio sources, including:
For each audio source, Hudiy attempts to retrieve metadata such as artist, album, title, duration, and cover art. In the case of FM Radio, it can also decode RDS data, including Programme Service and Radio Text.
If cover art is not available from the source metadata, Hudiy can request it from a client connected via the API, using the artist, album, and title as search parameters.
RDS decoding can be enabled or disabled through the configuration.
Hudiy supports Bluetooth with A2DP and AVRCP for media playback and HFP for hands-free calling. The application can also access contacts and call history on a connected phone.
Using the companion app, Hudiy can also receive notifications from the Android phone and display them on the screen.
Bluetooth audio, including A2DP for high-quality media playback and HFP for hands-free communication, is managed by PipeWire. PipeWire handles audio routing, synchronization, and system audio integration.
You can pair and unpair Bluetooth devices directly in Hudiy.
Hudiy displays the camera feed on the screen using GStreamer. The camera feed takes precedence and, when active, is shown above all other visible elements.
The visibility of the camera feed surface can be controlled through corresponding actions or the API.
Camera feeds can alternatively be displayed using web views and the MediaDevices API.
This site uses cookies. By continuing to browse the site, you are agreeing to our use of cookies.
Accept settingsHide notification onlyWe may request cookies to be set on your device. We use cookies to let us know when you visit our websites, how you interact with us, to enrich your user experience, and to customize your relationship with our website.
Click on the different category headings to find out more. You can also change some of your preferences. Note that blocking some types of cookies may impact your experience on our websites and the services we are able to offer.
These cookies are strictly necessary to provide you with services available through our website and to use some of its features.
Because these cookies are strictly necessary to deliver the website, refusing them will have impact how our site functions. You always can block or delete cookies by changing your browser settings and force blocking all cookies on this website. But this will always prompt you to accept/refuse cookies when revisiting our site.
We fully respect if you want to refuse cookies but to avoid asking you again and again kindly allow us to store a cookie for that. You are free to opt out any time or opt in for other cookies to get a better experience. If you refuse cookies we will remove all set cookies in our domain.
We provide you with a list of stored cookies on your computer in our domain so you can check what we stored. Due to security reasons we are not able to show or modify cookies from other domains. You can check these in your browser security settings.
We also use different external services like Google Webfonts, Google Maps, and external Video providers. Since these providers may collect personal data like your IP address we allow you to block them here. Please be aware that this might heavily reduce the functionality and appearance of our site. Changes will take effect once you reload the page.
Google Webfont Settings:
Google Map Settings:
Google reCaptcha Settings:
Vimeo and Youtube video embeds:
You can read about our cookies and privacy settings in detail on our Privacy Policy Page.
Privacy Policy