Check out my first novel, midnight's simulacra!


From dankwiki

All of this information was tested on a BlackBerry Curve 8900 or BlackBerry Bold 9700 (but generally not both!) on T-Mobile, usually within Atlanta.


  • Unlicensed Mobile Access (see this NetworkWorld writeup). GSM/GPRS devices using "unlicensed" spectrum -- Bluetooth, 802.11, etc (see this overview).
  • "UMA" vs "uma" in display: "uma" provides only voice functionality, while "UMA" provides a full data suite.

BlackBerry data

  • btool -l will list connected devices:
[hyperbox](0) $ btool -l
Blackberry devices found:
Device ID: 0xfb6d10. PIN: 228db871, Description: RIM BlackBerry Device
[hyperbox](0) $ 
  • btool -t will list supported databases. Use -P devpassword if a password has been set.


  • btool -L lists contact fields native to the device:
[hyperbox](0) $ btool -L
Blackberry devices found:
Device ID: 0x26dcd10. PIN: 228db871, Description: RIM BlackBerry Device
Using device (PIN): 228db871
  Email               : Email address
  Phone               : Phone number
  Fax                 : Fax number
  WorkPhone           : Work phone number
  HomePhone           : Home phone number
  MobilePhone         : Mobile phone number
  Pager               : Pager number
  PIN                 : PIN
  FirstName           : First name
  LastName            : Last name
  Company             : Company name
  DefaultCommunicationsMethod: Default communications method
  WorkAddress1        : Work Address, line 1
  WorkAddress2        : Work Address, line 2
  WorkAddress3        : Work Address, line 3
  WorkCity            : WorkCity
  WorkProvince        : WorkProvince / State
  WorkPostalCode      : Work Postal / ZIP code
  WorkCountry         : WorkCountry
  JobTitle            : Job Title
  PublicKey           : Public key
  Notes               : Notes
  WorkPostalAddress   : Mailing Work address (includes address lines, city, province, country, and postal code)
  HomePostalAddress   : Mailing home address (includes address lines, city, province, country, and postal code)
  FullName            : First + Last names
  FQDN                : Fully qualified domain name
[hyperbox](0) $ 
  • ...and btool -M will provided a LDIF mapping:
[hyperbox](0) $ btool -M
Blackberry devices found:
Device ID: 0x1a65d10. PIN: 228db871, Description: RIM BlackBerry Device
Using device (PIN): 228db871
ContactLdif Mapping:
   dn                  ->  FQDN / FQDN
   c                   ->  WorkCountry / WorkCountry
                       objectClass: country
   cn                  ->  FullName / FullName
   displayName         ->  FullName / FullName
   facsimileTelephoneNumber->  Fax / Fax
   givenName           ->  FirstName / FirstName
   homePhone           ->  HomePhone / HomePhone
   homePostalAddress   ->  HomePostalAddress / HomePostalAddress
   l                   ->  WorkCity / WorkCity
   mail                ->  Email / Email
   mobile              ->  MobilePhone / MobilePhone
   note                ->  Notes / Notes
   o                   ->  Company / Company
   pager               ->  Pager / Pager
   postalAddress       ->  WorkPostalAddress / WorkPostalAddress
   postalCode          ->  WorkPostalCode / WorkPostalCode
   sn                  ->  LastName / LastName
   st                  ->  WorkProvince / WorkProvince
   street              ->  WorkAddress1 / WorkAddress1
   telephoneNumber     ->  WorkPhone / WorkPhone
   title               ->  JobTitle / JobTitle
   >>> DN attribute: cn
  • Finally, dump a device database with btool -d DB, and load it with btool -s DB:
[hyperbox](0) $ btool -d 'Address Book' | grep FirstName | wc -l
[hyperbox](0) $ 

Character Modification

  • To quickly capitalize a letter, hold it down for about a second.
  • To type characters with commonly-used diacritics, hold down the closest English letter, and spin the trackball.
    • This will not work for input fields limited to ASCII (for instance SMS test messages).



  • BlackBerry uses WINDOWS-1252 by default, which is pretty much entirely useless. Use -i UTF-8 to convert data to UTF-8.
    • No, btool doesn't appear to simply honor LANG.
  • bcharge from the barry package is used to properly set up USB-based charging
  • btool from the barry-util package:
[recombinator](0) $ btool -t -P devpassword
Blackberry devices found:
Device ID: 0x8f5710. PIN: 21420533, Description: RIM BlackBerry Device
Using device (PIN): 21420533
Database database:
    Database: 0x0 'MMS Options' (records: 1)
    Database: 0x1 'Input Method Switcher Option' (records: 1)
    Database: 0x2 'RMS Databases' (records: 4)
    Database: 0x3 'Certificate Options' (records: 0)
    Database: 0x59 'Bluetooth Options' (records: 1)
    Database: 0x5a 'AutoText' (records: 108)

[recombinator](0) $ 
  • barrybackup

Tethering on T-Mobile

Update /etc/network/interfaces, adding:

iface ppp0 inet ppp
	provider barry-tmobileus

Place the following file at /usr/local/etc/


SAY "Initializing\n" '' ATZ OK AT+CGDCONT=1,"IP","" OK-AT-OK ATDT*99#


Place the following file at /usr/local/etc/barry-tmobileus.dechat, and make it executable:

killall pppob

Place the following file at /etc/ppp/peers/barry-tmobileus:

connect "/usr/sbin/chat -f /usr/local/etc/"

disconnect "/usr/local/etc/barry-tmobileus.dechat" noauth user "" password "" defaultroute usepeerdns noipdefault nodetach novj nodeflate nobsdcomp noaccomp nocrtscts nopcomp nomagic passive ipcp-restart 7 ipcp-accept-local ipcp-accept-remote lcp-echo-interval 0 lcp-echo-failure 999 mtu 1492 debug

pty "/usr/sbin/pppob -P yourpassword -p yourpin"

Note that the pty argument ought be updated for your device's password and PIN.


bluetooth-applet with active connection
  • Ensure you have a working bluetooth adapter with hcitool dev
  • At least one service must be running for a successful HCI connection (try bluez-simple-agent)