Max 3 writing on e-books: broken palm rejection and stray lines / disappearing ink
After the most recent firmware update, the Max 3 has completely broken palm rejection and broken writing on e-books.
Resting the palm on the screen while writing on a PDF causes the device to recognise a "pinching" action and to randomly zoom the screen in and out. The palm also sometimes highlights words and causes the dictionary definition to come up. Even worse, the zoom function becomes laggy and sometimes stays zooming in and out for 30 seconds after I have lifted my palm off the screen.
It is clear from these problems that palm rejection is very broken in this firmware version and it makes writing on e-books almost unusable.
The second problem is that when writing on an e-book, if a finger or small section of palm moves back and forth from the right edge of the screen (assuming you a right-handed) it causes the ink to create stray lines or the ink to disappear. This completely frustrates the writing process and makes writing on e-books almost unusable.
The two problems combined create a very buggy experience when writing on e-books.
This problem occurs with a full-size e-book or split screen e-book and note. It sometimes also occurs in the note writing app.
These issues are occurring on firmware build number: 2020-04-09_18-53_2_3_7c5d74f.
If you own a Max 3 and have encountered these problems please share in the comments below.
-
Official comment
Hello,
Thanks for your feedback here! Apology for any inconvenience has caused!
In this case, you are suggested to submit bugs on Feedback via Settings/ Feedback on your device. Please make sure that you tick the option "send logs" while sending the Feedback so that we can analyze and diagnose the exact problem better. Our relevant colleagues will reply to you via email within 7 working days after you submit the Feedback.
Thanks for your cooperation!
-
I have submitted feedback and my feedback has been ignored. Further, the feedback feature on the latest firmware is broken. There is often (but not always) no way for me to see the responses from the feedback.
Please just let me submit a bug ticket from the web.
0 -
I have investigated further and it discovered the issue is only in the Neo Reader android app. This is definitely not a hardware issue.
I've reviewed the application logs when I reproduce the error and it seems Neo Reader has fault palm rejection as it detects electromagnetic touch input while the user is writing with the pen (hence palm is not rejected when pen is in use).
This causes the app to try and track the user's palm or edge of finger while the user is writing. When the palm is near the edge of the screen it causes a hit detection that fails which I believe results in an unexpected condition where the ink first disappears, the error of hit detection is handled and then the ink is drawn (or sometimes not drawn) but glitched by creating extra lines that were not drawn by the stylus.
You can see this occurring in the log below. Note the first error occurring in the neopdf app where "No selection -1, -1" appears. This error occurs when the edge of palm or edge of finger moves from edge of screen to off screen. Then notice how there are two events with waveform_mode = 255. I believe this is the electromagnetic touch waveform mode. Electromagnetic touch should not be registered while the user is writing, if palm rejection is working!
Finally, an attempt is made to render the ink that the user has drawn with the stylus but the result is glitched which creates one or more straight lines not drawn by the user (see waveform_mode = 2 near end of log).
This all seems to indicate that there are some severe bugs in the neopdf app causing these problems. Please investigate these quickly as it is making the device unusable!
6-23 22:54:41.333 570 1892 E SurfaceFlinger: HandlePenTrigger, sid: -1 value is: 0 pid 0
06-23 22:54:42.511 570 570 I SurfaceFlinger: Post, sid: -1 current 0 value is: 1 pid 1976
06-23 22:54:42.512 570 2098 E SurfaceFlinger: Pen state change to value: 3 pid: 1976
06-23 22:54:42.512 570 2098 I SurfaceFlinger: Post, sid: -1 current 1 value is: 1 pid 1976
06-23 22:54:42.512 570 2098 E SurfaceFlinger: State changed!
06-23 22:54:42.515 1976 1976 I B : APN = __ ---> 5
06-23 22:54:42.520 1976 7290 E libneopdf: 2020-06-23 22:54:42.519 ERROR [7290] [Java_com_onyx_android_sdk_neopdf_NeoPdfNative_nativeHitTest@1046] No selection -1, -1
06-23 22:54:42.549 1976 7290 I B : RR LUD ---> 18
06-23 22:54:42.570 1976 7290 I B : RP D C P ---> 18
06-23 22:54:42.594 1976 7290 I B : RNP R N ---> 23
06-23 22:54:42.599 1976 7290 I B : RR: ---> 72
06-23 22:54:42.603 546 825 I SDM : update_to_display[0/1] -- marker[2946] waveform_mode = 255, update_mode = 0, Rect[0 0 2149 1650], flags = 0
06-23 22:54:42.736 1976 1976 I MVTH : L R : [R(0, 6 - 1650, 2142)]
06-23 22:54:42.736 1976 1976 I MVTH : E R : [R(1623, 447 - 1650, 527)]
06-23 22:54:42.740 570 2098 I SurfaceFlinger: Set limit region: (0 6) - (1650 2142)
06-23 22:54:42.743 570 2098 I SurfaceFlinger: Set exclude region: (1623 447) - (1650 527)
06-23 22:54:42.745 570 2098 E SurfaceFlinger: Pen state change to value: 2 pid: 1976
06-23 22:54:42.745 570 2098 E SurfaceFlinger: State changed!
06-23 22:54:42.749 1976 1976 I B : SRDEI = T ---> 14
06-23 22:54:43.976 570 2098 E SurfaceFlinger: Pen state change to value: 3 pid: 1976
06-23 22:54:43.976 570 2098 I SurfaceFlinger: Post, sid: -1 current 1 value is: 1 pid 1976
06-23 22:54:43.977 570 2098 E SurfaceFlinger: State changed!
06-23 22:54:43.979 1976 1976 I B : APN = __ ---> 5
06-23 22:54:43.986 1976 7290 E libneopdf: 2020-06-23 22:54:43.986 ERROR [7290] [Java_com_onyx_android_sdk_neopdf_NeoPdfNative_nativeHitTest@1046] No selection -1, -1
06-23 22:54:44.034 1976 7290 I B : RR LUD ---> 34
06-23 22:54:44.060 1976 7290 I B : RP D C P ---> 22
06-23 22:54:44.086 1976 7290 I B : RNP R N ---> 25
06-23 22:54:44.092 1976 7290 I B : RR: ---> 99
06-23 22:54:44.103 546 825 I SDM : update_to_display[0/1] -- marker[2947] waveform_mode = 255, update_mode = 0, Rect[0 0 2149 1650], flags = 0
06-23 22:54:44.205 1976 1976 I MVTH : L R : [R(0, 6 - 1650, 2142)]
06-23 22:54:44.206 1976 1976 I MVTH : E R : [R(1623, 447 - 1650, 527)]
06-23 22:54:44.209 570 2098 I SurfaceFlinger: Set limit region: (0 6) - (1650 2142)
06-23 22:54:44.212 570 2098 I SurfaceFlinger: Set exclude region: (1623 447) - (1650 527)
06-23 22:54:44.214 570 2098 E SurfaceFlinger: Pen state change to value: 2 pid: 1976
06-23 22:54:44.214 570 2098 E SurfaceFlinger: State changed!
06-23 22:54:44.218 1976 1976 I B : SRDEI = T ---> 13
06-23 22:54:44.224 655 762 E storaged: getDiskStats failed with result NOT_SUPPORTED and size 0
06-23 22:54:45.115 1976 7290 I B : ASBR: ---> 20
06-23 22:54:45.648 1976 7290 I B : RNP R N ---> 25
06-23 22:54:45.651 1976 7290 I B : NDRR: ---> 55
06-23 22:54:45.658 546 825 I SDM : update_to_display[0/1] -- marker[2948] waveform_mode = 2, update_mode = 0, Rect[1350 195 504 279], flags = 800000
Please sign in to leave a comment.
Comments
3 comments