Got around to taking a look at the RIF today. Piston was all the way forward before I touched the GB, but the tappet plate wasn't. It sprung forward as I was pulling the shell apart, and I noticed the trigger trolley spring was mounted such that it was interfering with the tappet plate. I really hope this is the reason for the low FPS. I believe it's also possible this caused the trolley to be held ajar. Electrical components all check out. Did a quick test after disassembly and motor spins fine. Motor heats up a bit, but seems to stabilize at a reasonable temperature. I did like 30+ successive trigger pulls with the motor in my hand. I will reassemble and test tomorrow. I do have some more pictures and a video to show some concerns, though: I have an intermittent airseal issue ONLY when the tappet plate is installed. Everything else checked out fine. I noticed the Lonex tappet doesn't sit perfectly flat against the front of the gearbox, whereas the VFC does. The Lonex tappet also doesn't quite hug the nozzle as well as the VFC tappet plate. This is very hard to see in the pictures but if you look closely I think you can see that there's more of a gap between the nozzle and the Lonex tappet at the bottom. The nozzle is definitely held more securely by the VFC tappet. I'm considering modifying it to fit the Lonex GB. Here's the video showing the intermittent airseal issue. It seems to be quite literally fractions of a millimeter difference in the way the tappet sits that affects the airseal. I cannot visibly tell the difference. I just have to fiddle with it a bit to make the change.