microcell

First batch of Bluetooth Low Energy (BLE) Location Microcells finished and tested

A while a go I started to create a first PCB design for a Bluetooth Low Energy Microcell, which should be used to setup an indoor localization system. The PCB has been manufactured in december and I assembled it during the xmas holidays.

Using the iBLE application, which is a generic BLE explorer app and still under development, I can discover the macrocells and read their RSSI. There is still some work to do in order to locate an iPhone4S indoors, but I wanted to share the progress of this project with anybody who is interested.

Here you can see the four BLE Microcells:

microcells

The microcells are battery powered and once the battery is attached to the holders, the microcells can be discovered using the BLExplr application.

Please leave me a comment if you are interested in the microcells or the project itself.

Thanks, Michael.

82 Responses to First batch of Bluetooth Low Energy (BLE) Location Microcells finished and tested

  1. guy ezer January 19, 2012 at 12:56 #

    Hello,
    i’m looking for a BLE module that advirtise BLE as sensor. I’m looking for a samll desing with development KIT that can be controlled and be used against my application developent on PC WIN7.

    Thanks,
    Guy

    • admin January 20, 2012 at 09:59 #

      Helly Guy,
      there is a development available from BlueGiga.
      I’m using this kit for prototyping and move forward by creating custom PCBs with Eagle.
      http://www.bluegiga.com/evaluation_BLE112
      The Software is available for Windows machines and a BLED112 dongle is included as well.

      If you have more questions don’t hesitate to contact me again.
      Cheers,
      Michael.

  2. Mahendra Tailor January 19, 2012 at 13:19 #

    Hi Michael
    I am a senior staff engineer at Laird working on Bluetooth related modules.
    I would be most interested to have a conf call with you at a mutually convenient time.
    Look forward to hearing from you.
    Kind regards
    Mahendra

    • admin January 20, 2012 at 10:01 #

      Hello Mahendra,
      I contact you via email to talk about your request.
      Cheers,
      Michael.

  3. Julian Hardenne February 16, 2012 at 08:43 #

    Hello,
    I am a staff engineer from Nomics working on Bluetooth modules.
    I try to send some data from the BLE112 Dev Kit, I tried lots of things, but nothing happened…
    If I understand, you use your microcells to indicate position to your iPhone, am I right ?
    So I think you got to send data from BLE112 to the iPhone, how can you make it ?
    I’m analyzing the API STack Reference but I don’t see how to do it…

    Thanks in advance,
    Kind regards,

    Julian Hardenne

    • admin February 16, 2012 at 10:18 #

      Hi Julian,
      the BLE Location Microcells are not sending data to the iPhone. They are just advertising their service and the RSSI.
      The iPhone cannot connect to the modules. This is not allowed by the modules. Otherwise the modules can’t be discovered by other device.

      I’m sending data from a BLE 112 Module in another project successfully.
      What development kit are you using?

      Kind Regards,
      Michael.

      • Julian Hardenne February 16, 2012 at 12:34 #

        First of all, thanks for your answer.

        So I’m using DKBLE112 and trying to “discuss” with BLED112.
        Final application will be a BLE112 module receiving data from an accelerometer and sending it.
        So what I try to do here is using the dongle without using the BLEGUI from BlueGiga. I’d like to make something similar to the BLEGUI in a first time, being able to scan for devices and connect to the one I want.

        But I can’t see how to perform a scan using the dongle to be able to “see” the BLE112 on the DKBLE112. I tried to send the same TX line that BLEGUI send to perform the scan with a program I made, but without any result.

        Thanks once more,
        Kind regards,
        Julian

  4. Andre February 20, 2012 at 16:32 #

    Hi Juian!

    I have similar problems like you. I want to connect the BLE112 on the DKBLE112 Board with another BLE112 (which is placed on a perfboard).

    I can connect from BLEGUI with a BLED112 dongle to the BLE112, but when I’m trying to connect from the DKBLE112, the connection is not succesful. I use the same commands for the DKBLE112 as in the BLEGUI, but it does not work.

    Anyone an idea what’s the problem?

    ————————
    To your problem: The scanning is succesful from my DKBLE112. I can find the other BLE112 module.
    The other BLE112 is in advertising mode, using these lines:
    #Set device to advertisement mode and allow undirected connections
    call gap_set_mode(gap_general_discoverable,gap_undirected_connectable)
    #Allow pairing
    call sm_set_bondable_mode(1)
    And the BLE112 on the DKBLE board scans for the other with these lines:
    #set discover mode
    call gap_discover(1)
    In the event gap_scan_response you can program a debug line or whatsoever to see if the DKBLE find someone:
    event gap_scan_response(rssi,packet_type,sender,address_type,data_len,data_data)

    end
    ————————

    I would love to hear about establishing the connection. Like I said, it doesnt work for me. Scanning works, but not the connection. Can someone help?

    Kind regards,
    Andre

    • Andre February 22, 2012 at 09:44 #

      Hey there,
      I have an update which I want to share:
      The connection between the DKBLE and an other BLE112 module is established now using the whitelist and the selective connect command 😉

  5. Jon February 21, 2012 at 01:09 #

    Michael,

    Great job!

    We are trying to create a similar (though not exact) device and application.

    Would love to chat privately if you are open to some discussion and contract work.

    Thanks,

    Jon

    • admin February 21, 2012 at 17:57 #

      Hello Jon,
      I will send you an email and we can start to discuss your needs.
      Of course I can do contract work.

      Cheers,
      Michael.

  6. Roman March 16, 2012 at 10:20 #

    Hey, i tested the BLE energy of Iphone too. But when im reading the RSSIvalue i get alway s=0
    How you do this?

    Thanks,
    Roman

    • Michael Kroll March 19, 2012 at 21:16 #

      Hi Roman,
      the problem with the RSSI value of a given peripheral is, that the RSSI is initially set in the call

      – (void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral *)peripheral advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI;

      But peripheral.RSSI is 0 !

      You have to call the CBPeripherals resRSSI method and get the RSSI value in the the CBPeripheralDelegate method

      – (void)peripheralDidUpdateRSSI:(CBPeripheral *)peripheral error:(NSError *)error;

      Then the RSSI of the given peripheral should be set.

      Cheers,
      Michael.

  7. John March 21, 2012 at 10:49 #

    Hello Michael,

    Have you tried making an RS232 connection with the DKBLE112 or with any of your PCBs ?
    It works perfectly when I send/receive data from/to usb, but I can’t help doing that with RS232…

    Thanks in advance,

    John

    • Michael Kroll March 21, 2012 at 14:12 #

      Hello John,
      I never tried it with a Serial/USB converter, but I should do soon.
      I was working on my BLE Shield with UARTs but due to missing Hardware handshake in my setup I had RX issues, which were solved by implementing a protocol in the BLE112 firmware.

      Cheers,
      Michael.

      • John March 26, 2012 at 07:30 #

        Hello Michael,

        May I dare ask you how you made to implement a protocol in the BLE112 firmware ?

        Thanks,
        John

        • Michael Kroll March 26, 2012 at 20:33 #

          Hi,
          there is a 16 byte buffer implemented in the BLE112 which needs to be filled/read over the RX line completely, before the RX characteristic notifies the iPhone. This is implemented by myself. It’s not part if the BLE functionality. The buffer can be read from the iPhone at any time. The buffer is only used for the notification.

          Cheers,
          Michael.

          • John March 27, 2012 at 14:46 #

            All right, I better understand now 🙂

            Does anybody tried tu use I²C with the BLE112 ?

            I’m gonna be razy with those two functions, how can one read a register by only specifying the slave address and the the length ?

            if you want to read register 0x0D, you got to specify a legth of 14 bytes ?
            Isn’t it a nonsense ?

            Any answer is welcome

            Have a great day,
            John

          • Michael Kroll March 27, 2012 at 15:28 #

            Hi John,

            in the api documentation I can’t see where you have to specify a 14 byte length?
            Are you using BGScript?
            I can see the following method: call hardware_i2c_read(address, length)(result, data_len, data_data)
            But I never tried to communicate to i2c devices yet.

            Cheers,
            Michael.

          • Michal April 30, 2012 at 12:07 #

            Hi,
            I’m similar problem, I can’t comunicate with BLE112 module by UART. I use blegui aplication. Could you explain where I have to implement this protocol (in .xml files?) and how? Could show any examples?

  8. Jacob March 22, 2012 at 05:42 #

    Michael, This is great. Would love to chat privately about your beacons and their availability.

    – Jacob

    • Michael Kroll March 22, 2012 at 11:26 #

      Hi Jacob,
      I already contacted you via email.
      Cheers,
      Michael.

  9. John March 28, 2012 at 07:54 #

    Ok, I will explain a bit more 🙂

    I got a BLE module attached to an I²C accelerometer. I (try to) read values of the accelerometer, than stock it in the GATT of the module (every two seconds).

    Then, I use a dongle BLED112 and a program I made of mine (or BLEGUI, it’s the same ^^)
    and I read the GATT to see what values the accelerometer gave.

    I try to read device address 0x39 and register address 0x0D
    But as you mentionned, the hardware_i2c_read functions takes two arguments : device_address and length. What must I put as length ? the register address ?

    I tried with the register address, and this is what I get :

    20 HEX characters (not too bad, I could try to make sth with that) but :
    what is a bit strange is that the first seven characters I get are then repeated, so it looks like that :

    1 2 3 4 5 6 7 12 3 4 5 6 7 1 2 3 4 5 6

    If you or somebody else have an idea…

    Cheers,
    John

    • Michael Kroll March 28, 2012 at 14:02 #

      Have you asked Bluegiga support concerning this issue?

      • John March 29, 2012 at 08:19 #

        Yes and what they told me is absolutely unclear !
        Don’t know what to do anymore…

        John

        • Michael Kroll March 30, 2012 at 12:48 #

          Maybe you can start to illustrate this issue in your forum with detailed code snippets, and an overview of your hardware setup as well.

          Cheers,
          Michael

          • Suresh December 23, 2012 at 15:02 #

            Hey all, this is a reply to an old post, but as I haven’t seen anyone post/publish I2C on BLE112 information, I thought I would do it up (and I can’t seem to post on David’s reply below)… Also, I don’t have access to the forum yet, so I can’t post there.

            I’ve made a quick post about using the BLE112’s I2C functionality here: http://sureshjoshi.com/development/ble112-how-to-use-i2c/

            I still have issues with reading multiple registers and if anyone has gotten around that, I would appreciate some input!

            Cheers

          • Michael Kroll January 3, 2013 at 18:24 #

            What is your username on the forum? I need to double check in order to avoid spammers.

          • Suresh January 7, 2013 at 19:29 #

            BTW: I think my forum username is SJoshi

    • Armin June 6, 2012 at 12:17 #

      I have the same problems,
      I tried to write fist a commend to the i2c sensor with
      call hardware_i2c_write(68,1 , “\x1E”)(written) #68 ist the Sensor Adress, 0x1E the register adress.
      After this i tried to read the value from this sensor with
      call hardware_i2c_read(68,2)(result, data_len, tmp(0)) # i tried to save the value in tmp(0)
      after this i wanted to write the value in
      call attributes_write(x_data,0,2,tmp(0:2)) to read it in the BLGUI2.exe

      For the GATT.XML i took the same like in the evkit_accelerometer example.

      the result.. nothing works.
      I changed the hardware.xml by deleting the
      line, and adding a
      and
      line to enable the Pull up’s on the pins 1_6 and 1_7

      than i add the lines
      call hardware_io_port_config_pull(1,6,0)(result)
      call hardware_io_port_config_pull(1,7,0)(result) also to enable the pull up’s

      I tried everything. deleting the lines, changeing the lines, and so on…But i got no result in the GATT. Even when i tried to open the service discover it doesnt work. I cannot see anything. what did i do wrong?

      Thanks for any help…

      Armin

      • Michael Kroll June 9, 2012 at 13:30 #

        Hello Armin,
        what sensor have you connected to the BLE112 Evaluation Board?
        I want to use the such a temperature sensor in order to test a firmware written in BGScript.
        First I will ask BlueGiga if there are some I2C samples around they are willing to share.

        Cheers,
        Michael.

        • Armin June 27, 2012 at 12:20 #

          Hey Michael,

          i got it now. I can send data to the Gyro and i can receive data too. It was a little complicated but i connected a osziloscope and than i could see what is going on between the BLE and my sensor. But the Problem now is that when i got 3 values each with 16bit, the GATT in the BLEGUI2.exe is getting too slow after some time. It feels like maybe the stack from the program is too slow or the BLED USB Dongle is too slow. Maybe i must write an own application to receive the data in real time. If you have any idea pls tell me.

          Bye
          Armin

          • David Peterson September 13, 2012 at 06:24 #

            Hello Armin,

            Can you share the code you got successfully working with your I2C sensor? Thanks.

            Cheers,

            David

    • Milan May 31, 2013 at 14:19 #

      Hello John,

      Did you already solved your problem? I hope u already did 🙂

      I am also doing a similar project and using BLED 112 to receive data from BLE device ( in my case i am using NRF 8001). I am making a windows application in C# where i need to receive data using BLE 112 Dongle and save the received data. So i wanted to ask you is it possible to use BLED 112 Dongle to receive data from NRF 8001 or it only supports BLE112?

      If we can then how can i program BLED 112 Dongle to receive the data in my C# program? If you have any suggestion or answer would be highly appreciated 🙂

      Thanks in advance.

  10. John March 28, 2012 at 07:56 #

    Sorry, I forgot to say :

    Yes, for the BLE112 module, it runs in standalone so I use BGScript to make the I²C communication.

    John.

  11. Roman March 28, 2012 at 09:03 #

    Okay, it´s works fine. I get the RSSI Value. Now i do it with a timer who call readRSSI.
    thx u

    Another question, do you know: It is possible to connect to one peripheral without to scan for it?
    i know the UUID from the peripheral and want to save it and then connect to it. i don’t know it.
    thx u very much
    Roman

    • John March 28, 2012 at 09:36 #

      Hello Roman,

      Yes it’s possible, but you have to know the Bluetooth Device address, its UUID is used to access the GATT, if you know the BD address, you can use the function ‘Connect Direct’ or ‘Connect Selective’ to connect only to whitelisted devices (see the Stack API Reference for description of the function)

      Cheers,
      John

  12. Roman March 28, 2012 at 10:15 #

    Hello, John
    my Problem is, i want to connect to the Peripheral from iPhone 4s without scan. So i want to do a ” Connection Request”. The CoreBluetooth Framework say to scan and then to connect to the peripheral. I think when i connected first, i can save the UUID and at the second time, connect without to scan for it.
    my other problem is, the iPhone 4s with the Bluetooth Framework works with private Address, so i can’t “Direct Connect” to the iPhone 4s(Advertising_Direct) because the Address is change every 15 minutes.
    I don’t really know how to connect my Peripheral and the iPhone 4s without ” advertising Indirect”. I can only use the CoreBluetooth Framework
    sorry for my bad English.

  13. John March 28, 2012 at 15:10 #

    Hello Michael,

    I made a forum for people using Bluetooth Low Energy and particularly Bluegiga BLE112.
    It will be very kind of you if you could publish this post 🙂

    the link is http://www.waterhorse.org

    I think it would be a better way than continue polluting your page which was talking about Microcells at its beginning.
    It will be a real pleasure if you dare come and help people or discuss what you’ve already done (in the Category ‘Your projects’)

    Hope this could help some people who encounter some difficulties with the BLE112 like me.

    Don’t be afraid if the forum is empty, I just publish it right now 🙂

    Kind regards,
    John

  14. Andrew April 17, 2012 at 17:50 #

    Hey Michael,

    I noticed the 10pin header on your microcells. Does this mean that each cell is programmable with TI’s CC Debugger? My own project currently involves the BLE112 modules, but I am finding it difficult to program each BLE individually with the Development Kit provided by Bluegiga. I would love to use one of your modules for programming purposes as it seems easy to solder and remove BLE112’s from your PCBs.

    Thanks,
    Andrew

    • Michael Kroll April 17, 2012 at 18:49 #

      Yes, you can program them with the TI CC Debugger. Do you want to use the module for flashing BLE112 modules, by soldering them to the board?

      • Andrew April 17, 2012 at 19:41 #

        Yes. As far as I am aware, Bluegiga does not provide an easy way to flash their BLE modules.

  15. ray April 18, 2012 at 07:25 #

    Michael, great stuff. I’ve been wanting to play with the ble stuff for a while now. Any chance you can share the xcode source for your iBLE app?

  16. Dr Malte Stien April 19, 2012 at 05:49 #

    Hi. That looks very interesting. I would like to get in touch with you regarding some possible contract work. Could you please send me an email? Thank you.

  17. Cas April 21, 2012 at 03:53 #

    Hi Michael,

    Great info on your site, any chance you are willing to share some of your xcode for the iBLE app?

    Thanks,

    Cas

  18. Jay Moskowitz May 15, 2012 at 22:49 #

    I too am interested in several of these shields. Perhaps many tens and eventually hundreds.

  19. Jeffrey Cohn May 23, 2012 at 23:59 #

    Fellow innovator and geek –

    My name is Jeffrey Cohn. I am a 41 year old technical entrepreneur from Las Vegas, Nevada. Over the past 12 years, I have sold three businesses, the last of which sold to Konami Gaming Inc.

    I tried my best to stay home and learn to play guitar, but I have no rhythm – (still trying though).

    Several months ago I pitched a few ideas to investors I’ve had good relationships with in the past, and one of those ideas has gained tremendous excitement and momentum.

    If you could find a few minutes on your calendar to have a 15 minute phone conversation, I would be very grateful. I want to talk to you about your Location Microcells and some tangential information related to Bluetooth 4.0/BLE. I understand that your time is valuable, and we will gladly pay a fee should you charge for that initial discussion.

    Best regards,

    Jeff

    • Jeffrey Cohn May 24, 2012 at 13:31 #

      I’d also like to note that our company is interested in purchasing several macrocells for testing. How do we go about this?

  20. Ron July 20, 2012 at 02:18 #

    Michael,

    On February 16 @ 10:18AM you wrote:

    “The iPhone cannot connect to the modules. This is not allowed by the modules. ”

    Does that mean the BLE112 can’t connect to an IPhone like a typical bluetooth device?

    Thanks in advance,

    Ron

    • Michael Kroll July 20, 2012 at 06:19 #

      They are not connectable since they just advertise their RSSI, Name and Service. One connected it will no longer advertise and unusable as a location cell. It’s just a flag set in the BLE112 modules software.

      Cheers,
      Michael.

  21. Ron July 20, 2012 at 13:41 #

    Michael,

    Thanks for the fast reply,

    My question was generic in nature, from what I understand now, the BLE112 is connectable.

    Your device is just configured to advertise instead of connecting, am I right on that thought?

    Thanks again for your time.

    Ron

    • Michael Kroll July 20, 2012 at 14:19 #

      Hi Ron,
      absolutely correct!
      On the BLE Shield for Arduino I’m using the BLE112 module as well which is connectable 🙂

      Cheers,
      Michael.

  22. Mark July 29, 2012 at 16:42 #

    Hallo Michael,

    auch wenn dieses klasse Projekt bereits gestoppt wurde, bin ich wirklich interessiert daran und würde mich sehr freuen, wenn Du mich kurz per E-Mail hierzu kontaktieren könntest, da ich Deine Adresse nirgendwo finden kann.

    Herzlichen Dank!!
    Mark

    • Michael Kroll July 29, 2012 at 17:35 #

      Hallo Mark,
      sorry ich war bei meiner E-Mail zu sehr BLE-Shield fokussiert. Ich habe nie Zeit gefunden an dieser Lösung weiter zu arbeiten. Bei Interesse Stelle ich gern die Schemas und die Boardfiles zur Verfügung. Bei interesse kann ich Dir auch die vier Boards günstig verkaufen.

      Gruss,
      Michael.

  23. David Peterson September 16, 2012 at 01:41 #

    Great stuff! Do you have these BLE112 microcells available to purchase or the Eagle files available to download/purchase?

    Thank you very much.

    Cheers,

    David

    • Michael Kroll September 16, 2012 at 08:03 #

      Hi David,
      no the microcells are not available for purchase but I can upload the eagle- and firmwarefiles this evening.

      Thanks,
      Michael.

      • David Peterson September 17, 2012 at 00:24 #

        Hello Michael,

        That is brilliant. Can’t wait! Thank you for your support and work in this amazing area of Bluetooth LE.

        Cheers,

        David

        • Michael S. January 29, 2013 at 08:41 #

          Hi,
          I have the same problems with the I2C communication with a ST25 temperaute/humidity sensor. I checked the layout, made sure that all parts are supplied and checked for the timing constraints.

          Are there special adaptions to be made (hardware.xml) in order to get the communication running?

          Thank you
          Michael

  24. Sergio A Fernandez, Ph. D. September 16, 2012 at 16:38 #

    I will like to use the BLE112 and an accelerometer powered by the battery to create a communication device for my 14 year old daughter with Cerebral Parlays. Is hard for her to click the button so I thought I can use the board that you have, send the information to the iPad and control her computer from the iPad. I got the BLE112 evaluation board and I have communication with the iPad, I will need at least 2 for her arms and 2 for her legs. Any help getting the hardware will be appreciated.
    Thanks
    Sergio

  25. Bill October 9, 2012 at 20:41 #

    Hi,
    I’m evaluating DKBLE112 now. But encounter a problem of debuging the script code running on BLE112 evaluation board. In the heart rate sensor application note, it said one can use USB to debug, by adding

    in hardware.xml
    and add
    call system_endpoint_tx(3, 5, “BOOT\n”)
    in script
    but when connecting USB from BLE112 evaluation board to PC, PC does not recognize the board, installing the driver from windrv folder of dev kit installation, does not work!

    Anyone has the tips on how to make PC recognize DKBLE112?

    • Michael Kroll October 18, 2012 at 21:05 #

      I tried this today, but had no luck as well.
      I send an email to BlueGiga support, and let you know about my findings.

      Best,
      Michael.

  26. linc October 22, 2012 at 04:54 #

    Hi Michael,

    In BLE programming, when I use the readRSSI fucntion, sometimes I got a correct RSSI value, and another time I got “CBErrorDomain Code = 5” of NSError from the peripheralDidUpdateRSSI function. I usually must close the bluetooth through iPhone’s setting and re-open it.

    How can I solve the problem?

    Thanks,

    Linc

    • Michael Kroll October 23, 2012 at 08:07 #

      Hi Linc,
      hmmm I have not yet seen this problem before. Maybe the polling interval you’re using is to small?

      Best,
      Michael.

      • linc October 25, 2012 at 02:07 #

        Hi Michael,

        You are right, that the polling interval cause the problem.
        In IOS6, when I set the polling interval to 500 ms, the problem appear; and when I set the polling interval to 1500 ms, the problem disappear.
        But in IOS5, the problem is almost not appear whatever I set the polling interval to.
        This is a surprising thing.Maybe it a bug of IOS6?

        Thanks,

        Linc

  27. Norman Morales November 23, 2012 at 01:06 #

    Hi I have some doubts

    Is this bluetooth only for using with Iphone 4?? Can I use it for android, windows phone or other devices or smartphones??

    With the circuit that you develop, wich has a coin battery, can I program the bluetooth BLE112 to recieve an instruction form a smartphone and make something like turn on the lights??

    • Michael Kroll November 23, 2012 at 07:50 #

      Hi,
      you can use it with iOS devices such as iPhone4S, iPhone5, iPad3 and 4 and the Mini. The new Desktop Macs and notebooks work as well. The BLE beacon was not built to turn light’s on and off, but you can build another peripheral to achieve that. I don’t know it Android now supports BLE. I’m no longer doing Android development focusing on iOS only.
      Cheers, Michael.

  28. Fredy December 2, 2012 at 09:57 #

    Hoi Michael
    For an example of indoor position at the University, I will try to do the same for android system.
    Could you send me the Eagle files and the firmware?
    Thank you
    Cheers,
    Fredy

    • Michael Kroll December 11, 2012 at 21:08 #

      Hi Fredy,
      I’ll post the files on friday.
      Cheers?
      Michael.

  29. Hugo December 10, 2012 at 17:10 #

    Hi

    I just discover your website and was curious about this project. It is my understanding that Bluetooth LE uses 3 channels for advertisment. I am curious about how your devices work (do they use the 3 channels, only one?), and also about device saturation and how many location tags the bluetooth protocol can handle.

    • Michael Kroll December 11, 2012 at 21:15 #

      Hi,
      my peripherals, more the current firmwares, are advertising in all three channels. I think it depends on how you use your lication cells and software to read the location. I can be enough to advertise a unique devicename and make a server lookup to gather more detailed info about the cell. This way you never need to connect to the cell and you can prohibit the device from being connected. Connected BLE devices are no longer advertising!

      Cheers,
      Michael.

  30. Helmut Strey February 20, 2013 at 00:41 #

    Hi Michael,
    I tried to upload your Microcell firmware to my BLE 112 module. It loaded successfully, but your iphone app BLExpr does not show the name. It recognizes that there is a bluetooth device around and shows the RSSI but is not able to read the name. It says UUID unknown and service unknown even though services were defined in the gatt.xml. I tried LightBlue but to no avail.

    I used the BLEupdate tool from Bluegiga with the 1.1 beta SDK. Is this the reason?

    Let me know

    Thanks

    Helmut

    • Michael Kroll February 20, 2013 at 12:46 #

      Have you connected the device already? I thin the microcell firmware does not allo connections right?

      • Helmut Strey February 20, 2013 at 14:31 #

        Maybe I should be more specific. I used one of Jeff Rowberg’s BLE breakout boards. Then connected it to the TI debugger and uploaded your microcell firmware using BLE update tool from Bluegiga using SDK 1.1 beta -55.
        I expected to see something similar to iBLE picture in your post from BLExplr but instead I get UUID unknown and service unknown even though services and UUIDs are specified in gatt.xml. I am aware that the firmware does not allow connections and that is fine with me. I am just trying to find out and confirm that the BLE 112 is programmed correctly.
        I am working on a project to track proximity of people. We tag people with these cells and then we have stationary units (raspberry pi’s) that collect proximity and identity data. I am wondering whether a similar firmware would work for our project.

        Helmut

        • Michael Kroll February 20, 2013 at 20:25 #

          I’ll test the firmware with my BLE112 breakout board I purchased from Jeff and let you know.

        • Michael Kroll February 27, 2013 at 14:57 #

          Hello Helmut,
          this is absolutely correct. Since the iPhone has never connected to this peripheral, it has not yet generated a UUID for this particular peripheral and shows is as unknown. Since it is not connectable, if will never show up a UUID in this case. BLExplr is not taking the descriptor of the service or characteristic into account but take a look into it’s own database to show the correct service name.
          Have you changed the service UUID in the firmware? If not I could add the description to BLExplrs DB and you can then update it in the settings of the app.

          Tell me the UUID and what service name should be shown and I will add it.

          Cheers,
          Michael.

          • Helmut Strey March 7, 2013 at 10:04 #

            thanks, Michael
            I did not change the UUID in the firmware. I used the exact same firmware as posted. FYI, check out http://www.streylab.com with updates on my BLE projects.

            Helmut

  31. Chris March 25, 2013 at 17:12 #

    Is this device still available? Any way to get/order a sample to play with?

    Thanks,

    Chris

  32. Manuel June 17, 2013 at 13:38 #

    Hi Michael, I tried to connect a BLED112 to a iPhone. Since now i wasn’t successfull! Scanning the iPhone in the advertising Mode works. Have you ever tried to etablish a BLE connection to send data? May be you can help me with an example. I work with de C/C++ API on Microsoft Visual Studio C++ 2010.

    Thanks
    Manuel

  33. Jorgen October 19, 2013 at 17:59 #

    Hi!

    Great resource you have here.

    I’m trying to discern differences between all the different modules. My project is a bluetooth handsfree audio device.

    I’m having a hard time finding any opinions on the Bluegiga BT111, what do you think?

    http://www.bluegiga.com/en-US/products/bluetooth-4.0-modules/bt111-bluetooth–smart-ready-hci/

    Thanks again for the great resource.

    • Michael Kroll October 20, 2013 at 11:35 #

      Hello,
      the BT111 is a HCI over USB module. You need to create a BLE Stack completely on the host computer in order to control it.
      I think BLE is not the right technology to be use as a Handsfree profile based peripheral.

      Cheers,
      Michael.

  34. hector lugo November 30, 2013 at 02:30 #

    Hello, I’m using 2 ble112 modules connecting each other. I’m trying to see I can read the rssi value then just make an if (rssi< -60 dBm) then disconnect. Is it possible to do this using bgscript??
    Any help or tip would be appreciated.

Trackbacks/Pingbacks

  1. My Homepage - May 27, 2012

    … [Trackback]…

    […] Read More: mkroll.mobi/?p=261 […]…

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Powered by WordPress. Designed by WooThemes