FPZ Input lag

Now when my build is practically finished, I tried playing some games properly rather than just testing to see how/if they run, and felt like there was some input lag. It felt very noticeable in SMB, a game I've played to pieces over the years, so I decided to record it using the "slowmo" setting on my iPhone.


From my rough eyeballing it looks like 20-22 frames at 240fps of delay, meaning 5~ frames at 60fps.

Now, I know some input lag should be expected seeing as it's obviously not a CRT, it feels a bit unfair to bring this up even. I don't want to come off as if I'm bashing the FPZ, keep in mind I'm in general very impressed and happy with it. I'm just looking to see if there are any settings that are FPZ specific somehow that I could try out. I haven't tried the Retropie recommended things like changing the video frame delay, which I will ofcourse. The reason I'm asking is because it's a screen running through the GPIO pins, which I'm guessing has it's own implications and things to consider compared to HDMI. It's also what makes me think it might be possible to get better results than with HDMI? Maybe that's not how it works though, that the lag purely sits in the hardware of the screen itself, I really don't know.

Hey Urre5!

Have you done a similar test while using HDMI output?  That would be a good comparison to make.

The way the LCD driver works is that it clones the HDMI output to the LCD which is accessed using a SPI interface (over the GPIO pins as you mentioned).

When we were evaluating a new FBCP LCD driver that was being develop, we did do a test showing some speed differences between the old FBCP and the new FBCP.

In this case, we are defining drivers as
old: https://github.com/TheFlav/rpi-fbcp/
new: https://github.com/juj/fbcp-ili9341/
And they are selectable from the RetroPie menu under "Freeplay LC Driver" if I recall correctly offhand.

I just uploaded these videos that we took when we were doing the testing.  
old: https://youtu.be/MFhb-zC5FJk
new: https://youtu.be/d-vFXAQ3FlA

I gotta run!  Check it out.

Update 1
I realized that I didn't really explain the video before I had to run out.  We hooked up an LED to the physical button.  The LED will turn OFF immediately when the button is pressed.  Make note of the time on the phone.  Then, you can step through the video frames until either the LCD or the HDMI changes to see how long that input takes to reach the HDMI/LCD.  This test isn't perfect, because the phone's clock resolution isn't super great, but it's pretty good.

Update 2
This RetroPie page (https://github.com/RetroPie/RetroPie-Set.../Input-Lag) talks a lot about input lag.  At the bottom, it shows a graph that mentions that the default (on an SNES title) is adding about 8 frames of input lag.  There should be 60 frames per second, so that would be about 8/60 (or 0.13) seconds of lag.  That's pretty darn close to what you see in the "new" video with the LCD and the HDMI updating at almost the same time.  In the "old" video, we see about the same time (around 0.13s) between the button press and the HDMI update with an added 0.03s before the LCD updates.  Also note that the phone's timer seems to have an accuracy of around 0.03s anyway, so it's tough to get a better resolution than that (from our videos).  You will see the phone jump by about 0.02 or 0.03 seconds each update, so we are probably only accurate to about 2 frames when measuring.  

The point is that (with the new LCD driver on the Freeplay CM3 anyway), the LCD itself isn't really adding much.  The input lag seems to be in the actual emulation.

Now, I know that you were talking about the Freeplay Zero, and I just don't have a video for that already.  The FPZ does also have the option for the "new" LCD driver.  From the main menu, choose RetroPie and then there's an option for Freeplay LCD Driver.  This driver doesn't work quite as well on the FPZ (as compared to the FPCM3), but you may find it to be better.  Please try it and let us know if that helps you at all.
Card Fighters' Clash 2 English Translation ( http://cfc2english.blogspot.com/ )
Neo Geo Pocket Flash Cart and Linker Project ( http://www.flashmasta.com/ )
Avatar art thanks to Trev-Mun ( http://trevmun.deviantart.com/ )

Forum Jump:

Users browsing this thread: 1 Guest(s)