How to Use BCharge

Many thanks to rivviepop @ BlackBerry Forums
Barry Homepage: Net Direct :: Open Solutions

SourceForge Project Downloads: SourceForge.net: Files
‘bcharge’ is a utility that’s part of the Barry project – which aims to be a complete desktop toolset for interfacing your BlackBerry with linux. The purpose of the bcharge tool is to detect when a BB has been plugged in and then alter the current to the USB port – it will increase the default 100mA flow up to 500mA, which is what the BlackBerry is expecting. This is exactly what the Windows driver does.

The 0.1 version currently available (2007-02-19) will work with any BlackBerry older than the Pearl 8100; for the 8100 (and presumably the 8800, unreleased at this time) you’ll need to get the latest version of the code from CVS (only “bcharge.cc” is needed); the product ID internally has changed from ‘0x0001’ to ‘0x0006’ in this newer handset. The latest CVS version will recognize both older and newer devices, but the newer CVS code includes some special action to take when “seeing” an 8100 device.

CVS link for post-0.1 bcharge.cc: SourceForge.net Repository – {barry} Index of /barry/tools

Compiling the code is beyond the scope of this HowTo, but it’s extremely simple and uses all the standard linux-isms (autoconf, g , etc.) — if you can compile any generic application you should be able to compile bcharge; because this code interfaces with USB ports, make sure you have the ‘libusb-devel’ (exact name depends on your distro) installed so it’ll find the headers and link libraries. There may already be installable packages available download as well (.deb/.rpm) – your need to compile may vary.

There are two parts to ‘bcharge’ – the main binary itself and a “udev” script. You can use the tool without doing anything, just plug in your BlackBerry to any USB port and type ./bcharge (substitute the path if needed). This will scan all the USB devices plugged in, find your BB handset, and adjust the current flow. It’s that simple.

But, to automate the process you can copy a script from CVS (or the official downloads) to your [b]/etc/udev/rules.d/[/b] directory (location may vary depending on distro) to have everything done for you. First, copy the compiled binary (bcharge) to /usr/sbin/ and make sure it’s at least mode 0755 (executable), owned by root (for security’s sake). Now copy one of the scripts from here: SourceForge.net Repository – {barry} Index of /barry/udev[/url… to the udev rules directory mentioned above. Obviously if you’re using Debian (and maybe Ubuntu?) use the one called “Debian”. 🙂
NOTE: if you have a newer Pearl device you will need to update the ProductID in this script.
Replace this code:

 SYSFS{idProduct}=="0001"

With this code:

 SYSFS{idProduct}=="0006"

It should make perfect sense why you’re doing this. You could also just copy/paste the line to a new line and add both products at once — the choice is yours. Maybe you have both an older and newer BB device and need it both ways. 🙂

Reboot. I say again, Reboot. ‘udev’ rules don’t seem to work quite right unless they’re loaded at startup (when udev runs), so just save yourself some hassle and sacrifice your uptime with a reboot. Now plug in your BB device and it should initially flash on the handset the error message about insufficient charge, but then the message will go away in 1sec (or so) when bcharge runs and performs the adjustment.

You can use the ‘lsusb’ tool to verify the current has been changed – run ‘lsusb -v | less’ as root, find the RIM BlackBerry section and it’ll show the current USB port power flow. It should say 500mA and not 100mA.

4L60E Shift Solenoid A&B Transmission Filter Gasket kit Compatible with Cadillac picture

4L60E Shift Solenoid A&B Transmission Filter Gasket kit Compatible with Cadillac

$55.99



1506735 SOLENOID Fits Franklin Models picture

1506735 SOLENOID Fits Franklin Models

$161.99



Defective Namco Pacman Smash SCD-1564 Solenoid AS-IS for Parts picture

Defective Namco Pacman Smash SCD-1564 Solenoid AS-IS for Parts

$72.00



Houser Eng & MFG CO,. 1931 1937 Chevrolet Solenoid Starter Change Conversion Kit picture

Houser Eng & MFG CO,. 1931 1937 Chevrolet Solenoid Starter Change Conversion Kit

$50.00



ATV Rincon MUV 700 PIONEER 700 Transmission Shift Solenoid Kit- Black and Brown  picture

ATV Rincon MUV 700 PIONEER 700 Transmission Shift Solenoid Kit- Black and Brown

$53.91



Studebaker Transmission Overdrive Governor Solenoid picture

Studebaker Transmission Overdrive Governor Solenoid

$60.00



LMTV Fan Clutch Solenoid Replacement Kit picture

LMTV Fan Clutch Solenoid Replacement Kit

$80.00



Solenoid, Draft - Central Boiler Part No. 4184 picture

Solenoid, Draft - Central Boiler Part No. 4184

$64.98



New GAYLORD VENTILATOR SOLENOID OPERATED DAMPER N-66 AUXILIARY EXHAUST TERMINAL picture

New GAYLORD VENTILATOR SOLENOID OPERATED DAMPER N-66 AUXILIARY EXHAUST TERMINAL

$124.99



ROCKER INDUSTRIES 22139002 ELECTRIC SOLENOID 18/30VDC -FREE SHIPPING picture

ROCKER INDUSTRIES 22139002 ELECTRIC SOLENOID 18/30VDC -FREE SHIPPING

$809.86