Some Discussions on T-Valve Components

A few days ago, one of my followers, @Nodnil, raised some questions about T-Valve components. The main questions were about whether 0 and 100 correspond to open/close states, and some issues with the suck axis. I welcome everyone to discuss these questions.

First, let’s look at the post by TempestMax, the author of the T-Valve component: https://www.patreon.com/posts/may-update-v3-0-51081118

The key parts are as follows:

The T-valve is now on the A0 and A1 channels. By default the valve now operates an automated suck algorithm on the “A1” axis. That means it opens on the way down and closes to a commanded position on the way up. It’s 50% by default but you can change the default in the options at the top of the firmware.

“A0” offers direct control override of the valve position for any app developer who wants to write their own valve control algorithm.

I’ve included an easy option to reverse the valve servo direction, which was a popular request.

  1. How effective is suck algorithm?

If we use the T-Valve component but without any scripts(.valve.funscript/.suckManual.funscript), the Valve is automatically driven by the algorithm. I’ve tested it, and the results are not ideal, consistent with other users’ reviews on the forum.

Therefore, I switched to manual control. From my current experience, closing the valve provides some resistance during slow BJ movements (note that this is resistance, not suction), making the BJ effect better.

Closing the valve during other fast movements produces unpleasant effects, making us feel uncomfortable. Therefore, I basically only close the valve during slow BJ movements.

  1. Does 0 correspond to open or close?

I disassembled my T-Valve Components to check the hardware.

We see that 0 is closed and 100 is open.

Position 0 T-Valve closed

Position 100 T-Valve open

In an article published by TempestMax, we saw this sentence: “I’ve included an easy option to reverse the valve servo direction, which was a popular request.” This means that the hardware configuration and specifications might be reversed, so the firmware provides an option to reverse it.

My scripts(.valve.funscript/.suckManual.funscript) are currently written directly based on the hardware, so inversion shouldn’t be necessary.

Dear fan Nodnil, do you have any further questions? Could you please provide a hardware image of your T-Valve components? Perhaps the hardware manufacturer has already addressed this issue.

3 Likes

Nodnil and I had a nice discussion over on the ES discord about this. And I’ve tried out and verified a few things with it in my latest script. So I’ll give my two cents.

Closed or Open?

I’ll refer to this piece of code from the firmware:

  boolean suck;
  if (tcode.AxisLast("A1") >= tcode.AxisLast("A0")) {
    suck = true;
    valveCmd = suckCmd;
  } else {
    suck = false;
  }
  // Set valve position
  if (suck) {
    if (upVel < -5) {
      valveCmd = 0;  
    } else if ( upVel < 0 ) {
      valveCmd = map(100*upVel,0,-500,suckCmd,0);
    }
  }
  valvePos = (9*valvePos + map(valveCmd,0,9999,0,1000))/10;
  • The first part is just to recognize whether A0 or A1 received the most recent value, i.e. whether to use the suck mode or not.
  • From the lower if statement we can see that when upVel (velocity in upward direction) is smaller than -5 (negative!), i.e. the stroker is in a fast enough downward motion, then it sets the command value to 0.
  • The mapping function does not invert over the interval. From that I deduce that 0 actually means, that the valve has to be open.
  • This is also in line with the interpolation mapping if upVel is in between -5 and 0 which is the else if case (this is done to avoid jitter and smooth the movement). It sets
    – valveCmd = 0, if upVel == -5 and
    – valveCmd = suckCmd, if upVel == 0.
  • For the upward motion (upVel > 0) it just takes the original suckCmd from the upper if statement.

tl;dr; 0 means open, 100 means closed. A flag can be changed to invert the behavior in the parameters, if the servo is behaving differently.


Suck Mode vs. Valve Direct Control

I found that the Suck Mode can:

  • Increase intensity through more friction (like you said). I made use of that to intentionally add and reduce at places.
  • Keep the lube in more (probably because of the negative pressure).
  • Increase power consumption. This is especially important, because when the motors stall, then the strokes are shortened. Depending on the speed, sleeve, lube, and more, for an extreme case I have measured almost double the power required for strokes around 250-300 u/s and suckCmd=100%.

With Direct Valve Control I have tried out different things:

  • To avoid a violent breakage of negative pressure at the tip, when the stroke is fast enough. I’ve opened the valve slightly earlier to do so. This has worked as intended.
  • For sequences where I want the negative pressure to “suck you back in” (e.g. during BJs), I open the valve for a short period at the bottom part of the stroke and close it again for the upwards motion. I’m not entirely sure about the results, since it is dependent on many things: How airtight the whole thing is as well as the stroke speed and the sleeve itself. It was a longshot anyways. But I did see a difference in the power consumption, which leads me to believe that there is in fact an effect. Even if it’s only hard to consciously perceive it. So I’ll put it into the category of “gimmick”
  • To increase the resistance during downward motions, e.g. for initial penetration. For very slow movements, this almost isn’t noticeable. But it does register, if the setup is quite airtight (I’m testing/using a different valve design) and is clearly noticeable at slow to medium speeds.

General Things Valve

  • Imo there is a lot of dead zone with how the valve is implemented. Meaning that at 50% it can behave as if it was fully open (0%), because the air still has enough of a cross section area to flow through such that it isn’t compressed. To make use of the full dynamic range of the valve, I limit the axes’ ranges for valve and suck (in MFP/XTP).
  • That also means that scripters have to think about the valve/suck value depending on the speed. Slower strokes need a more closed valve compared to a faster stroke to have the same effect.
  • A lot hinges on how airtight the sleeve is to the case and the case to the cap, as well as the valve itself. In any case, the slight negative pressure is lost pretty quickly.

I’d be very interested to hear what others have tried out with the valve and what your experiences are.

I never found it to work very well for me, and ended up just removing it. Simpler not needing the case to be wired to the SR6.

I was really looking forward to trying out the valve. I primarily bought the T-valve unit with the lubrication option, my initial reason was simply for the i-lube compatibility, the suck valve was a bonus in my mind…

It’s underwhelming, even on slow scripts. Noisy. It doesn’t “snap” closed quickly enough to provide much suction at all, setting it up as half-open to better create negative pressure on an up-stroke, affected the down-stroke too.
Most Fleshlight designs are pretty narrow for me, there’s already plenty of friction and “resistance” on penetration, the additional pressure from the valve just made it worse.

When it does close, yes, it creates noticeably more suction. But again.. this is only really achieved in smaller sections of a stroke length. I’m not expecting the same feel as someone actually sucking my cock - nor am I expecting a Venus2000 or SeriousKit milking machine effect, that’s not what this toy is designed for anyway. However, the valve goes unused 99% of the time, whereas the lube dispenser portion is used every time. I’ll probably remove the parts, servo and wiring to save on the weight at the end of the arms - I can always put it back if I want, I guess.

Currently looking at small electric air pumps for a totally different and not-adult-related project, I’m now curious if there might be a different method for this which can be IoT controlled… if i can better seal the case parts, all I need for lube injection is a connection to push a hose thru, not a whole apparatus, and maybe an instant-on air pump is a method? Definitely not compact nor easy…

IDK about non-fleshlight sleeves - I do know the most “sucking” sensation FLs have a certain texture that mimics, and it’s been more successful for me than a valve. When there are full rings, “flaps” and any structures like bumps pointing inwards like the Destroya, it’ll tend to add this sensation. Gina Valentina’s pussy FL, Vanna Bardot mouth, Destroya, Madison Ivy pussy, and a bunch of others have the ring-like structure and bits that have a “pull you in” feel.