This update fixes a crash in Window Mode, improves the screen layout slightly and removes the navigation bar for true full screen viewing. Unfortunately I’ve had to remove a feature too, so let’s address that first.

Background running removed

I’ve always wanted DigiHUD to be able to run in the background. For my own use it’s great I can start the app, reset the values and drop it in my pocket knowing that my walk will be recorded. It’s caused some confusion though, especially for people who don’t expect it to carry on running when they hit Home, but generally it’s been seen as a great feature.

Google have recently, and quite rightly, started to crack down on what apps can do with the device Location. Starting in Android 10 (P), apps that need to access the device Location in the background must specifically request permission and only to perform a function that the app relies upon for normal operation. In August this year all new Play Store apps will be reviewed by Google to ensure they have a very good reason to access Location in the background, and in November all existing apps will be reviewed. Any apps that can’t meet the new requirements will have to stop using background location or be removed from the Play Store.

Even if you can justify using it, Google are placing restrictions on the frequency that background location can be received, here’s a quote from their guidance (linked to below):

If background location access is essential for your app, keep in mind that Android preserves device battery life by setting background location limits on devices that run Android 8.0 (API level 26) and higher. On these versions of Android, if your app is running in the background, it can receive location updates only a few times each hour.

Google Developer documentation

For a speedometer app, this frequency of updates is as good as useless. The majority of DigiHUD users are using Android 8 or later. I’m not prepared to provide a feature that I know is not accurate as this would undermine confidence in the app and have a negative impact on it’s reputation, so this has unfortunately forced my hand and I’ve removed background running from the app. I’m very unhappy about having to make this change but have no other option.

Improved layout

There’s an improvement to the speed digit layout as I felt the speed wasn’t taking up as much space as it could (or deserved). The digits can now resize to fill the space available. There’s still more to do in the future with regards to layout.

Show two digits under 100

Driving as I do in the UK there aren’t many occasions when I need a speedometer that goes above 100 mph. Travelling in France it was fine as I was regularly driving above 100 kmh. So, for day to day driving it’s pointless the app showing me three speed digits, especially in portrait mode where the digits are small anyway. That’s why I’ve added a new setting “Always show three speed digits?“. It’s unchecked by default, but if you always want three speed digits then just check it.

DigiHUD free

True full screen view

The navigation bar will slide out of view after a second or two to give a true full screen view of the app (removing the annoying bright bar which is distracting in nighttime use. Tapping the screen will show the navigation bar again. Available on supported devices.

Please get in touch via the contact form if you experience any issues with this release.

This patch addresses an issue with Window Mode freezing or crashing on some versions of Android. The details of the last release are below.

Background running removed

I’ve always wanted DigiHUD to be able to run in the background. For my own use it’s great I can start the app, reset the values and drop it in my pocket knowing that my walk will be recorded. It’s caused some confusion though, especially for people who don’t expect it to carry on running when they hit Home, but generally it’s been seen as a great feature.

Google have recently, and quite rightly, started to crack down on what apps can do with the device Location. Starting in Android 10 (P), apps that need to access the device Location in the background must specifically request permission and only to perform a function that the app relies upon for normal operation. In August this year all new Play Store apps will be reviewed by Google to ensure they have a very good reason to access Location in the background, and in November all existing apps will be reviewed. Any apps that can’t meet the new requirements will have to stop using background location or be removed from the Play Store.

Even if you can justify using it, Google are placing restrictions on the frequency that background location can be received, here’s a quote from their guidance (linked to below):

If background location access is essential for your app, keep in mind that Android preserves device battery life by setting background location limits on devices that run Android 8.0 (API level 26) and higher. On these versions of Android, if your app is running in the background, it can receive location updates only a few times each hour.

Google Developer documentation

For a speedometer app, this frequency of updates is as good as useless. The majority of DigiHUD users are using Android 8 or later. I’m not prepared to provide a feature that I know is not accurate as this would undermine confidence in the app and have a negative impact on it’s reputation, so this has unfortunately forced my hand and I’ve removed background running from the app. I’m very unhappy about having to make this change but have no other option.

Start on power connected

A while back Google stopped apps from creating a ‘listener’ that would run in the background listening for certain system events, in the case of DigiHUD Pro it was the event that let the app know when the power cable was plugged in. That broke the ‘Start on power connected’ feature.

Previously, apps could start a ‘Listener’ Service which would survive reboots, and therefore the app itself didn’t need to be run for the Service to start.

I’ve had to create a workaround for this by starting a service when the app closes (if the Setting is checked). As per Google’s guidelines the service adds a Notification so you can see that it’s running. Tapping the notification will also open the app. The notification also has a ‘close’ option to kill the service.

Unfortunately this means that the app has to have been started manually and closed since a reboot for it to detect when the power cable is connected.

A fix for ‘Close on power disconnected’ has also been added.

Improved layout

There’s an improvement to the speed digit layout as I felt the speed wasn’t taking up as much space as it could (or deserved). The digits can now resize to fill the space available. There’s still more to do in the future with regards to layout.

Larger digits make better use of the screen area.

Show two digits under 100

Driving as I do in the UK there aren’t many occasions when I need a speedometer that goes above 100 mph. Travelling in France it was fine as I was regularly driving above 100 kmh. So, for day to day driving it’s pointless the app showing me three speed digits, especially in portrait mode where the digits are small anyway. That’s why I’ve added a new setting “Always show three speed digits?“. It’s unchecked by default, but if you always want three speed digits then just check it.

Speed precision to 1/10th enabled

Google Map View

Fixed:

  • Google map would redraw the map completely when the location updated causing the map to flash. it appears that this could also cause the app to crash on some devices
  • Blue line indicating the route (appears when the route is being recorded) would draw from the equator to the current location
  • Map not re-initialised after screen rotation events
  • Routes viewed in Google Earth showed broken way-point icons

Feature descriptions added

I’ve added brief descriptive text to some of the dialog boxes. It’s not always clear what these features do so hopefully this will help.

Bug fixes

  • Found and fixed a bug that could stop some of the recorded routes being displayed. This was happening when trying to get the address from lat/lon coordinates.
  • Ensure that the timer and elapsed time (used in the calculation of average speed) continue regardless of whether location updates are happening. This should improve accuracy of the average speed.
  • Window Mode crashing

Minimum Android version increased to 16

The minimum version of Android that the app will now run on is 16. Earlier versions of android will keep the previous applicable version.

To help us improve our service DigiHUD Speedometer mobile apps collect and transmit the following information on an anonymous basis. This information falls outside of “Personal and Sensitive information” (link to Google’s documentation). 

Operating System, Date & time, Latitude, Longitude, Accuracy (GPS), SSID (network), BSSID (network), Internal MAC address (network), Bundle ID, Device Model, Device Manufacturer, Carrier Code (Android only), Carrier Name, Sim Code, Country, and Locale. This anonymous information is shared with third parties for their business purposes, including the creation of reports, market research and trend analysis. One of these third parties is Huq. Data shared with third parties does not contain information from which users can be identified and we will not provide additional information to such third parties that enables them to identify you. You can find a full description of Huq and what it does with the information collected via the app here.

Information you share with us with regard to general enquiries about the app or support with using the app will not be sent to third parties. 

So an updated version of DigiHUD Pro was released the other day to fix a couple of bugs and add some new features (take a look in the Play Store listing for the details).

I also was required by Google to ensure my apps target Android 8.0 if updated from 1st November 2018:

 

It’s taken so long to get this update out because Google have made it increasingly difficult impossible to support the later versions of Android and use a third-party development environment, which in my case was Eclipse. I’ve nothing against using Google’s Android Studio it’s just that everything was setup perfectly and I was happy the way it was.

I resigned myself to the fact I had to switch and set about migrating. Oh if only it was a one-click job! Being new to Android Studio meant having to learn how everything worked whilst I re-created the apps in it. What a nightmare that was.

I digress. I realise now that a simple run-through of the app just wasn’t enough and that I hadn’t understood the gravity of moving to the later APIs. Some things that have worked since day one are now broken and I must either find a way to fix them, or remove them.

Here’s an example.. You can get the app to start when the device is connected to power, and you can get it to close the app when it disconnects. It was really simple to implement using system ‘Broadcasts’ (think “Hey everyone, the power got connected”), and “Receivers” (“The power was connected, I need to do XYZ”). This has now changed, I believe to reduce the amount of processing apps do while they are idle in the background or when not running at all. It helps reduce battery use which, of course, is a good thing.

Unfortunately these were two of the features I didn’t think to test on an Android 8 or 9 device.

Hopefully the next update will be out soon.

 

 

I had an email from Eric Lee over at Hudly to let me know that the team at Hudly are working on a sleek new wireless model and it’s up on Kickstarter now.

Go check it out here: https://www.kickstarter.com/projects/ericshun/hudly-wireless-focus-on-the-road

DigiHUD looks great on it’s large 6.2″ display.

I received an email today from Hudly again thanking me for being a backer but also to say that backer’s units have now shipped.

I’m not sure how long it will take for my unit to make it’s way from the USA to the UK, hopefully not too long as I’m dying to get it installed and see first hand how well it works. I’ll probably have to pay import duty on it however.

I’m super excited to get my hands on Hudly, however I’m not sure yet if my Android LG G5 will be compatible with it as it uses MHL to connect Android devices. I’m sure I’ll be able to use my Galaxy SIII.

I’ll add a write-up on the unit to this blog after putting it through it’s paces.

 

Fancy getting Hudly?

You can get $50 off a Hudly until 17 May 2017 by using this link

 

As anyone who has tried to use DigiHUD’s HUD mode in the day will confirm, it’s not really usable because it get’s washed out to the point where it becomes invisible. Add to this the slight double image caused by the laminated glass and it’s a non-starter.

In order to work well in the day, commercially available HUD units have particularly bright displays (generally brighter than smartphone or tablet screens) and also a piece of slightly reflective film which is stuck to the inside of the windscreen. The film removes the double image and also allows the display to be seen in bright light.

Recently I picked up a piece of film from that popular Internet auction site to see if it improves DigiHUD’s HUD experience.

Here it is in the day.
20160826_194750_hdr

I’ve attached it up high on the screen because the rake of the glass would mean the film was a bit too much in my line of sight for comfort. I will at some point 3D-Print a holder for my phone to sit on the dashboard.

So for a few pounds it makes a world of difference to using HUD mode in the day.

Hudly is a new full-colour heads-up display system that’s raising funds on Kickstarter right now so that it can go into mass-production later this year.

It comprises a projector unit and a glass ‘combiner’ which is used to display the full colour projected image in front of the driver.

DigiHUDonHudly

DigiHUD, like other smartphone apps, works incredibly well with Hudly and we were so impressed to see it in action.

Hudly also connects to the vehicle diagnostic (OBD2) port to show information right from the ECU, like fuel quantity remaining, engine revs, outside temperature, mpg etc.

It’s recently been featured in the press, including TechCrunch, TopGear, Stuff.tv and GadgetFlow.

DigiHUD is proud to be a backer of Hudly. The Kickstarter, which tells you everything you need to know about Hudly can be found via this link.

Update: To help raise awareness of the campaign, the free version of DigiHUD now includes a simple popup which links directly to the Kickstarter. This one-time popup is shown the first time HUD mode is selected. It’s also available from the Menu.

 

I’ve swapped out the head unit in my new car for a brand I’d never heard of before – AutoPumpkin. It’s relatively low priced yet has plenty of features and connectivity options. I bought it because the unit that was in the car (a JDM Clarion) was a CD and Mini Disc player, but only Japanese Mini Discs..

I also wanted a DVD player to play movies on the rear roof mounted screen to keep the youngsters happy on long journeys. Having one that runs Android was also a win because I can run DigiHUD on a larger screen than my Galaxy S3s, and it just comes on automatically so no need to set it up when going for a drive. I play music over Bluetooth which can be controlled by my phone.

I plan to install a couple of blind-spot cameras later on which can be fed into the Pumpkin. It doesn’t have DAB radio (separete module is available) and the AV out is only for the DVD but overall I’m very happy indeed with the unit.

Android AutoPumpkin Quad Core

Android AutoPumpkin Quad Core head unit.