Author Topic: Rfduino servo ios app not working😜  (Read 1651 times)

Antonio0439

  • RFduino Newbie
  • *
  • Posts: 8
  • Karma: +0/-0
    • View Profile
Rfduino servo ios app not working😜
« on: November 06, 2015, 11:02:40 AM »
Good day all..

Can anybody tell us why , as soon as you try connect the rfduino to either the servo app or the tempreture app on your iphone 4s it kicks the app off and
You go back to your home screen again even when u try it on an ipad does the same thing the app works like normal but as soon as the rfdunio is powered and comes
On the app disappears
Has anyone had this problem before ? And what could be causing it to
Do that .

Any assitance would be great.

hoschlue

  • RFduino Newbie
  • *
  • Posts: 1
  • Karma: +0/-0
    • View Profile
Re: Rfduino servo ios app not working😜
« Reply #1 on: November 19, 2015, 02:39:35 PM »
I am having the exact same problem. I tried Arduino Version 1.4.6, 1.4.5 and 1.4.4 all of them showing the same behaviour.
There might be an issue with bluetooth  in iOS Version 9 and I tried some of the advices from the Internet but without any success.

tolson

  • Global Moderator
  • *****
  • Posts: 827
  • Karma: +19/-0
    • View Profile
    • Thomas Olson Consulting
Re: Rfduino servo ios app not working
« Reply #2 on: November 19, 2015, 02:58:26 PM »
I am having the same problem with iOS 9 as well. It is definitely a problem on the iOS side. Hopefully the RFduino team will upgrade the four apps to support whatever Apple changed in iOS 9.

edorphy

  • RFduino Full Member
  • ***
  • Posts: 86
  • Karma: +0/-0
    • View Profile
App code in desperate need of an update
« Reply #3 on: December 09, 2015, 09:49:48 PM »
Do not use this code to learn Objective-C!!
It isn't following any "Modern Objective-C" conventions, it uses some unfavorable code like - (id)init instead of -(instancetype)init. Where are the storyboards?

Some advice, go check out Adafruit's Bluefruit LE Connect app instead. Adafruit open sourced it. Bonus it is written in Swift 2.1!

Back to this issue, anyone with the free iOS dev account could see the crash cause.
The problem is the apps are referencing the peripherals uuid property which is long gone. It was removed in iOS 7.1
https://developer.apple.com/library/ios/documentation/CoreBluetooth/Reference/CBPeripheral_Class/index.html#//apple_ref/occ/instp/CBPeripheral/UUID

Anyone with a free apple developer account can run the app store app and watch the crash happen in the device console window within Xcode>Window>Devices

I picked up some of Adafruits new Feather Bluefruit devices. I'm guessing they will come out with an M0 version very soon since by the time my 32U4 devices shipped the released an M0 which is identical. They're using Nordics UART service and have a wonderful scanner app Bluefruit LE Connect.

Here is a copy of the output from your device serial:
Dec  9 23:34:22 Erics-iPhone rfduinoColorWheel[3854] <Warning>: init
Dec  9 23:34:22 Erics-iPhone rfduinoColorWheel[3854] <Warning>: applicationDidBecomeActive
Dec  9 23:34:23 Erics-iPhone rfduinoColorWheel[3854] <Warning>: central manager state = 5
Dec  9 23:34:23 Erics-iPhone rfduinoColorWheel[3854] <Warning>: startScan
Dec  9 23:34:23 Erics-iPhone rfduinoColorWheel[3854] <Error>: [CoreBluetooth] WARNING: <CBCentralManager: 0x16de4780> is disabling duplicate filtering, but is using the default queue (main thread) for delegate events
Dec  9 23:34:23 Erics-iPhone rfduinoColorWheel[3854] <Error>: -[CBPeripheral UUID]: unrecognized selector sent to instance 0x16d7b8e0
Dec  9 23:34:23 Erics-iPhone rfduinoColorWheel[3854] <Error>: *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[CBPeripheral UUID]: unrecognized selector sent to instance 0x16d7b8e0'
   *** First throw call stack:
   (0x2782485b 0x39252dff 0x2782a025 0x27827c7f 0x277571a8 0xd0af9 0x274d9fcd 0x274e5a29 0x39977e2f 0x39977e1b 0x3997c6c9 0x277e7535 0x277e5a2f 0x277380d9 0x27737ecd 0x30a6daf9 0x2b9c12dd 0xcf5af 0x399a0873)

edorphy

  • RFduino Full Member
  • ***
  • Posts: 86
  • Karma: +0/-0
    • View Profile
Re: Rfduino servo ios app not working😜
« Reply #4 on: December 09, 2015, 10:01:12 PM »
I downloaded the simblee app off the store too since it is their new product. Right away when the app comes up CoreBluetooth is spitting out some warnings

Not sure why this sort of thing is not fixed before public release. I'm no longer impressed with these applications. Having something like the first message come out shows that the code wasn't carefully crafted or tested.

Dec  9 23:52:24 Erics-iPhone SimbleeForMobile[3863] <Error>: [CoreBluetooth] API MISUSE: <CBCentralManager: 0x14e666510> has no restore identifier but the delegate implements the centralManager:willRestoreState: method. Restoring will not be supported
Dec  9 23:52:24 Erics-iPhone SimbleeForMobile[3863] <Error>: [CoreBluetooth] WARNING: <CBCentralManager: 0x14e666510> is disabling duplicate filtering, but is using the default queue (main thread) for delegate events