ronan_rt Posted February 9, 2017 Report Share Posted February 9, 2017 Hello folks! Everytime I open a virtual keyboard, I am able to type letters and numbers into a textedit with total success. But somehow, there is a bug in the keyboard. The Keyboard seems to be reframing, like, "redrawing" every 'X' seconds when I try to type faster. There is some bug or My code is messed up? Link to comment Share on other sites More sharing options...
Joel Bodenmann Posted February 9, 2017 Report Share Posted February 9, 2017 Hi, I am not sure whether I understand the problem that you're describing. Can you please create a short video that demonstrates the problem? Link to comment Share on other sites More sharing options...
ronan_rt Posted February 9, 2017 Author Report Share Posted February 9, 2017 Here it comes. See the unecessary refresh of the keyboard. VID_20170209_125221395.mp4 Link to comment Share on other sites More sharing options...
Joel Bodenmann Posted February 9, 2017 Report Share Posted February 9, 2017 That definitely shouldn't happen. The keyboard widget only redraws the key that changed the state (feel free to check the source code). A full redraw of the keyboard widget is only performed if the visibility, enable state (or any of these of the parent container(s)) changed. I'd recommend you try putting the keyboard widget outside of any parent container(s) on your display without your visibility control code to see whether it performs as expected. It's a very simple test (quickly done) that will tell whether it's an issue in your code or something hidden deeper. Link to comment Share on other sites More sharing options...
ronan_rt Posted February 9, 2017 Author Report Share Posted February 9, 2017 (edited) This is happening with the example on the ugfx demos\modules\gwin\keyboard . and \demos\modules\ginput\keyboard. Note that if i HOLD the key, it bugs a lot. Changes to one letter to another one. This is shown on the video Edited February 9, 2017 by ronan_rt Link to comment Share on other sites More sharing options...
Joel Bodenmann Posted February 9, 2017 Report Share Posted February 9, 2017 How can this be happening with /demos/modules/ginput/keyboard? Did you actually try running the /demos/modules/gwin/keyboard demo on your hardware without any custom code? Link to comment Share on other sites More sharing options...
ronan_rt Posted February 9, 2017 Author Report Share Posted February 9, 2017 Here is the example at the demos\modules\gwin\textedit_virtual_keyboard VID_20170209_134336684.mp4 Link to comment Share on other sites More sharing options...
Joel Bodenmann Posted February 9, 2017 Report Share Posted February 9, 2017 That's strange. We'll look into this. I put it on the ToDo list. But it might take several days / weeks until we get to it. Link to comment Share on other sites More sharing options...
inmarket Posted February 9, 2017 Report Share Posted February 9, 2017 I had a look at the video. To me that looks like a touch driver problem. You don't seem to be getting consistent readings (or perhaps touched detection) from the touch device. This is causing the button to flicker as it tries to redraw to keep up with the variant readings it is getting. Try using the demos/tools/touch* demos to get reliable behaviour from your touch device first. Link to comment Share on other sites More sharing options...
ronan_rt Posted February 9, 2017 Author Report Share Posted February 9, 2017 @inmarket and @Joel Bodenmann, im using resistive touch of RA8875. Maybe adding some debounce function will resolve?? Will you try something like this (resistive touch+ra8875? Link to comment Share on other sites More sharing options...
Joel Bodenmann Posted February 10, 2017 Report Share Posted February 10, 2017 The GINPUT module performs all the fancy filtering and calibration required to get consistent readings. But it can't do that job well if the coordinates it gets as an input are incorrect. Please follow the advice you were given. Link to comment Share on other sites More sharing options...
inmarket Posted February 10, 2017 Report Share Posted February 10, 2017 There is a board file in your project for the RA8875 driver which specifies parameters for Error, Debouncing, Touch levels and various other factors. It is likely that those parameters are not right for your hardware. The touch demo tools mentioned above help you set the correct values for your hardware. Link to comment Share on other sites More sharing options...
Joel Bodenmann Posted February 10, 2017 Report Share Posted February 10, 2017 @inmarket: note that @ronan_rt wrote his own touch driver. Our RA8875 driver currently only supports the display, not the touchscreen (the RA8875 is both a display and a touchscreen controller, but we only have a GDISP driver for it at the moment). Link to comment Share on other sites More sharing options...
ronan_rt Posted February 16, 2017 Author Report Share Posted February 16, 2017 @Joel Bodenmann, @inmarket. Why this two things (at the videos) are happening!? The first one is: breaking the keyboard + poping wrong letters. Second one: Poping letters that I didnt type. Keyboard is working soooooo baaadly VID_20170216_102710057.mp4 VID_20170216_102808711.mp4 Link to comment Share on other sites More sharing options...
inmarket Posted February 16, 2017 Report Share Posted February 16, 2017 This is a touch problem. What happens is that as the touch is being released or pressed many touch controllers give wildly inaccurate readings - including obviously your controller. If not detected and filtered correctly they give exactly the symptoms you are seeing. Do not use the controllers touch detected pin (if it has one). They are just too inaccurate. Instead use z values provided by the controller registers. There are plenty of other drivers to show how it is done. Please play with the touch demo as requested above. It will help you set the correct values in your board file to get reliable performance. Look particularly at the z value figures for touch detection and the jitter deltas. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now