@Gleno0h @DavidZH have you sent the crash report to Google Play? I’m looking into the crashes, but it appears to be in a 3rd party library, so it takes a bit more work to fix it.
-
[BETA] PimaticDroid - Control Pimatic with Android
-
@FrostedKiwi no, google knows enough of me.
-
@Gleno0h Then unless you can send me the crash log in another way, I’m afraid I don’t know how to fix the issue.
-
@FrostedKiwi here you go:
yLocked:2651 I/WindowManager( 678): Losing focus: Window{442b35d0 u0 kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity} V/WindowManager( 678): Changing focus from null to Window{44602db0 u0 Application Error: kiwi.frosted.pimaticdroid} Callers=com.android.server.wm.WindowManagerService.addWindow:2692 com.android.server.wm.Session.addToDisplay:163 android.view.ViewRootImpl.setView:602 android.view.WindowManagerGlobal.addView:261 I/WindowManager( 678): Gaining focus: Window{44602db0 u0 Application Error: kiwi.frosted.pimaticdroid} W/ActivityManager( 678): Activity pause timeout for ActivityRecord{43967758 u0 kiwi.frosted.pimaticdroid/.MainActivity t64 f} V/ActivityManager( 678): Broadcast: Intent { act=kiwi.frosted.pimaticdroid.RECEIVE flg=0x10 (has extras) } ordered=false userid=0 callerApp=ProcessRecord{44a82d00 29619:kiwi.frosted.pimaticdroid/u0a187} W/BroadcastQueue( 678): Skipping deliver [background] BroadcastRecord{440991b8 u0 kiwi.frosted.pimaticdroid.RECEIVE} to ReceiverList{445dc8a0 29619 kiwi.frosted.pimaticdroid/10187/u0 remote:43b96500}: process crashing V/ActivityManager( 678): Broadcast: Intent { act=com.twofortyfouram.locale.intent.action.REQUEST_QUERY flg=0x10 (has extras) } ordered=false userid=0 callerApp=ProcessRecord{44a82d00 29619:kiwi.frosted.pimaticdroid/u0a187} V/WindowManager( 678): Changing focus from Window{44602db0 u0 Application Error: kiwi.frosted.pimaticdroid EXITING} to Window{4385ecb0 u0 com.gau.go.launcherex/com.jiubang.ggheart.apps.desks.diy.GoLauncher} Callers=com.android.server.wm.WindowManagerService.removeWindowLocked:2797 com.android.server.wm.WindowManagerService.removeWindow:2736 com.android.server.wm.Session.remove:182 android.view.ViewRootImpl.dispatchDetachedFromWindow:3237 I/WindowManager( 678): Losing focus: Window{44602db0 u0 Application Error: kiwi.frosted.pimaticdroid EXITING} I/ActivityManager( 678): Process kiwi.frosted.pimaticdroid (pid 29619) has died. I/WindowState( 678): WIN DEATH: Window{442b35d0 u0 kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity} D/PowerManagerNotifier( 678): onWakeLockReleased: flags=1, tag="socketWakeLock", packageName=kiwi.frosted.pimaticdroid, ownerUid=10187, ownerPid=29619, workSource=null I/ActivityManager( 678): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=kiwi.frosted.pimaticdroid/.MainActivity} from pid 1508 I/ActivityManager( 678): Start proc kiwi.frosted.pimaticdroid for activity kiwi.frosted.pimaticdroid/.MainActivity: pid=29673 uid=10187 gids={50187, 3003} D/ActivityThread(29673): BIND_APPLICATION handled : 0 / AppBindData{appInfo=ApplicationInfo{4380e028 kiwi.frosted.pimaticdroid}} D/ActivityThread(29673): ACT-AM_ON_RESUME_CALLED ActivityRecord{4381b380 token=android.os.BinderProxy@4381a930 {kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity}} D/ActivityThread(29673): ACT-LAUNCH_ACTIVITY handled : 0 / ActivityRecord{4381b380 token=android.os.BinderProxy@4381a930 {kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity}} D/ActivityThread(29673): SVC-Creating service: CreateServiceData{token=android.os.BinderProxy@43a4f360 className=kiwi.frosted.pimaticdroid.PimaticService packageName=kiwi.frosted.pimaticdroid intent=null} D/ActivityThread(29673): SVC-CREATE_SERVICE handled : 0 / CreateServiceData{token=android.os.BinderProxy@43a4f360 className=kiwi.frosted.pimaticdroid.PimaticService packageName=kiwi.frosted.pimaticdroid intent=null} D/ActivityThread(29673): SVC-SERVICE_ARGS handled : 0 / ServiceArgsData{token=android.os.BinderProxy@43a4f360 startId=3 args=Intent { cmp=kiwi.frosted.pimaticdroid/.PimaticService }} D/ActivityThread(29673): SVC-BIND_SERVICE handled : 0 / BindServiceData{token=android.os.BinderProxy@43a4f360 intent=Intent { cmp=kiwi.frosted.pimaticdroid/.PimaticService }} V/WindowManager( 678): Changing focus from null to Window{44b400c8 u0 kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity} Callers=com.android.server.wm.WindowManagerService.relayoutWindow:3414 com.android.server.wm.Session.relayout:191 android.view.IWindowSession$Stub.onTransact:235 com.android.server.wm.Session.onTransact:126 I/WindowManager( 678): Gaining focus: Window{44b400c8 u0 kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity} D/PowerManagerNotifier( 678): onWakeLockAcquired: flags=1, tag="socketWakeLock", packageName=kiwi.frosted.pimaticdroid, ownerUid=10187, ownerPid=29673, workSource=null V/ActivityManager( 678): Broadcast: Intent { act=kiwi.frosted.pimaticdroid.RECEIVE flg=0x10 (has extras) } ordered=false userid=0 callerApp=ProcessRecord{44c77f80 29673:kiwi.frosted.pimaticdroid/u0a187} V/ActivityManager( 678): Broadcast: Intent { act=kiwi.frosted.pimaticdroid.RECEIVE flg=0x10 (has extras) } ordered=false userid=0 callerApp=ProcessRecord{44c77f80 29673:kiwi.frosted.pimaticdroid/u0a187} V/ActivityManager( 678): Broadcast: Intent { act=com.twofortyfouram.locale.intent.action.REQUEST_QUERY flg=0x10 (has extras) } ordered=false userid=0 callerApp=ProcessRecord{44c77f80 29673:kiwi.frosted.pimaticdroid/u0a187} V/ActivityManager( 678): Broadcast: Intent { act=kiwi.frosted.pimaticdroid.RECEIVE flg=0x10 (has extras) } ordered=false userid=0 callerApp=ProcessRecord{44c77f80 29673:kiwi.frosted.pimaticdroid/u0a187} V/ActivityManager( 678): Broadcast: Intent { act=com.twofortyfouram.locale.intent.action.REQUEST_QUERY flg=0x10 (has extras) } ordered=false userid=0 callerApp=ProcessRecord{44c77f80 29673:kiwi.frosted.pimaticdroid/u0a187} E/AndroidRuntime(29673): Process: kiwi.frosted.pimaticdroid, PID: 29673 E/AndroidRuntime(29673): at kiwi.frosted.pimaticdroid.devices.ThermostatDevice.getDeviceView(ThermostatDevice.java:77) E/AndroidRuntime(29673): at kiwi.frosted.pimaticdroid.DeviceAdapter.getView(DeviceAdapter.java:116) W/ActivityManager( 678): Force finishing activity kiwi.frosted.pimaticdroid/.MainActivity V/WindowManager( 678): Changing focus from Window{44b400c8 u0 kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity} to null Callers=com.android.server.wm.WindowManagerService.setFocusedApp:4326 com.android.server.am.ActivityManagerService.setFocusedActivityLocked:2407 com.android.server.am.ActivityStack.adjustFocusedActivityLocked:2402 com.android.server.am.ActivityStack.finishActivityLocked:2651 I/WindowManager( 678): Losing focus: Window{44b400c8 u0 kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity} V/WindowManager( 678): Changing focus from null to Window{43c3f890 u0 Application Error: kiwi.frosted.pimaticdroid} Callers=com.android.server.wm.WindowManagerService.addWindow:2692 com.android.server.wm.Session.addToDisplay:163 android.view.ViewRootImpl.setView:602 android.view.WindowManagerGlobal.addView:261 I/WindowManager( 678): Gaining focus: Window{43c3f890 u0 Application Error: kiwi.frosted.pimaticdroid} W/ActivityManager( 678): Activity pause timeout for ActivityRecord{44b1a070 u0 kiwi.frosted.pimaticdroid/.MainActivity t65 f} V/WindowManager( 678): Changing focus from Window{43c3f890 u0 Application Error: kiwi.frosted.pimaticdroid EXITING} to Window{4385ecb0 u0 com.gau.go.launcherex/com.jiubang.ggheart.apps.desks.diy.GoLauncher} Callers=com.android.server.wm.WindowManagerService.removeWindowLocked:2797 com.android.server.wm.WindowManagerService.removeWindow:2736 com.android.server.wm.Session.remove:182 android.view.ViewRootImpl.dispatchDetachedFromWindow:3237 I/WindowManager( 678): Losing focus: Window{43c3f890 u0 Application Error: kiwi.frosted.pimaticdroid EXITING} I/WindowState( 678): WIN DEATH: Window{44b400c8 u0 kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity} D/PowerManagerNotifier( 678): onWakeLockReleased: flags=1, tag="socketWakeLock", packageName=kiwi.frosted.pimaticdroid, ownerUid=10187, ownerPid=29673, workSource=null I/ActivityManager( 678): Process kiwi.frosted.pimaticdroid (pid 29673) has died. I/ActivityManager( 678): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=kiwi.frosted.pimaticdroid/.MainActivity} from pid 1508 I/ActivityManager( 678): Start proc kiwi.frosted.pimaticdroid for activity kiwi.frosted.pimaticdroid/.MainActivity: pid=29767 uid=10187 gids={50187, 3003} I/GLConsumer( 139): [Starting kiwi.frosted.pimaticdroid](this:0xb7d47868,api:2) [void* android::GLConsumer::createImage(EGLDisplay, const android::sp<android::GraphicBuffer>&, const android::Rect&)] D/dalvikvm(29767): open_cached_dex_file : /data/app/kiwi.frosted.pimaticdroid-1.apk /data/dalvik-cache/data@app@kiwi.frosted.pimaticdroid-1.apk@classes.dex D/ActivityThread(29767): BIND_APPLICATION handled : 0 / AppBindData{appInfo=ApplicationInfo{43805e90 kiwi.frosted.pimaticdroid}} D/ActivityThread(29767): ACT-AM_ON_RESUME_CALLED ActivityRecord{43812e70 token=android.os.BinderProxy@438124c8 {kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity}} V/PhoneWindow(29767): DecorView setVisiblity: visibility = 0 ,Parent =ViewRoot{43a4f568 kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity,ident = 0}, this =com.android.internal.policy.impl.PhoneWindow$DecorView{43891b88 V.E..... R.....ID 0,0-0,0} D/ActivityThread(29767): ACT-LAUNCH_ACTIVITY handled : 0 / ActivityRecord{43812e70 token=android.os.BinderProxy@438124c8 {kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity}} D/ActivityThread(29767): SVC-Creating service: CreateServiceData{token=android.os.BinderProxy@43a471c8 className=kiwi.frosted.pimaticdroid.PimaticService packageName=kiwi.frosted.pimaticdroid intent=null} D/ActivityThread(29767): SVC-CREATE_SERVICE handled : 0 / CreateServiceData{token=android.os.BinderProxy@43a471c8 className=kiwi.frosted.pimaticdroid.PimaticService packageName=kiwi.frosted.pimaticdroid intent=null} D/ActivityThread(29767): SVC-Calling onStartCommand: kiwi.frosted.pimaticdroid.PimaticService@43a56fa0, flags=0, startId=4 D/ActivityThread(29767): SVC-SERVICE_ARGS handled : 0 / ServiceArgsData{token=android.os.BinderProxy@43a471c8 startId=4 args=Intent { cmp=kiwi.frosted.pimaticdroid/.PimaticService }} D/ActivityThread(29767): SVC-BIND_SERVICE handled : 0 / BindServiceData{token=android.os.BinderProxy@43a471c8 intent=Intent { cmp=kiwi.frosted.pimaticdroid/.PimaticService }} I/BufferQueue( 139): [kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity](this:0xb7d35758,id:962,api:0,p:-1,c:139) setConsumerName: kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity I/BufferQueue( 139): [kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity](this:0xb7d35758,id:962,api:0,p:-1,c:139) setDefaultBufferSize: w=1, h=1 V/WindowManager( 678): Changing focus from null to Window{44829560 u0 kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity} Callers=com.android.server.wm.WindowManagerService.relayoutWindow:3414 com.android.server.wm.Session.relayout:191 android.view.IWindowSession$Stub.onTransact:235 com.android.server.wm.Session.onTransact:126 I/BufferQueue( 139): [kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity](this:0xb7d35758,id:962,api:0,p:-1,c:139) setDefaultBufferSize: w=720, h=1219 I/WindowManager( 678): Gaining focus: Window{44829560 u0 kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity} E/ (29767): appName=kiwi.frosted.pimaticdroid, acAppName=/system/bin/surfaceflinger E/ (29767): appName=kiwi.frosted.pimaticdroid, acAppName=/system/bin/surfaceflinger I/BufferQueue( 139): [kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity](this:0xb7d35758,id:962,api:0,p:29767,c:139) connect: api=1 producer=(29767:kiwi.frosted.pimaticdroid) producerControlledByApp=true I/BufferQueue( 139): [kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity](this:0xb7d35758,id:962,api:1,p:29767,c:139) new GraphicBuffer needed D/BufferQueue( 139): [kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity](this:0xb7d35758,id:962,api:1,p:29767,c:139) cancelBuffer: slot=0 I/BufferQueue( 139): [kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity](this:0xb7d35758,id:962,api:1,p:29767,c:139) setBufferCount: count=4 I/BufferQueue( 139): [kiwi.frosted.pimaticdroid/kiwi.frosted.pimaticdroid.MainActivity](this:0xb7d35
Idk but seems to be the view of a thermostat device
-
@Gleno0h Is that all that’s in the logcat? Did you filter for kiwi.frosted.pimaticdroid? Because there should be a bigger stacktrace around these lines:
E/AndroidRuntime(29673): Process: kiwi.frosted.pimaticdroid, PID: 29673 E/AndroidRuntime(29673): at kiwi.frosted.pimaticdroid.devices.ThermostatDevice.getDeviceView(ThermostatDevice.java:77) E/AndroidRuntime(29673): at kiwi.frosted.pimaticdroid.DeviceAdapter.getView(DeviceAdapter.java:116)
-
@FrostedKiwi yes. Thermostat text color is red so i asume thats not good. Yes ive aplied that filter to the log.
-
@Gleno0h That is indeed the error, but because of the filter a lot of lines are missing from the error. I know that it’s an issue with the thermostat device, but I have no idea where.
-
I’ve just released a small update with a few bugfixes.
@Gleno0h I’ve received a crash report related to Thermostat devices which is now fixed, I think this might be the same error as you have. -
@FrostedKiwi i guess. It works again, thanks.
-
Just released another update:
[0.4-beta3]
- Added support for tablets (2 column view)
- Updated settings screen
- Added option to use circular indicator presence devices
- Fixed issue where devices would not show if they were created but never used
- Performance improvements
I’ve also opened an issue tracker on BitBucket, so if you want to report an issue or request a feature you can also do that here: https://bitbucket.org/FrostedKiwi/pimaticdroid/issues/new
-
To be honest i was wondering what would be the benefit of this when you can control pimatic via a browser, but now that i tried this, it’s superfast, nice! Two remarks though: it doesn’t show my ipcamera devices nor my iframe devices? Also, it won’t install on my old Lifetab tablet that runs on android 4.0.3 because of compatability issues according to google play. Is there any way to get this working on that old android version?
-
@fregger Not every device type is supported at this moment, and they hadn’t been requested before.
I’ve looked into how to implement these devices without becoming too intrusive, but I don’t have a good idea on this yet.
IpCamera: This shouldn’t be too hard to implement, but I think it could take up too much space in the interface. However, hiding it behind a click (a button to open the image) would also worsen the user experience. Maybe I should just implement it normally, and introduce an option to hide devices in the app.
Iframe:This is probably a bit harder to implement, and besides the points above, it could also result in quite a big performance impact. I’ll see if I can figure something out.Never mind, I think I figured a way to implement this, performance isn’t bad at all (maybe on low-end devices). You can probably expect this in the next update.As for the support for Android 4.0.3, I was using a dependency that isn’t available in API levels below 4.1, but this isn’t the case anymore. Next update will support API 14 and above (Android 4.x).
-
@FrostedKiwi I’ll be looking forward to that!
-
Pushed out another update:
[0.4.1-beta3]
- Added support for IframeDevices
- Added (partial) support for IpCameraDevice
- Added option to hide devices
- Lowered minimum Android version to Android 4.0
- Fixed issue where app would crash on certain pages
For now the IpCamera will only show the last screenshot, because I don’t have a way to intercept refreshes yet. I’ll look into this later on.
-
very nice!! the app is getting more and more comfortable and is much faster then the mobile frontend over the browser
i like it!one thing that i noticed when moving my shutters up or down - the shutter is triggered very often.
e.g. when clicking the down button, the shutter moves for a second, then stops, moves again, stops and moves again all the way down. same with the up direction.
using switch4 protocol / intertechno devices.
i can make a video if this helps ?! anybody else with this issue?
my phone not rooted galaxy s6 on android 6 but same behaviour on my galaxy note3 with android 4.4edit : video https://youtu.be/SKR7UzCI4pg
hope you see what i meanhere’s the device
{ "protocols": [ { "name": "switch4", "options": { "unit": 21, "id": 22 } } ], "echo": { "additionalNames": [] }, "id": "rolladen-kuche", "name": "Rolladen Küche", "class": "HomeduinoRFShutter" },
pimatic v0.9 has been released!
Support Pimatic and get some free stickers
Like us on Facebookmake it so !
-
@leader21 I’m not sure how these devices are supposed to work, since I don’t have them myself.
Are you supposed to hold the button? Or press it ones and go up all the way?edit: Whoops, didn’t know the tabs weren’t scrollable. I’ve just pushed out a small update which does make them scrollable (and fixes an issue for pre-Lollipop users with TimerDevices)
edit 2: Just released a small update again in which the ShutterDevices now work like the web interface
-
wow. your app was great and gets better and better… i love it and the darkmode looks great
i found some small “issues” - sure, i know this was no big things but i think prefer to say “you could make them better”
- i have 9 categiries in pimatic…
… and in your app it looks like “squeezed” all together on top in one row
- this was MySensorsButton devices:
and i dnt know why the wording “geschlossen” went to “closed” but maybe its possible to include translations
- in the next case the wording gets too long - there was a MaxHeatingThermostatdevice - you could do a linebreak with the buttons
- in a grouped ButtonsDevice like
you could put the buttons next to each other if the space was free
and the last thing:
- in this case VariablesDevices with long device name:
maybe you could add a automatic CR/LF if there gets too long
okay, finished - thats it
sorry for the “feedback at a very high level” so stay on and i’m curious about your next update(s) -
well, updated to the latest version of pimaticdroid.
i open the app and it starts the iframe directly.i have uploaded a video. first you see the normal pimatic ui with the iframe on page 2 and after that i open pimaticdroid to show you the bug.
-
@xCite86 thanks for the massive feedback, I’ll look into these points.
- Tabs: As you can see in my post above you, I’ve published an update which makes the tabs scrollable. This only works on Android versions higher than 5.0, but it looks like you meet that requirement. Do you have the latest update?
- Translations: I’m working on allowing users to submit translations, but I haven’t found a good tool for doing this yet. For now you could try setting the xClosedLabel and xOpenLabel, these text should display in the app.
- Long device names: There should indeed be a linebreak, I’ll include this asap.
- ButtonDevice: I’m not sure how to handle this, because if there’s too many buttons it should automatically fall back to vertical, and I haven’t found a way to do this yet. I might include a device setting for horizontal buttons, so that every device can be configured independently.
@garnett Hmmm, that should not happen. The frame is set to open external links in the browser though, so maybe that’s what is happening. I guess I can change this behaviour if that’s the case.
Could you send the configuration of that Iframe device to apps@frosted.kiwi? -
@FrostedKiwi said in [BETA] PimaticDroid - Control Pimatic with Android:
Tabs: As you can see in my post above you, I’ve published an update which makes the tabs scrollable. This only works on Android versions higher than 5.0, but it looks like you meet that requirement. Do you have the latest update?
wohoo… thanks… your updates are faster than my playstore with auto-update ^^
looks great, thanks
Translations: I’m working on allowing users to submit translations, but I haven’t found a good tool for doing this yet. For now you could try setting the xClosedLabel and xOpenLabel, these text should display in the app.
thanks for your hint… i add custom labels, looks good now
ButtonDevice: I’m not sure how to handle this, because if there’s too many buttons it should automatically fall back to vertical, and I haven’t found a way to do this yet. I might include a device setting for horizontal buttons, so that every device can be configured independently.
there will be a nice feature… i didnt know how that looks like on the tablet in horizontal view but on my phone the was much empty space