After trying different types of level shifters I found no fix for the random mistakes for the button presses. The issue looks to me the select lines are misinterpreted. It is a mistake in the input, not a random false press.

The presses not showing mistaken in jstest. There are references where gamecon_gpio_rpi lists that there are issues with Gamecube and N64 controllers due to variations in timing due to cpu frequency changes or such. I get these "incorrect" presses when in scrolling through to select games, I get them usually just a couple seconds into a game launching. They may be slightly different between controllers.

At this point, without any input on something else to look into I am unfortunately giving up on using db9_gpio_rpi for the Genesis type controllers. I would love to be able to use it, it is a very nice feature to have and my setup was design specifically to include two db9 ports.

I am going to try to see if mode 3 "Multisystem 3-button joystick" mode will work reliably. It will give me some use of the db9 ports. I do have a Multisystem 2-button joystick, but it is not registering the second button press, I makes me wonder if the logic is backward from the C64GS 2 button? That will be my next thing to look into.

For the Genesis 6 button controller I guess I will use a
DaemonBite-Retro-Controllers-USB adapter. I wanted an integrated solution though.