GNU/Linux, BSD


Linux users who also use a BlackBerry ™ now have an option for managing their BlackBerry directly from Linux.

Barry is an Open Source application that provides a Desktop GUI, synchronization, backup, restore and program management for BlackBerry ™ devices.

Barry is primarily developed on Linux, but is intended as a cross platform library and application set, targeting Linux, BSD, 32/64bit, and big/little endian systems.

The Barry project began in October 2005 and has steadily added features and polish to Blackberry usage on Linux ever since. We were the first to reverse engineer the battery charging handshake via USB.

Today, it is possible to (on BlackBerry devices older than the Z10):

  • charge your Blackberry's battery from your USB port
  • parse the following database records: Address Book, Browser Bookmarks, Calendar, Content Store, Folders, Handheld Agent (partial), Memos, Messages (Email), Phone Call Logs, PIN Messages, Saved Email, Service Book, SMS messages, Tasks, Time Zones
  • create the following database records: Address Book, Calendar, Content Store, Memos, Tasks
  • export Address Book contacts in text, LDAP LDIF format, or as MIME vCards
  • import data in MIME vCard, vEvent, vJournal, and vTodo formats
  • make full data backups and restores of your device using a GUI
  • synchronize contact, calendar, memo, and task items with Evolution using the Desktop GUI
  • use the Blackberry as a modem
  • install and manage Java applications from the command line
  • take screenshots of your device
  • set the device time from the command line
  • use raw channel support to communicate with BlackBerry applications
  • ... and more


  • Latest release: 0.18.4, released on 2013/04/05
  • License: GPL v2 or later
  • Download official source and binary packages from Sourceforge
  • General Sourceforge project page
  • Barry git repo
  • Note that Barry is also available in various distros. Some of these distros are listed below:
    • Debian and Ubuntu - maintianed in the Barry repo itself by Chris Frey
    • Fedora - packaged by Nathanael Noblet (RPM git repo)
    • Mandriva's RPM SVN
  • Known Issues:
    • International characters in calendar and contact records cause some devices to switch to a different low-level protocol, which Barry does not yet support.

Getting Started

How do I...

Some helpful pages:

How to Help

If you are a C++ programmer, grab the source from git and take a look at the TODO file. Post a message to the mailing list when you start working on any of the listed features, so you can connect with other developers, and avoid duplicating effort.

If you are a Python programmer, contact the mailing list, since we would like to create and test a Python interface to the Barry library.

If you are not a programmer, but have a Blackberry, we can always use help in testing. Install Barry on your system, and report any bugs you find.

If you prefer writing documentation, grab the source from git and look under the doc/www directory. Documentation is currently in html form, as well as doxygen-generated API documentation found in the comments of the source code itself. Patches updating either set of documentation are welcome.

There are dozens of databases that need to be documented and supported in the library. If you have a BlackBerry ™ device and are interested in helping decipher data, we have a Barry hacking document that will help you.

If you are interested in the low level USB protocol, you can download, or contribute, USB logs to the USB capture log archive .


If you are interested in helping out or just interested in how it works, check out our design notes .


We have put together a document that describes where we are and where we want to take Barry. Check out our roadmap to see what's happening.

External Links

Barry users and others have contributed documentation and have put these howto's on the web. Below is a list of some of these pages. These sites are not associated with NetDirect, and some of the information may be out of date, but they may still be helpful to new users.