Blackberry 10 Remote Temperature Viewing and Listening


“The BlackBerry runtime for Android keeps getting sweeter”, as BlackBerry Developper site says. The documentation on BlackBerry’s site includes a collection of resources that discuss how one can use the BlackBerry Tools for Android development to repackage, and port one’s Android apps to the BlackBerry 10 OS.

One has two options for porting one’s Android apps to the BlackBerry 10 OS. One can choose to take your existing Android APK files, and repackage them as BAR files that run on BlackBerry 10 devices, or one can develop one’s app from scratch using the BlackBerry 10 Native SDK.

Which option you choose will depend on many factors, including your app’s functionality when it has been repackaged as a BlackBerry 10 app. Before deciding which option to choose, we can use our repackaging tools to run a compatibility test on your APK file. This test allows us to assess the level of compatibility that our Android app has to the BlackBerry Runtime.

Our set up:


Necessary material

You need the following boards:


And Bluetooth adapter for PC, Bluetooth module and power supply unit, these last two for the boards:

sweex_bt                 jy_mcu       mb_102

– Freescale FRDM-KL25Z board
– Digilent BASIC I/O shield
– Power supply unit (MB-102)for the set up
– Mobile Processing software
– Class I or II Bluetooth adapter
– JY-MCU Bluetooth Module (available from Aliatron)


You must have already done:

  • Installation in Windows of your FRDM-KL25Z board.
  • Tested FRDM-KL25Z with simple exercise such as blinking the RGB LED on it

If you done neither of the two above exercises, you ought to follow the introduction“Getting Started with mbed and Freescale FRDM-KL25Z board”.

Also you must have done:

Temperature measurement with temperatur sensor TCN75A on Digilent Basic I/O shield.


Remote Viewing of Temperature with FRDM-KL25Z and TCN75A on Basic I/O Shield. (at least to point 9) Display the temperature on Terminal of PC)

Display the Temperature on a Blackberry 10 smartphone

I have written code for Android phone on MIT’s App Inventor Classic. The code is based on one written by kerimil at Instructables’ website.

I have modified kirimil’s code to read the incoming continuing string, and to split it into two variables, and made other minor adjustments, and given the project a new name TempMon. It is beyond the aim of this tutorial to teach how to write code for App Inventor. There is ample teaching material on the Web, if you are interested.

So, if you want to write code, or modify, or even import, I have made it available on Bitbucket kept at Bitbucket, an unlimited free private repositories’ site. You can download the zip file, and upload to App Inventor Classic’s website. Click here to download the code.

The Android App, TempMonitor.apk, can be downloaded, if you do not want to write code. It is again available at at Bitbucket repository.  Click here to download it.

Converting apk to bar

The downloaded apk will have to be uploaded to Good Reader’s website to convert into BB10 bar file. The link to apk2bar online converter is: I have found Good Reader’s website to be friendly, and easy to use. If you are too lazy to go through the previous two step you can download the bar app clicking here. If eventually the bar app is not available at the link, you can download clicking here for the app at Bitbucket.

Side-loading the bar file into Blackberry 10 smartphone  

The following Good Reader’s link has a tutorial on how to install bar app into your Blackberry 10 smartphone (my app is optimized for Z10):

It has also a video on how to install in Z10. You will need to turn Development Mode On and select an easy to remember Password to be able to install the bar app.

BlackBerry 10 App

Once installed our App will look like this on App’s folder of BlackBerry 10 smartphone (the red square shows the App):


Pair the Bluetooth module HC-06 to Blackberry 10

Before running the application, you will need to pair the Bluetooth module HC-06 with your BlackBerry’s Bluetooth. Tje PIN to pair is 1234.

Run the App

Next, when you run the app you will notice that the App is not connected to Bluetooth module:


You need to tell the App to which paired devices to connect to by clicking Choose device to connect to button. A new screen will allow you to choose, which in our case is HC-06:


Clicking HC-06 the device will be selected and you will see in top left of screen Connected in green colour letters. The local temperature will be read:



You can listen to the local temperature as read by clicking Say temperature… button.

To close the App click the bottom right corner of screen with it says More. 

That’s all about it!

Video demonstration

The following video demonstrates the app and shows the electronic set up:


Our Android app works perfectly on Blackberry 10 phone and performs as it is expected. In fact the easiness with which one can convert Android apk’s into Blackberry 10 bar’s opens in Blackberry 10 smartphones the whole world of Android apps.

We can thus measure local temperature connecting our Blackberry 10 phone to a Bluetooth module (JY-MCU)  that transmits serial data from a microcontroller,  a Freescale FRDM-KL25Z board connected to a Digilent Basic I/O board containing a Microchip TCN75A temperature sensor.


About Tayeb

Electronics engineer, part-time webmaster and owner of "Aliatron", a tech-oriented company registered in Portugal and Mozambique. Owner of "EU Halal", a trading and consulting company in Halal & Tayyib, 100% stun-free compliant.
This entry was posted in Electronic Projects, Mobile Apps and tagged , , , , , , , , . Bookmark the permalink.

1 Response to Blackberry 10 Remote Temperature Viewing and Listening

  1. Pingback: Digilent Inc. Blog » Blog Archive » Remote Temperature Viewing on the Blackberry 10 using the Digilent Basic I/O shield

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s