X-7E

U I / H U D D E S I G N E R

[under construction]

Introduction

This app is at an early stage of development. Please be patient and report any bug you might find :)

X-7E UI/HUD Designer is modular Android application in which you can design an interface from available components such as labels, GPS speed display, altitude, temperature, stopwatch, etc. All components can be customised, resized and placed anywhere on screen. Multiple different interfaces can be saved and it is possible to switch between them later.

Following screenshots are just a tiny fraction of possible interface designs created in the app. Whether you want a simple screen with big components displaying only relevant information or you prefer as much data on the screen as it can take, you can have it. Build interfaces for cars, motorcycles, outdoor activities, sports, games, hobbies, etc. Want an HUD for your car? Switch app to HUD/Reflection mode and reflect phone screen on a windshield.

Free vs Pro version

Free version:

  • no switching between interfaces

  • portrait orientation only (no landscape and automatic orientation)

  • maximum number of components is 12

Pro version:

  • saving multiple interfaces and switching between them

  • portrait, landscape and automatic orientation for each interface available

  • maximum number of components is 32 for each saved interface

Permissions

For application to function properly, it needs following permissions:

Location

  • approximate location (network-based)

  • precise location (GPS and network-based)

Other

  • prevent device from sleeping

Designing your interface

When you start the app for the first time, you are presented with an empty unnamed interface. To start designing an interface, click on menu button and click on Add component button.

Step 1: Open side menu

Step 2: Click on Add component button

List of all available components is displayed. Select the one you want to use by simply clicking on it. This selected component is then placed on a screen. Let`s add component which displays temperature measured by your phone. Scroll down to the Sensors class and click on Temperature component.

Step 3: Select a component

This component is now placed to our interface. You can adjust its size and change its placement. If you want to change placement touch the view near its center. If you want to make component smaller or bigger, touch it near the edge and drag it. When you have the component where you like it, click on Done button. Size and position of this component will be saved. It can be changed anytime later by clicking on Edit positions button in a side menu. Notice that when the position editing mode is enabled, thick blue border around the component(s) is displayed.

You can also have multiple instances of one component type.

When you want to remove an component, click on Remove button in the side menu.

Step 4: Edit component plamenet and size by dragging it with your finger. Click Done to finish.

Component customising

Each component has a set of visual properties which can be customised for each component individually, such as font used, text color, background color, borders, etc. Beside these properties, each component has its own specific preferences. For example GPS speed component has unit selection, GPS coordinates component has GPS format setting, stopwatch has formatting options of a time display etc. To edit these settings/options click on the Preferences button in a side menu, then click on a component which you want to edit.

Step 1: Open side menu

Step 2: Click on Preferences button

Step 3: Click on a component which you want to edit

Common settings for any component

Settings for specific component type (GPS speed)

Interface setting

Following settings are related to specific interface (the one which is currently displayed in the app), meaning it can be set differently for each interface. You can have different visual theme, background and orientation selected for each one differently. To access interface setting click on three dots in top right corner.

Access interface settings

Orientation

Each saved interface has its own orientation setting. By default each new interface screen is displayed only in portrait mode. However you can change this in an setting for active interface. When you first time use landscape orientation, all components you placed in portrait mode will be placed in one place, usually in top left corner. You need to adjust their positions and sizes to suit landscape orientation. This way, each interface can have its own layout of component for portrait and landscape orientation. And each can be customised differently.

Changing theme

Interface theme can be changed in interface settings. If you select different theme than default, all currently placed components will change and all components added later will use this new selected theme. Selecting different theme is only a small part of interface customization. You can further customise each component individually, however be aware that if you change theme after you customized some components, this customization will be overwritten using visual attributes of a selected theme. In such case you will be warned by the app before this change applies.

Switching between interfaces

Switching between multiple interfaces is supported only in PRO version.

Each interface can be saved and later loaded. This way you can build many interfaces and switch between them as you need. To save an existing interface, click on Save interface in a side menu and enter its name. Name will be then displayed in the top panel of the active interface.

To load saved interface, open side menu and click on Load/New Interface. Name list of all previously saved interfaces is displayed. Click on the one you want to load. If you want to create new click on the fist option Create new.

HUD/Reflection mode

App can be switched to HUD (Head-up display) / Reflection mode. In this mode, screen of the phone is mirrored/flipped. If you put phone in this mode under the vehicle`s windshield, interface is projected onto the windshield by reflecting the phone screen.

To enter HUD/Reflection mode, click on respective button in a side menu. App restarts and screen content is flipped. To exit this mode click back button on your phone.

Normal mode

HUD/Reflection mode

Components overview

All available components are organised to the following classes.

Text class

Label

Simple text label. Displays custom text. Can be used to mark things, describe layout components, quick note, etc...

Edit by click - If enabled, you can edit text by clicking on the component. If disabled, you can edit text of the component only in its preferences setting.

Text - Text displayed by the label.

Numbers class

Counter

Simple counter incremented by clicking on it. Useful to count things, events, points, etc... You can reset it or set it to specific value by using long click. You can also set its value to negative number.

Time class

Current time

Displays current time in 12 or 24 hour time format with or without seconds.

Time format - Select between 12 or 24 hour format.

Include seconds - Determines whether time should include seconds.

AM/PM - Determines whether time should include AM/PM designator. This can be set independently from 12/24 hour time format.

Stopwatch

This component act as an stopwatch. It can be starter by clicking on it. Click again and stopwatch will be paused. To reset stopwatch long click on it. Stopwatch remain active (if not manually paused) while app is in the background or even when app is closed. How is this done? Stopwatch component remembers time stamp of the moment it was started. The time displayed is computed as subtraction of current time and starting time. This way, you can turn your phone off and on and still get precise uninterrupted time measurement.

Fractions of seconds - Lets you set the stopwatch precision from seconds to thousandths of second.

GPS class

Coordinates

Displays actual GPS coordinates in a DMS or DD format. It can be used to remember specific GPS coordinates - use long click on this component to put it into hold mode. The displayed coordinates will remain frozen until you resume it by another long click.

Progress bar under the coordinates indicates actual GPS accuracy.

Format - select between available GPS formats.

Speed

This component displays your actual speed acquired from GPS sensor. Units of display can be changed in preferences. If enabled, top label displays maximal speed recorded.

Speed unit - select speed unit

Gauge maximum - You can set the circular gauge maximal limit. For example, if you are walking, you can set it to 10km/h, if you are using it in a car, you can change it to 100km/h, etc...

Top speed - Enables or disables top label showing top speed recorded. If you want to clear this value, long click on this component.

Altitude

Displays your actual GPS altitude.

Altitude unit - select altitude unit

Travelled distance

You can use this component to measure the distance travelled. You can pause / resume tracking by clicking on this component. If you wan to reset travelled distance to zero, use long click.

Unit - select travelled distance unit

Phone class

Battery level

Shows actual battery level of your phone.

Sensors class

G-force

This component displays acceleration measured by internal accelerometer sensor. Top label displays maximal recorded value and can be hidden in preferences. You can switch between G-force or m.s^(-2). Measurement includes gravity, thus while phone is stationary 1G( 9.81 m.s^(-2) ) is displayed. (Option to exclude gravity coming in upcoming release)

Unit - select acceleration unit

Gauge maximum - sets the circular gauge maximal value.

Gauge minimum - sets the circular gauge minimal value.

Highest value - Enables or disables top label showing highest value recorded. If you want to clear it, long click on this component.


Temperature

Displays actual temperature measured by your phone. (requires internal temperature sensor). Can be used to roughly measure ambient temperature.

Unit - select temperature unit

Gauge maximum - sets the circular gauge maximal value.

Gauge minimum - sets the circular gauge minimal value.

Not enough components? More will come, surely. Have a suggestion? Let the developer know.

Limitations

Since the phone storage and RAM are not (yet) infinite, limits must be placed to keep things under control. Current limit for components placed in an interface is set to 20 and maximum of saved interfaces is set to 10. Need more? Just let the developer know.