How do I setup a flat rate or fixed rate tariff?

posted 27 Apr 2019, 02:39 by Planet Coops   [ updated 27 Apr 2019, 02:43 ]

For flat rates, using the Custom Preset Wizard (Menu > Settings > Custom preset settings > Custom preset wizard) create a tariff with a flag drop of $0.00, $0.00 per mile and $0.00 per hour.  When the tariff is in use, use the extras to enter the variable flat rate charge.  At the end of the hire, total the fare by pressing the fare in time off/stopped mode and the extras (the flat rate) will be added.

If you have a tariff with a fixed rate, e.g. airport $40.00, create a tariff with a flag drop for the fixed rate ($40.00), $0.00 per mile and $0.00 per hour.

Can I connect to a Wi-Fi OBD2 adapter on iOS and still use mobile data?

posted 5 Oct 2018, 04:19 by Planet Coops   [ updated 5 Oct 2018, 06:53 ]

Yes, follow these steps:
  1. Connect your iPhone to the Wi-Fi network for your OBD2 adapter.
  2. Open the Settings app, select Wi-Fi then select the blue info icon to the right of your OBD2 Wi-Fi network.
  3. Make a note of both the IP Address and the Subnet Mask addresses.
  4. Set Configure IPv4 to Manual and enter only the IP Address and Subnet Mask addresses from Step 3.  Leave Router blank.

Can you recommend a particular device to use with Taximeter?

posted 19 Aug 2018, 04:55 by Planet Coops   [ updated 19 Aug 2018, 05:07 ]

We won't recommend a particular tablet or phone because each customer's environment is different and new hardware is being released all the time.  We would advise customers to thoroughly evaluate potential devices to ensure compatibility and stability of payment card readers, OBD2 adapters, roof light switches, GPS signal, etc. in their target environment before making a commitment.

What we can share, is a list of devices where customers have reported problems to us in the past:

Bluetooth interference/dropouts:
  LG G Pad X 8.0 LG-V521

System crashing and rebooting:
  Samsung Galaxy Tab 4 (7.0") SM-T230/SM-T231

GPS signal loss:
  Samsung Galaxy Tab A (2016, 7.0") SM-T280/SM-T285

What is data logging?

posted 10 Apr 2017, 08:56 by Planet Coops   [ updated 27 Apr 2019, 02:58 ]

The data logging/tracking feature is described on pages 29-31 of the user guide, and is currently only available on Android devices. 
The data logging feature costs a $1 per registered device per month with a minimum monthly charge of $10.  This is to help with our ongoing hosting and mapping costs.  We will invoice for this monthly in advance by PayPal.

Once registered, we will issue you with:
  • a log key which you enter into each device under Menu > Settings > Data log settings > Log key.  Set the AVL interval (GPS position updates) and Upload interval to appropriate values (the shortest update interval is 30 seconds) and then check Enable data logging to turn it on.
  • a username and password which you can use to sign into the tracking website.

The tracking and logging history are available by signing into with the username and password we provide.  Note that the server will automatically delete any data more than a week old and while we can't provide a service level guarantee, our service provider claims 99.9% uptime.

Please remember to set values under Menu > Settings > Operator settings > Driver's badge number and Vehicle identification number (e.g. plate) so that you can distinguish each vehicle in the tracking and history logs.

Are there any settings needed to comply with the BC, Canada soft meter rule?

posted 19 Mar 2017, 05:54 by Planet Coops   [ updated 30 Mar 2017, 11:52 ]

In order to comply with the British Columbia Passenger Transportation Board's BC Taxi Soft Meter Rule, please set your Operator name (taxi company name) and Vehicle identification number (unique taxi ID) under Menu > Settings > Operator settings.  As of Taximeter version 1.1.59, this information will appear on receipts and in the fare announcements at the start and end of the hire when the fare is totalled.

Unable to send a test email: Bad email username or password

posted 7 Apr 2016, 12:16 by Planet Coops   [ updated 11 Apr 2017, 00:20 ]

If you receive the following error while testing your Gmail settings in Taximeter:

Unable to send a test email: Bad email username or password

and you are confident that you are using the correct <user> username and password, then head over to Account Security Settings ( for the Gmail account in question and enable "Access for less secure apps".  This allows you to use the Google SMTP mail server for clients other than the official ones and would appear to resolve this issue.  Note that Taximeter securely connects to the Gmail SMTP server on port 465 using a TLS encrypted link.  You might have to wait up to an hour for the setting to take effect as it's rolled out across Google's infrastructure.

Taximeter API - Final Fare

posted 17 Mar 2016, 12:23 by Planet Coops   [ updated 19 Mar 2017, 05:59 ]

Where integrators have made mistakes in the past is in the way in which they've tried to capture the final fare information at the end of the ride.  Developers made assumptions that STOPPED mode indicates the end of the ride.  A transition to STOPPED does not indicate the end of the hire.  When STOPPED the meter will continue to calculate the fare based on distance only.  STOPPED mode doesn't imply END, it simply turns the time meter off.  The meter can be placed back into HIRED mode resuming the time meter.  It is only the transition from STOPPED to FOR HIRE that confirms the end of the hire.  To make it easy to detect this transition, Taximeter broadcasts an intent with extras containing the final fare information.  The correct way to pick up the values at the end of the ride (at the transition from STOPPED to FOR HIRE mode) is to register a broadcast receiver for an intent with the "com.planetcoops.intent.action.TAXIMETER_CHARGE" action which is broadcast when the ride ends, see in the Taximeter API Sample Project, e.g.

private static final String TAXIMETER_CHARGE_BROADCAST = 
private final BroadcastReceiver mReceiver = new BroadcastReceiver() {

public void onReceive(Context context, Intent intent) {
// currency, see ITaximeterService.getCurrency()
String currency = intent.getStringExtra("currency"); //NON-NLS

* The TAXIMETER_CHARGE Intent is broadcast when a charge is made (on transition
* from STOPPED to FOR HIRE modes) and will carry the final values for the hire.
if (TAXIMETER_CHARGE_BROADCAST.equals(intent.getAction())) {
Log.i(TAG, String.format(
                    "Taximeter Charge:
\nExtras: %s%.2f\nFare: %s%.2f\nTax: %s%.2f\n" +
                    "Total: %s%.2f
\nDiscount: %s%.2f\nTip: %s%.2f\n",
intent.getDoubleExtra("chargeable_extras", 0d),
intent.getDoubleExtra("chargeable_fare", 0d),
intent.getDoubleExtra("tax", 0d),
intent.getDoubleExtra("total_fare", 0d),
intent.getDoubleExtra("discount", 0d),
intent.getDoubleExtra("tip", 0d)
// Receive Taximeter updates
IntentFilter filter = new IntentFilter();
filter.addAction(TAXIMETER_CHARGE_BROADCAST); // Chargeable values
registerReceiver(mReceiver, filter);

How does the meter work?

posted 7 Mar 2016, 08:02 by Planet Coops   [ updated 24 Apr 2018, 09:04 ]

Let's explain how the soft meter works out the fare using the following tariff as an example.

    TARIFF 1
    BY DISTANCE for the first 220yds or part thereof ......$3.25
    For any succeeding 220yds or part thereof ................25c ($2.00 per mile)
    WAITING TIME - for every 29s or part thereof .............25c (52c per minute)

The meter charges for each section of the taxi ride in advance.  This is why the meter shows $3.25, the flag fall, even if you've not moved off yet.

In the conventional mode of operation when the meter is first put into HIRED mode, it charges $3.25, which buys either 220 yards of distance or 29 seconds of waiting time.

If you cover 220yds in less than 29s the meter will increment due to distance, if 29s pass before covering 220yds the meter will increment due to time.

Each subsequent 25c charge will buy either 220 yards or 29 seconds of waiting time.  Once again, if you cover 220yds in less than 29s the meter will increment due to distance, if 29s pass before covering 220yds the meter will increment due to time.

There is a speed at which your 25c is used up at exactly the same rate regardless of whether you calculate it by distance (220 yards) or time (29 seconds).  This is called the changeover speed and the meter uses up the 25c at the rate of 25c per 29 seconds below it, and 25c per 220 yards above it.

The changeover speed is worked out as:
    unit distance / unit time = 220yds / 29s = 7.59 yds/s to convert to mph we multiply by 2.04545 = 15.5 mph
What this means is that, above 15.5 mph, it doesn't make any difference what speed the taxi moves at, it costs 25c for each 220 yards.  However, below 15.5 mph, it costs 25c for each 29 seconds.

This is why the same journey can cost a slightly different amount, depending on any waiting time.

If you enable Menu > Settings > Custom preset settings > Charge distance and time concurrently, then every 220yds AND 29s the meter will increment.  In this mode of operation, the meter is charging for both distance AND time.  This setting is often used with the Use speed determined waiting time setting so that the time meter only ticks when travelling below a specified GPS/OBD speed threshold.

I am unable to get my OBD2 adapter to connect with the app it is blinking on SPD and says "Waiting for OBD...", do you have any help on this issue?

posted 30 Oct 2015, 08:21 by Planet Coops   [ updated 18 Jul 2017, 03:59 ]

The connection eventually timed out with the following message:

When we examined the diagnostic logs we found the following entries:

10-29 17:06:52.837 E/ObdCommand(28156): 01 0D
10-29 17:06:52.837 E/ObdCommand(28156): SEARCHING...

This indicates that the adapter was unable to connect to the vehicle's ECU.  Usually this is the result of not having had the ignition turned to position 2 but in this case the ignition was in position 2 with the engine running so what went wrong?

It transpires that the majority of cheap Chinese OBD2 adapters you will find on eBay are missing the components needed to support the pre-2008 OBD2 protocols SAE J1850 VPW, and SAE J1850 PWM.  In this case the vehicle was a 2006 Dodge Caravan which uses the SAE J1850 VPW protocol.

All cars sold in the US from 2008 onwards must support the ISO 15765-4 CAN protocol so these adapters generally work with these vehicles but before then, GM/Chrysler/Dodge and Ford tended to make use of the J1850 VPW and J1850 PWM protocols respectively.  You can read about the missing components here:

If you are considering purchasing a cheap Chinese adapter and your car is pre-2008, check with the supplier that it is compatible with your make, model, and year of vehicle.

How does volume licensing work?

posted 22 Oct 2015, 03:09 by Planet Coops   [ updated 27 Apr 2019, 02:45 ]

Please note that volume licensing is only available for the Android™ version of Taximeter.  Unfortunately, Apple will not permit us to provide a similar facility for the iOS™ version.

We supply you with a volume license key (VLK) and the current version of the Taximeter APK file which you would then install on each device (see .  The VLK is simply a case-sensitive string of characters which needs to be entered on each device.  The VLK will activate a predetermined number of devices which can be increased as and when required.  The activation is associated with each device and is not transferable.  Warning: Performing a factory reset or installing the app under a new user account (on devices which support multiple users) will cause its device identifier to be regenerated.  Reinstalling the app on a device which has been OTA upgraded to Android O or later may also generate a new device identifier.  As a consequence, a previously activated device will no longer be recognized by our licensing server and a new activation will be required.

Before entering the VLK, make sure you that you have an active internet connection, Wi-Fi or mobile data.  When you first run the app after installing the APK, the app will display the following alert complaining that the license check failed:

At this point, press the Enter key button and enter the VLK.  Once you've correctly entered the key, you will need to restart the app.

If you have already downloaded and installed Taximeter from the Google Play Store or install the APK using a licensed Google account and want to run it simultaneously on multiple devices, then the procedure is slightly different.  With an active internet connection, open the app on each device and navigate to Menu > Settings > Operator settings > Set volume license key (VLK).  Enter the key here then exit (Menu > Exit) and restart the app.

You can easily check whether a device has been successfully activated.  We append a "+" to the version information in the Menu > About screen to indicate that the app is volume licensed.

We will invoice separately for the VLK using PayPal.

1-10 of 15