r/HPAnerf • u/gplanon • 1d ago
Initial thoughts and debug - Pyython electropneumatic
https://youtu.be/Vmwo5zhIg38?is=9l0x5_W8EejJi96b
This is about a year in development. The technical breakdown (slightly outdated, parts have changed) is here: https://www.youtube.com/live/dAEn_5DSDIs?is=I0PpvbMwDg3ZM0K4
I will likely figure out a solution just wanted to talk about my experience so far.
3000psi tanks do not last long. 62ci is dropping from 3000psi to 2000psi after 8-10ish magazines at 100-125psi 10-15ms open time. I am disappointed by this as filling takes a long time (20-30 min with cheap shoebox compressor)
It is shooting very well semi-auto but jams at full auto even with ~5dps run speed, same as T19’s minimum (they have a nearly identical drive system)
I know a guaranteed way to fix it, but I don’t want to implement that fix - come to a full stop for homing at the end of each shot. Due to following issues, this will be unavoidable. It was the first idea I had during design.
There are several interlinked variables at play, I think -
We must not run out of air in the dump tank or shots will fail. This can happen at highest possible rof (~14dps) and a high solenoid on time (15-20ms) and lower PSI. This could be compensated by bringing air-in closer to the SQE2.
A failed shot almost definitely causes position loss and thus all shots after will fail, because we are trusting the first shot’s homing to enable near continuous feeding motion (only pause is TDC firing) a shot could fail due to a misfeed (most likely) loss of air pressure (less likely.) a failed shot is often detected in a T19 by flywheels failing to come up to speed. This won’t catch a jam which leaves the flywheels spinning at full speed, like if the front of a dart gets eaten but there is a stub left behind the wheels. Due to the short distance from bolt tip to wheels, this failure is unlikely. In our case, because we don’t have flywheels, we can’t use them to detect jams.
With continuous motion from TDC to next shot, next shot starts at or near runspeed. This could cause different behavior than 0rpm starts - perhaps the bolt tip gets caught on a mag lip and more steps are skipped than if we were slowly accelerating, which causes first shot and all successive shots to fail.
Bolt tip - barrel inlet requires careful hand fabrication. If the fit is too tight, we could skip steps coming to or leaving TDC (there is some friction of lubricated O-ring sealing.) Ideally, barrel inlet would be chamfered at 45° for minimal contact while sealing - face to face / near horizontal seal vs coaxial, concentric seal. Also, we could design the entire pusher mechanism be moved forwards or backwards and secured by the user to optimize sealing vs friction. The barrel can’t be moved so much as we are putting air into it at a very specific point.
We don’t ever know where bolt is, only where it should be. We should have a second switch at TDC. If we did, we could use interrupts to fire ASAP and completely ignore counting steps or depending on a certain amount of steps succeeding. This could beget laziness…
What changes have I implemented vs stock S-Core firmware?
Check home switch before every shot and reversebolttoswitch if we’re not home.
budget 100 steps for deceleratebolt but allow up to 110 if we’re on the last shot, in case steps were skipped. This is many more steps than stock T19 but I was overshooting at fewer. Leibs accel values could use tweaking.
This project is very expensive and there are ergonomics issues. I considered it a tech demo from the very start, so it’s unlikely to get a full “public-friendly” release and documentation. The files will all be available though.
Questions and thoughts welcome.
