Thanks for keeping at this! It inspired me to try it from the other end. I haven’t used ADB (Android Debugging) in a while, but I installed that back on my machine. I’m seeing something suspicious.
Android logs are super verbose, but I noted the time that I started the PiSound discovery at 7:24pm. You can see a couple logs from “pisound.ctl” followed by some bluetooth logs. The big thing that I noticed is:
06-06 19:24:12.451 3197 4098 E BluetoothUtils: Permission denial: Need ACCESS_FINE_LOCATION permission to get scan results
Mind you I DID read the instructions about enabling location services in other threads. Here’s what permissions look like:
6 19:24:12.410 1777 2096 W CHRE : Tried sending a message, but don’t have a valid socket handle
06-06 19:24:12.410 1777 2096 E CHRE : Failed to send message
06-06 19:24:12.411 3169 3185 I deeptouch: I0000 00:00:1717727052.410948 3185 tf_lite_classifier.cc:413] Event stream classified as kNone
06-06 19:24:12.444 3197 4098 D BluetoothAdapterService: cancelDiscovery
06-06 19:24:12.444 3197 4098 V BluetoothServiceJni: cancelDiscoveryNative
06-06 19:24:12.445 3197 3512 I bt_btif_dm: packages/modules/Bluetooth/system/btif/src/btif_dm.cc:2506 - btif_dm_cancel_discovery: Cancel search
06-06 19:24:12.445 3197 3512 I bt_bta_dm: packages/modules/Bluetooth/system/bta/dm/bta_dm_disc.cc:2253 - bta_dm_search_sm_execute: state:BTA_DM_SEARCH_IDLE, event:BTA_DM_API_SEARCH_CANCEL_EVT[0x201]
06-06 19:24:12.446 1700 6487 W ActivityManager: Receiver with filter android.content.IntentFilter@b492973 already registered for pid 8821, callerPackage is com.blokas.pisoundctl
06-06 19:24:12.447 1700 6487 W ActivityManager: Receiver with filter android.content.IntentFilter@ab9e030 already registered for pid 8821, callerPackage is com.blokas.pisoundctl
06-06 19:24:12.448 1700 1721 W ActivityManager: Receiver with filter android.content.IntentFilter@89344a9 already registered for pid 8821, callerPackage is com.blokas.pisoundctl
06-06 19:24:12.450 3197 4098 D BluetoothAdapterService: startDiscovery
06-06 19:24:12.451 3197 4098 E BluetoothUtils: Permission denial: Need ACCESS_FINE_LOCATION permission to get scan results
06-06 19:24:12.587 8281 10437 I NearbyMediums: No BLE Fast/GATT advertisements found in the latest cycle.
06-06 19:24:13.127 1700 2872 E system_server: Unknown name for ifindex 1804 with more than 2364604 bytes of traffic
06-06 19:24:13.130 1700 2872 E system_server: Unknown name for ifindex 1804 with more than 2364604 bytes of traffic
Also, if you look at this Github issue for an unrelated project, someone in the thread notes that ACCESS_FINE_LOCATION is a newer permission for more recent Android versions. My Pixel 8 Pro is about as new as they come. Perhaps where it works are older phones or devices not issued by Google directly?
I’m also suspecting this to be an android app issue, for specific devices. My device (oneplus 7T on android 12) had the app installed for a long time (before the upgrade to android 12 for sure), and had a connection to another pisound without trouble. It is since I had to connect to a new piSound I’m having troubles, the old one, that I was able to connect to without problems, can also no longer be found. @Giedrius can you rebuilt the app with android 12 support?
Is the app source code up on Github anywhere? It’s been awhile since I’ve built for Android but I’d be happy to try to do this myself. I think it’s just changing the app manifest XML. I’m not seeing the repo, but there’s so much else up there I wouldn’t be surprised if I’m overlooking it
I’ve got the same exact problem.
Used to work fine to connect with the app, but since one year it’s impossible.
I mange to connect via BT from my PC or directly with the Android phone but the never managed to do so. It’s turning infinitely.
Thank you for the additional information, I have just published an update to the app which should fix scanning for devices on Android OS API levels above 30.
It worked! Thanks! I’ve never been able to use this before, and I’m excited to see some stuff in the app I was hoping it would have like script launchers and stuff.
And BTW, Android updated this automatically for me, I just verified my build number against what was in the app store and it matched the June 24 release - so it just worked when I tried it again without me doing anything
Will do! I think I reviewed this before, but it helps actually seeing what you can do and how you would use it in practice. I was hoping to launch some Sonic PI stuff in the future on a song by song basis, and seeing the UI, it looks practical for doing this in live performance.