I think I may have to add a de-bounce circuit to my buttons, it's mainly the down button that skips over files.
I have modified my gotek a little but I don't think this is causing the issue. (extended buttons via a d-sub to an optional LCD and button box)
anyone else having the same issue ?
Gotek - De-bounce circuit ?
Re: Gotek - De-bounce circuit ?
I find it a bit tricky in operation also.
Pretty sure the contacts aren't actually bouncing, rather it's the way the state of the switches is polled in software. Maybe I dreamt it, maybe I read in some post here that in the SD card version the switches generate hardware interrupts but that in the Gotek version switch state has to be implemented in software polling.
I have found that a short sharp press of a button sometimes isn't detected by the emulator, suggesting a button has been pressed and released between successive polling of the switch states.
Suppose polling is every 50ms (just as an example, I don't know what it is ), then on pressing the button it could be anywhere from virtually instantly, to 50 ms before the button press is detected in software. To be sure of the button press being registered, you therefore need a press of 50ms. You then run into the situation of the software polling twice if you keep the button depressed fractionally longer than 50ms.
In an ideal world you want the time to first detecting a depressed switch to be as short as possible for responsiveness, but once a button press is detected, delay the time to next polling that switch to be greater than the longest "momentary press time", which of course might vary from user to user......
Just my hypothesis on what may be happening.... I could be entirely wrong.... Shoot me!
A further quirk I have observed is the second line of the LCD display flickering whilst waiting for user to "Choose File". Has anyone experienced this? I have two emulators both showing some flicker. I wondered about power supply smoothing, but since one line of the display is constant I doubted this.
regards
Ian
Pretty sure the contacts aren't actually bouncing, rather it's the way the state of the switches is polled in software. Maybe I dreamt it, maybe I read in some post here that in the SD card version the switches generate hardware interrupts but that in the Gotek version switch state has to be implemented in software polling.
I have found that a short sharp press of a button sometimes isn't detected by the emulator, suggesting a button has been pressed and released between successive polling of the switch states.
Suppose polling is every 50ms (just as an example, I don't know what it is ), then on pressing the button it could be anywhere from virtually instantly, to 50 ms before the button press is detected in software. To be sure of the button press being registered, you therefore need a press of 50ms. You then run into the situation of the software polling twice if you keep the button depressed fractionally longer than 50ms.
In an ideal world you want the time to first detecting a depressed switch to be as short as possible for responsiveness, but once a button press is detected, delay the time to next polling that switch to be greater than the longest "momentary press time", which of course might vary from user to user......
Just my hypothesis on what may be happening.... I could be entirely wrong.... Shoot me!
A further quirk I have observed is the second line of the LCD display flickering whilst waiting for user to "Choose File". Has anyone experienced this? I have two emulators both showing some flicker. I wondered about power supply smoothing, but since one line of the display is constant I doubted this.
regards
Ian
Re: Gotek - De-bounce circuit ?
WOW, Good going Jeff!! Thanks!!
Will give it a try when I'm back home in 2 days.
Your efforts are much appreciated here.
Ian
Will give it a try when I'm back home in 2 days.
Your efforts are much appreciated here.
Ian
Re: Gotek - De-bounce circuit ?
Checked the alpha version
Great work.
Much nicer file selection now
Thanks Jeff.
Great work.
Much nicer file selection now
Thanks Jeff.