BT747 GPS logger application with new user interface

My favorite GPS datalogger management application has received a major user interface overhaul. What a difference it makes!
Old BT747 user interface.

New BT7474 user interface.

The new user interface can be started using Java Web Start. Head over to and click on Install desktop version. You will have to trust the certificate every time you start the application, unless you select to always trust Mario’s certificate. On the Mac, this can be done by hitting the Show certificate button. Select the Always trust… checkbox and click the Trust button:

One reason why I love BT747 is that I have lots of options to control the GPS data it imports/exports. For example: when my Holux-M241 runs out of battery while writing a log record, it it tends to write silly data into that record. These records usually have a weird date in them. Unfiltered, these records may cause problems in applications that process your exported GPS data. BT747 is able to filter out corrupt dates by specifying a valid date range for all exported records. Records outside this range will be dropped.

Can’t connect to your GPS logger?

Click the INFO-tab to see what problem occured while BT747 tried to talk to your GPS logger.

Using USB (Holux M-241 & Mac specific)

First, install Silabs’ USB to UART bridge software. Download it here.
In BT747, open the connection drop down list and select USB (for Linux, Mac). I’m only able to download data from the GPS logger if I select 38400 bps. Using 115200 bps the download progress bar doesn’t show any progress.

Using Bluetooth (Holux M-241 & Mac specific)

Follow steps 2 and 3 in my earlier GPS logger Bluetooth guide to pair the GPS logger to your Mac. In BT747, open the Connection drop down list and look for an entry called /dev/cu.HOLUX_M-241-SPPSlave-1 and see if you can connect to your logger. By the way, the default setting for Bluetooth in BT747 BLUETOOTH (for Mac) didn’t work on my Mac, I had to select the SPPSlave device.

If there’s no connection, your Bluetooth device probably has a different name. To find out the real name start Terminal and enter the command:

ls /dev/cu*

There should be an entry indicating the name of your Holux M-241 Bluetooth device. If not, you most likely didn’t pair it correctly. Make sure you didn’t disable Bluetooth in your M-241 settings. The nice thing about the Bluetooth connection is that it doesn’t require any additional drivers, it works out of the box. On the other hand, disabling Bluetooth in the M-241 will extend battery life quite a bit (needs at least firmware revision 1.12).

Trying to open /dev/cu.serial-0001 Unknown Application

Open Terminal and paste this command in it:

sudo mkdir /var/lock && sudo chmod 777 /var/lock

You will have to supply your admin password. Press Connect again in BT747, it should be able to connect now.

Split your tracks!

There’s a very useful feature in BT747 that lets you split your exported GPS coordinates into multiple files. This comes in very handy after a holiday trip with lots and lots of accumulated GPS data. Instead of exporting all GPS data into one large file, BT747 is able to split the data on a daily basis. Even more advanced is the possibility to split the data according to what belongs together. This gives you much tighter control over what’s being exported. Select One file per track and set your preferred New track after value.

Supported GPS loggers

BT747 supports a vast selection of popular GPS loggers, including:

  • Holux M-241
  • BT Q-1000/Q-1200
  • iTrek z1
  • BlueMax GPS-4043
  • Qstartz BT-Q1300
  • i-Blue 757

and many more! Check this page if your logger is supported: BT747 compatible GPS loggers

17 replies on “BT747 GPS logger application with new user interface”

  1. Log time ago that blog post, but still interesting.
    I can start bt747 but get no connect to the gps (usb and bt).
    I installed the USB uart bridge (how to I “activte” it? I did a restart)
    “Nothing” happens if I press connect in bt747. No error, no success.
    Thats my last try – if someone can help…

  2. Spinner, check the info tab for error messages. If the Holux works in Terminal but not BT747 then it might be a non existing directory that’s needed for the serial port library. See the sudo command in my post.


  3. Mario, I’m having the same issue.
    Communicates just fine with the M-241 in Terminal, but doesn’t list the port in BT747 … Also not possible to just type it manually.

    Using 10.6.5 and BT747 2.0.0

  4. Can anyone confirm that this is still working in 10.6.4?
    Now nothing happens when I click “Populate Serial Port Menu” option and I cannot connect to my Holux anymore. I can see the port manually, but the BT747 cannot list it.

    Anyway, I switched to GPSBabelFE and it works like a charm :)

  5. If it happens that there is no your device in the drop-down list (right to Connect button in the first screen), open File menu and click on Find serial ports. That will re-list all available ports, including your device (if you paired it properly with you computer).

  6. Hi

    Threw everything (i.e. BT747 folder and .zip) in the garbage bin. Went again to :

    and clicked the first suggestion:

    For easy installation (RECOMMENDED!), use one of these links:
    Try the desktop version of BT747 or Install the desktop version of BT747

    Thanks again for your help !

  7. Hi

    Doubleclicking the BT747_lwin.jnlp file results in an error message.
    The Java web start says (in swedish) something like :

    Unable to load resource: file:/mdeweerd/workspace/BT747/BT747_lwin.jnlp

    My computer is PowerMac G5 DP 1.8 GHz with OsX 10.4.11. Could it be something with the hardware? Is the location of BT747-programfiles wrong ?

    Thanks for the fast response!

  8. Anders, please have a look at the comment I wrote to Cornelia, you might solve this problem exactly the same way by starting the .jnlp file.

  9. Hi
    I installed the latest version of BT747 i.e. BT747_1.68.7_full

    Double clicking: bt747_macosX.command just results in this comment at Terminal:

    Last login: Mon May 18 11:00:25 on ttyp1
    Welcome to Darwin!
    [Anders-DatorB:~] anders% /Applications/GPS/BT747_1.68.7_full/bt747_macosX.command; exit
    tcsh: ROOT_DIR=/Applications/GPS/BT747_1.68.7_full: Command not found.
    tcsh: ROOT_DIR: Undefined variable.

    What might be the problem? I just wanted to check that this program worked BEFORE I purchase the Holux. Now it seems I dont get it to run. I did follow the instructions about writing the commands in Terminal. Maybe I did go wrong there?


  10. Hello Jan,

    it’s working fine (the install desktop version) – a thousand thanks (for your quick answere) from Germany


  11. Cornelia, please try the Java Webstart way of starting BT747.

    –> Install desktop version

    This will place a new icon on your desktop after clicking the downloaded the .jnlp file and I assume starting it this way will work because I can’t see that you’re doing something wrong here.

    If not: there’s a new build for folks with serial link problems on that page as well, have a look at that one too.

  12. Hi,
    I am struggling for a couple of days now & need your help to get the HOLUX M-241 to talk with the BT747.
    Anybody out there who can help me?

    Following set-up/Version
    – AppleNotebook bought in Jan 09
    – CP210x Macintosh OSX Driver v2.1 Release Notes Copyright (C) 2008 Silicon Laboratories, Inc.
    – Installed BT747, version
    V1.68.5 starting via bt747_macosX_j2se.command

    Is working fine, however once I plug in the HOLUX M-241 in the USB, and want to start the connection (buttom left corner) via USB I am getting the following error messages

    java.lang.UnsatisfiedLinkError: no rxtxSerial in java.library.path thrown while loading
    Exception in thread “AWT-EventQueue-0” java.lang.UnsatisfiedLinkError: no rxtxSerial in java.library.path
    at java.lang.ClassLoader.loadLibrary(
    at java.lang.Runtime.loadLibrary0(
    at java.lang.System.loadLibrary(
    at gps.connection.GPSRxTxPort.isValidPort(Unknown Source)
    at gps.connection.GPSRxTxPort.setUSB(Unknown Source)
    at gps.connection.GPSrxtx.setUSBAndOpen(Unknown Source)
    at bt747.model.Controller.setUsb(Unknown Source)
    at bt747.j2se_view.BT747Main.access$300(Unknown Source)
    at bt747.j2se_view.BT747Main$6.actionPerformed(Unknown Source)
    at javax.swing.AbstractButton.fireActionPerformed(
    at javax.swing.AbstractButton$Handler.actionPerformed(
    at javax.swing.DefaultButtonModel.fireActionPerformed(
    at javax.swing.DefaultButtonModel.setPressed(
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(
    at java.awt.Component.processMouseEvent(
    at javax.swing.JComponent.processMouseEvent(
    at java.awt.Component.processEvent(
    at java.awt.Container.processEvent(
    at java.awt.Component.dispatchEventImpl(
    at java.awt.Container.dispatchEventImpl(
    at java.awt.Component.dispatchEvent(
    at java.awt.LightweightDispatcher.retargetMouseEvent(
    at java.awt.LightweightDispatcher.processMouseEvent(
    at java.awt.LightweightDispatcher.dispatchEvent(
    at java.awt.Container.dispatchEventImpl(
    at java.awt.Window.dispatchEventImpl(
    at java.awt.Component.dispatchEvent(
    at java.awt.EventQueue.dispatchEvent(
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(
    at java.awt.EventDispatchThread.pumpEvents(
    at java.awt.EventDispatchThread.pumpEvents(

  13. Sorry, user error!
    I get it now, you have to download it first and then convert it into the desired format.


  14. Mikey, the raw data gets saved to the “raw log file” path in BT747’s “Log operations” tab. Are you sure you don’t see this file after downloading the track log from the GPS logger? I’m saving it to /Users/jan/GPS/in/BT747log.bin and never had any problems with that.

  15. Hi, thanks a lot for the really good information about connecting the Holux to Mac via Bluetooth and I bought it upon your recommendation. The desktop version of BT747 is certainly much prettier than the old version and helps get over some of the “hassle” in using Bluetooth.

    The trouble I have is that whilst I can see it download the data, I don’t know where it saves the file to. I’ve tried specifying different locations, but it still doesn’t work.

    Any help or guidance would be appreciated.

  16. Awsome! It works fabulus!

    Splitting the tracks is really very useful, I tried it and it works great. And there is one more thing I found out while using my exported GPS tracks with Google earth.

    Always when I opend a GPS track exported with the BT747 I got a wierd path in google earth. From a large high everything looked normal but as I zoomed in it was like some data of the path was missing. I was really frustrated about that so that I thought about switching to houdaGPS wich supports the Holux m-241 in the newest version. But with houdaGPS you only can download the data from your davice and convert it into one of three formats. And you always get only one file out of your device.

    But what about the wierd path in Google earth. It’s all about the high. If you don’t see parts of your path it is becourse the high is below ground level. To see the full path select it in google earth and open the pathinformation by ctrl klick at the path. Go to the high tab and choose stick to the ground or choose a high by using the slider. If every point of your path is now abov ground level or if you stick it to the ground you should see the hole path.

    I hope you understand what I was trying to say, sorry for my poor english, it’s not my native language.

    Thank you Jan for this gead Blog.

    Cheers mate

Comments are closed.