WHIZOO.COM
Home Profiles Build Guide Hall of Fame Buy Controleo3 Contact Us

Bluetooth and Power Management in one small app!
Do you know that leaving your Palm's Bluetooth radio on can cut your battery life in half? Tired of finding "Prefs" in the launcher, then "Bluetooth" just to turn your Bluetooth radio off? Tired of those "Timeout: Serial Error" and "Unable to connect to phone" messages? Ever found that your Palm turns itself on while in your pocket and corrupts your data and wastes valuable battery life? BtToggle is the answer!

BtToggle works on any Palm OS5 device, like the Palm Tungsten-T, T2, T3, Sony NX60, NX70, NZ90, TG50, UX40 and UX50.

BtToggle Professional intelliBT
(more information / download)
BtToggle Classic accuBT
(more information / download)
BtToggle Pro uses intelliBT technology. With BtToggle Pro on your handheld, your Bluetooth radio stays off as much as possible. IntelliBT closely monitors application's demands for the Bluetooth radio and intelligently turns it on and off. To avoid the "Error: Serial Timeout", "Unable to connect to phone" and "Bluetooth is currently disabled" messages, BtToggle Pro fools applications into thinking that Bluetooth is on, when it is actually off. BtToggle Classic uses accuBT technology. With BtToggle Classic on your handheld, all applications will always accurately report the status of the Bluetooth radio. The advantage of accuBT is that you receive consistent feedback from all of your Bluetooth applications as to the state of the Bluetooth radio.
IntelliBT continuously monitors application's use of the Bluetooth radio. If it detects that the radio is on and not being used, it turns it off again. However, to prevent undesired "Serial Timeout" or "Unable to connect to phone" messages, it sets a system global variable to indicate that the radio is ON, even though it is actually OFF. This fools most applications, including the Bluetooth Preference panel and Bluetooth indicator on the Tungsten T3. These applications merely check the system global variable and decide that the radio is on. If they actually communicated with the radio they would find that it was off! Doing this prevents the above-mentioned messages from appearing; the radio is automatically turned on when the application wants to use it. On Sony devices, the blue LED gives the real radio status. AccuBT continuously monitors which applications are being launched or exited. If an application appears in BtToggle's list of applications to turn Bluetooth on or off for, it sets the Bluetooth radio state accordingly. All applications on your handheld will always accurately report the true status of the Bluetooth radio.
Very aggressively keeps the Bluetooth radio off until it is actually needed. Even "fools" applications (even the Bluetooth Preferences panel) into thinking the radio is ON when it is actually OFF. Less aggressive in keeping the radio off. You select which applications need Bluetooth; BtToggle then turns the radio on when you enter the application and off once you exit.
Support for applications in main memory and external media, like SD cards and MemoryStick. Support for applications in main memory only. External media can be supported using shortcuts created by 3rd party launchers.
Bluetooth is turned on and off for any application, no matter where it resides or how many there are. Bluetooth is turned on and off for the 15 applications that you specify.
Works on any handheld running Palm OS 5. Works on any handheld running Palm OS 5.
BtToggle Pro's excellent ability to prevent accidental button presses from powering on your handheld is the same as BtToggle Classic. BtToggle Classic's excellent ability to prevent accidental button presses from powering on your handheld is the same as BtToggle Pro.
BtToggle Pro offers many ways to manually turn the Bluetooth radio on and off, and adds support for the command bar. If this is enabled an icon is added to the command bar showing the current radio status. Tapping this icon will toggle the radio status. BtToggle Classic offers many ways to manually turn the Bluetooth radio on and off.
Can't decide which one to get? No need to! Buy either one and get a registration code for both!
BtToggle is just $14.95. Buy now and get your registration code immediately!

     Buy now!

Click here for more information and download. Click here for more information and download.

Frequently Asked Questions (FAQ)
1. Why should I use BtToggle?
2. Tell me all about Bluetooth. How does it work?
3. How much power does the Palm's Bluetooth radio actually use?
4. I keep hearing about a Bluetooth security hole that BtToggle addresses. What is it?

1. Why should I use BtToggle?
BtToggle performs two major functions. Firstly, it keeps the Bluetooth radio off until you really need it. This saves battery power and increases Bluetooth security. The second function it performs is to keep your Palm from accidentally turning on while it is in your briefcase or pocket. These functions help to conserve battery power, increase security and prevent data corruption or loss.

2. Tell me all about Bluetooth. How does it work?
Bluetooth is a RF (radio frequency) technology. The specification covers both the hardware and software. Bluetooth uses Time Division Duplex (TDD) protocols and frequency hops 1600 times per second between 79 channels! The channels have 1 MHz spacing and the frequency switching takes just 220 µs. Bluetooth operates at 2.4 GHz - the same frequency as a lot of cordless phones, 802.11B and even microwave ovens. Bluetooth's short packet size, quick packet acknowledgment cycle and frequency hopping makes it very robust in this environment.

Bluetooth devices can communicate with each other by forming a Piconet. Every Piconet has a master, through which all communication travels. A Piconet can have up to seven slaves. Most devices (especially Palms) can act as either master or slave. Some devices (like Bluetooth Access Points) insist on being master. Palm's Bluetooth implementation supports both master and slave roles, and 8-device Piconets. However, when using the Bluetooth "serial port" (RFCOMM) the Palm can only support a single connection to one other device.

In terms of range, Palm's are typically "class 3" devices with a range of around 10 meters (33 feet), with 1 mW (0 dBm) of transmit power. Cell phones are also typically class 3 devices. Bluetooth Access Points plug into the wall so they tend to be class 1 devices, with 100 mW (20 dBm) of transmit power. In addition to their powerful transmitters, Access Points tend to have very sensitive receivers so class 3 devices (like Palms) can connect at up to 30 meters (100 feet) from an Access Point.

The Bluetooth datarate has a theoretical maximum of 723 kilobits (90 kB) per second for asymmetric links, and 433 kilobits (54 kB) for symmetric links. This can only occur under ideal (no interference) conditions, using the largest packet size with no Forward Error Correction (FEC), no Bluetooth protocol (L2CAP and RFCOMM) overhead and no application protocol (TCP/IP or HotSync) overhead. In the real world, a rate of 120 kilobits (15 kB) per second is considered very good.

There are various states that a Bluetooth radio can be in. Most of the time, your Palm is passive and is doing "page scans". In this mode it wakes up every 1.28 seconds and listens for 11.25 ms. If your Palm initiates a connection, it will perform an "inquiry" or "page". An inquiry (also called discovery) sends out "page trains" to find all Bluetooth devices in the area. Typically, most of the devices in the immediate area are discovered within 10.24 seconds. Yes, there is a formula that calculates this! If the Bluetooth device address is known - for example, if you've paired your Palm with your cell phone - there is no need to perform a discovery. In this case, connection is much quicker taking an average of 0.64 seconds.

It is tough to provide a quick, relevant summary of Bluetooth, but I hope you found this useful. Take a look at the official Bluetooth SIG web site (www.bluetooth.com) for more detailed information.

3. How much power does the Palm's Bluetooth radio actually use?
This depends very much on what the radio is doing. Here are some scenarios. The settings described below can be found in the Bluetooth Preference Panel (Prefs->Bluetooth).
  • Palm is turned off
    The Bluetooth radio draws no power at all, as long as "Allow Wakeup" is set to No (Tungsten|T only). If it is set to Yes then the radio will wakeup every 1.28 seconds as described above. The Palm doesn't actually wakeup; if the radio detects an inbound connection attempt it will assert an interrupt to wakeup the Palm. The power consumption will increase by approximately a factor of 4. So if you could normally leave your Palm on your desk for 3 weeks and still be able to turn it on, it will now last around 5 days!

    The other settings in the Preference Panel have no effect on power consumption while the Palm is off. Obviously, "Bluetooth" must be On to be able to see the "Allow Wakeup" setting. The "Allow Wakeup" setting is only relevant if your Palm is turned off.

    BtToggle helps in this scenario by making sure your Bluetooth radio is off whenever your Palm is off. All you need to do is check BtToggle's "Turn off when going to sleep" setting.

  • Palm is turned on
    If "Bluetooth" is On, then the Bluetooth radio will wakeup every 1.28 seconds. It doesn't matter what "Discoverable" is set to! "Discoverable" only determines what the radio should do if another device is doing an inquiry. If "Discoverable" is Yes then it will respond to an inquiry with "Yes, I'm here!" otherwise it will just keep quiet. Remember that if "Discoverable" is set to No then Bluetooth devices that know your Palm's Bluetooth Device Address can still connect to it. The power consumption with the radio on is approximately the same as having the Palm on with the screen at its lowest setting. If you can normally play a game non-stop for 12 hours before the batteries are flat, this will drop to around 6 hours if the radio is on.

    BtToggle helps in this scenario by allowing you to specify which applications you want to have the Bluetooth radio on for. This keeps your radio off until you really need it.

  • Palm is turned on and a Bluetooth connection is active
    Well yes, this does seem to make the battery level drop! Just be glad that you aren't using 802.11B though. Bluetooth was specifically designed for low power consumption so while you may give up a bit in terms of range and throughput you benefit from low power consumption and robust voice and data transfer.

    BtToggle helps in this scenario by tearing down the TCP/IP connection and the Bluetooth connection, and turning off the radio the instant you exit an application.

4. I keep hearing about a Bluetooth security hole that BtToggle addresses. What is it?
The hole relies on a "Trojan Horse" being present on your Palm. It works like this:
  1. An application (Trojan Horse) is beamed or HotSync'd onto your Palm
  2. The application doesn't even need to be run. It registers to receive inbound Bluetooth connections
  3. A hacker does continuous Bluetooth inquiries, looking for any Palm with the application loaded
  4. An inbound Bluetooth connection is received by your Palm
  5. The Trojan Horse is launched (without you knowing it), and does its damage
It doesn't matter if your Palm is Discoverable or not. The hacker can just page scan all Bluetooth addresses until it finds one that responds. The Trojan horse can send any information on your Palm to the hacker, or destroy it! And the hacker could be standing right next to you, or 10 meters (33 feet) away and you wouldn't know who he or she was.

That said, it is relatively difficult to implement this and Bluetooth's limited range limits its usefulness. BtToggle helps in this scenario by keeping your Bluetooth radio off until you actually need to use it.