• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Using CoreBluetooth from Command Line Tool
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Using CoreBluetooth from Command Line Tool


  • Subject: Re: Using CoreBluetooth from Command Line Tool
  • From: András Kövi <email@hidden>
  • Date: Fri, 05 Apr 2013 20:27:27 +0200

I'm not sure either but it works for me pretty well. Though, I haven't tried to read or write characteristics. Do you have any clues why you would need the CFRunLoop? The reference says:


The main queue is automatically created by the system and associated with your application’s main thread. Your application uses one (and only one) of the following three approaches to invoke blocks submitted to the main queue:

  • Calling dispatch_main

  • Calling UIApplicationMain (iOS) or NSApplicationMain (OS X)

  • Using a CFRunLoopRef on the main thread

If the main thread is used, then any of these should suffice and the same should be enough when a different queue is used as those are mapped to a thread pool and fully managed by the system.

Andras


2013/4/5 Dave Camp <email@hidden>
Not sure, but dispatch_main() might not be enough. You might have to actually run the runloop with CFRunLoopRun or something similar. I know that works because I've written a CoreBluetooth command line tool and it works fine.

Dave

On Apr 4, 2013, at 1:40 PM, email@hidden wrote:

> Hi,
>
> I'm trying to write a simple command line app that uses CoreBluetooth on an BLE capable mac book (OSX v10.8.3).
>
> If I use the retrievePeripherals I get the delegate didRetrievePeripherals to fire.  If I then try to connect to the found peripheral, the didConnectPeripheral delegate never fires.
>
> However, if I scan for peripherals and get the delegate didDiscoverPeripheral to fire.  I can then connect and connect succeeds.  However, once I'm connected and have my characteristics, the data I receive from my peripheral is not reliably received.
>
> Using similar code in a GUI application works perfect.
>
> Has anyone else been successful running the CoreBluetooth stack from within a command line app?
>
> In my main I essentially create a dispatch_queue and let it run my operations via dispatch_async.  Meanwhile, I let main just call dispatch_main().
>
> -- dave
> _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Bluetooth-dev mailing list      (email@hidden)
> Help/Unsubscribe/Update your Subscription:
>
> This email sent to email@hidden


 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Bluetooth-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Bluetooth-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Follow-Ups:
    • Re: Using CoreBluetooth from Command Line Tool
      • From: email@hidden
References: 
 >Using CoreBluetooth from Command Line Tool (From: email@hidden)
 >Re: Using CoreBluetooth from Command Line Tool (From: Dave Camp <email@hidden>)

  • Prev by Date: Re: Using CoreBluetooth from Command Line Tool
  • Next by Date: Re: Using CoreBluetooth from Command Line Tool
  • Previous by thread: Re: Using CoreBluetooth from Command Line Tool
  • Next by thread: Re: Using CoreBluetooth from Command Line Tool
  • Index(es):
    • Date
    • Thread