This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

nRF52 Ble Peripheral Example - ble_app_blinky not showing led/button service

Hi I have run a few peripheral examples ok and now move to evaluation of ble_peripheral also.

I'm using this version of the SDK....

If I program the softdevice and then the application hex file into board using the files shown below the led 1 turns on as expected. 

Using rfConnect I can connect to "Nordic Blinky" and the led 2 turns on and led 1 turns off. However in the list of services I see there is not one showing for the Led/Button.

Using the blinky app for Android to connect I get a message indicating the "Device does not have the required services".

I checked the code in sdk_config.h to see if the service was enabled and this looks ok...

Looking at the help for the application at this link http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk%2Fdita%2Fsdk%2Fnrf5_sdk.html

I think I have done things correctly so I am now looking for some ideas/support to move forward please.

Regards MPH

  • Hi Torbjørn

    That is a positive change as the Blinky App now discovers the services ok, thank you very much. I can see the change of button state but if I toggle the LED using the App it has only worked once. Meaning repeated toggling has no effect and the LED is Off.

    If I use nrf Connect to toggle the LED that appears to work along with reading the button state.

    BR Martin

  • Hi Martin

    It is good to hear that you have had some progress. 

    Are you running the Blinky App in the Android debugger?

    It would be interesting to see the ADB log when you are trying to toggle the LED, to see if it has any information that might be related to the issue. 

    Best regards
    Torbjørn

  • Hi Torbjørn

    I tried a couple of Android projects, the Thingy 52 and the Blinky Apps. Using Android Studio, Thingy runs in debug mode using my phone but Blinky does not. It starts but immediately thereafter the app closes on the phone. I have not investigated why as yet.

    Best Regards Martin

  • Hi Martin

    Thanks for the update. 

    If you capture the ADB log when the Blinky app crashes I can show it to the app developers, and they might have some input. 

    Best regards
    Torbjørn

  • Ok this is what I get in the adb log when trying to run Blinky App on my phone......


    10/01 13:27:58: Launching app
    $ adb install-multiple -r -t C:\Users\Martin\Documents\GitHub\Android-nRF-Blinky\app\build\intermediates\split-apk\debug\slices\slice_4.apk C:\Users\Martin\Documents\GitHub\Android-nRF-Blinky\app\build\intermediates\resources\instant-run\debug\resources-debug.apk C:\Users\Martin\Documents\GitHub\Android-nRF-Blinky\app\build\intermediates\split-apk\debug\slices\slice_5.apk C:\Users\Martin\Documents\GitHub\Android-nRF-Blinky\app\build\intermediates\split-apk\debug\slices\slice_3.apk C:\Users\Martin\Documents\GitHub\Android-nRF-Blinky\app\build\intermediates\split-apk\debug\slices\slice_0.apk C:\Users\Martin\Documents\GitHub\Android-nRF-Blinky\app\build\intermediates\split-apk\debug\slices\slice_1.apk C:\Users\Martin\Documents\GitHub\Android-nRF-Blinky\app\build\intermediates\split-apk\debug\slices\slice_2.apk C:\Users\Martin\Documents\GitHub\Android-nRF-Blinky\app\build\intermediates\split-apk\debug\slices\slice_7.apk C:\Users\Martin\Documents\GitHub\Android-nRF-Blinky\app\build\intermediates\split-apk\debug\dep\dependencies.apk C:\Users\Martin\Documents\GitHub\Android-nRF-Blinky\app\build\intermediates\split-apk\debug\slices\slice_6.apk C:\Users\Martin\Documents\GitHub\Android-nRF-Blinky\app\build\intermediates\split-apk\debug\slices\slice_8.apk C:\Users\Martin\Documents\GitHub\Android-nRF-Blinky\app\build\intermediates\split-apk\debug\slices\slice_9.apk C:\Users\Martin\Documents\GitHub\Android-nRF-Blinky\app\build\intermediates\instant-run-apk\debug\app-debug.apk
    Split APKs installed
    $ adb shell am start -n "no.nordicsemi.android.nrfblinky/no.nordicsemi.android.blinky.SplashScreenActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -D
    Waiting for application to come online: no.nordicsemi.android.nrfblinky | no.nordicsemi.android.nrfblinky.test
    Waiting for application to come online: no.nordicsemi.android.nrfblinky | no.nordicsemi.android.nrfblinky.test
    Connecting to no.nordicsemi.android.nrfblinky
    Capturing and displaying logcat messages from application. This behavior can be disabled in the "Logcat output" section of the "Debugger" settings page.
    W/ActivityThread: Application no.nordicsemi.android.nrfblinky is waiting for the debugger on port 8100...
    I/System.out: Sending WAIT chunk
    I/zygote64: Debugger is active
    I/System.out: Debugger has connected
    waiting for debugger to settle...
    I/System.out: waiting for debugger to settle...
    I/System.out: waiting for debugger to settle...
    Connected to the target VM, address: 'localhost:8601', transport: 'socket'
    I/System.out: waiting for debugger to settle...
    I/System.out: waiting for debugger to settle...
    I/System.out: waiting for debugger to settle...
    I/System.out: debugger has settled (1356)
    I/zygote64: no shared libraies, dex_files: 1
    I/InstantRun: starting instant run server: is main process
    D/AndroidRuntime: Shutting down VM
    E/AndroidRuntime: FATAL EXCEPTION: main
    Process: no.nordicsemi.android.nrfblinky, PID: 26198
    java.lang.RuntimeException: Unable to get provider android.arch.lifecycle.ProcessLifecycleOwnerInitializer: java.lang.ClassNotFoundException: Didn't find class "android.arch.lifecycle.ProcessLifecycleOwnerInitializer" on path: DexPathList[[zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/base.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_dependencies_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_resources_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_0_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_1_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_2_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_3_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_4_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_5_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_6_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_7_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_8_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/lib/arm64, /system/lib64, /system/vendor/lib64]]
    at android.app.ActivityThread.installProvider(ActivityThread.java:6581)
    at android.app.ActivityThread.installContentProviders(ActivityThread.java:6133)
    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6043)
    at android.app.ActivityThread.-wrap1(Unknown Source:0)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1764)
    at android.os.Handler.dispatchMessage(Handler.java:105)
    at android.os.Looper.loop(Looper.java:164)
    at android.app.ActivityThread.main(ActivityThread.java:6944)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
    E/AndroidRuntime: Caused by: java.lang.ClassNotFoundException: Didn't find class "android.arch.lifecycle.ProcessLifecycleOwnerInitializer" on path: DexPathList[[zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/base.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_dependencies_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_resources_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_0_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_1_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_2_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_3_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_4_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_5_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_6_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_7_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_8_apk.apk", zip file "/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/lib/arm64, /system/lib64, /system/vendor/lib64]]
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:93)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
    at android.app.ActivityThread.installProvider(ActivityThread.java:6566)
    ... 10 more
    Suppressed: java.io.IOException: No original dex files found for dex location (arm64) /data/app/no.nordicsemi.android.nrfblinky-Abaq71A2nyPIFytIPBL22w==/split_lib_resources_apk.apk
    at dalvik.system.DexFile.openDexFileNative(Native Method)
    at dalvik.system.DexFile.openDexFile(DexFile.java:353)
    at dalvik.system.DexFile.<init>(DexFile.java:100)
    at dalvik.system.DexFile.<init>(DexFile.java:74)
    at dalvik.system.DexPathList.loadDexFile(DexPathList.java:374)
    at dalvik.system.DexPathList.makeDexElements(DexPathList.java:337)
    at dalvik.system.DexPathList.<init>(DexPathList.java:157)
    at dalvik.system.BaseDexClassLoader.<init>(BaseDexClassLoader.java:65)
    at dalvik.system.PathClassLoader.<init>(PathClassLoader.java:64)
    at com.android.internal.os.PathClassLoaderFactory.createClassLoader(PathClassLoaderFactory.java:43)
    at android.app.ApplicationLoaders.getClassLoader(ApplicationLoaders.java:69)
    at android.app.ApplicationLoaders.getClassLoader(ApplicationLoaders.java:36)
    at android.app.LoadedApk.createOrUpdateClassLoaderLocked(LoadedApk.java:678)
    at android.app.LoadedApk.getClassLoader(LoadedApk.java:711)
    at android.app.LoadedApk.getResources(LoadedApk.java:944)
    at android.app.ContextImpl.createAppContext(ContextImpl.java:2303)
    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5943)
    ... 8 more

    BR Martin

Related