WaveDyno
Docs Pricing Open the app
  1. Home
  2. Docs
  3. Reed vs piston port vs rotary disc

Reed valve vs piston port vs rotary disc: one engine, three intakes

Tutorial 7 · about 15 minutes plus two sweeps (three if you don't have tutorial 3's project)

Ask which intake is best on a two-stroke and you get three camps. The reed people say it stops the engine spitting mixture back out of the carb, so it pulls better low down. The rotary-disc people say a disc can open early and close late, so it's the racer's choice. The piston-port people say theirs is simple and works fine on the pipe. Moped, vintage and kart forums all have the thread.

All three are answers to one problem. A two-stroke breathes through its crankcase: the piston rising pulls mixture in, the piston falling pushes it up the transfers. Whatever controls the intake decides when the crankcase is open to the carb, and whether mixture can flow back out.

  • Piston port: the piston skirt uncovers a window in the cylinder wall. The timing is symmetric around top dead centre and fixed by the cylinder.
  • Reed valve: flexible petals over the inlet open when the crankcase pressure falls below the carb's and close when it rises, so the flow goes mainly one way.
  • Rotary disc: a disc on the crank with a cut-out opens and closes the inlet. The timing is fixed by the disc, and it doesn't have to be symmetric.

This guide puts all three on one engine in WaveDyno. You take tutorial 3's 50 cc piston-port engine, switch the intake to a reed and sweep it, then to a rotary disc and sweep again. Each run changes one setting, so you can see what each intake did on this engine.

What the page can't answer:

  • Your engine. The example is a generic 50 cc piston-port single built from a template, not a model of any moped, scooter or kart engine. It shows what changes when only the intake type changes.
  • A real reed. WaveDyno's reed here is ideal: it opens and closes instantly with the pressure, with no lag, and lets nothing flow back out. It has no petals, so no petal mass or stiffness, and its opening is one effective diameter, not the piston port's window (step 1). The runs show what this valve did on this engine. They don't predict what a real reed block would do, better or worse.
  • A matched conversion. Nobody converts an engine to a reed or a disc by changing one thing. The carb, the crankcase, the transfer ports and often the pipe change too. Here only the intake type changes, so the comparison shows the valve, not a finished build.

Everything here runs on WaveDyno's free plan with daily run limits. Each sweep has 19 points and counts against the daily limit; the Run dyno button shows the estimate before you start (21.4 units for each sweep here). If you have tutorial 3's project, you need two sweeps; from scratch, three. A finished sweep is charged what it actually used, up to its estimate. Depending on what you've already run today and what each sweep is charged, you may not get through them all in one UTC day. The app refuses a run whose estimate doesn't fit in what's left of the day, and the limit resets at midnight UTC. Your runs stay in the project, so you can pick up where you stopped.

The engine

Start from the 50 cc engine in Tune a 50 cc moped pipe, tutorial 3.

  • If you have tutorial 3's project, use it. Restore the baseline run's inputs so the transfer, chamber and stinger changes from that guide are gone: pick baseline in the run picker in the header, click Restore config from selected run, then Restore configuration. Its baseline sweep is your piston-port result; you don't need to run it again.
  • If you don't, build it as tutorial 3 steps 1 and 2 describe: the setup wizard with bore 38, stroke 44, the ports, the intake and target 7900, then the intake port edit. Set the sweep to 5000 → 9500, step 250, Quality Standard (tutorial 3 step 4), run it and name it baseline.

If your baseline comes back at once, marked cached, the app has found an identical run and reused its result. The numbers are the same.

Check what you start from on Build → Ports → Intake port: Port type Piston port, Intake duct diameter 21 mm, Port / passage Cd 0.85, Opens / closes 72.5 °BTDC/ATDC, and the line Flow area 492 mm² · equivalent Ø 25.0 mm. The timing ring reads IO 288° IC 73° and intake 145°. Keep the sweep the same for every run in this guide: Compare only shows a delta where both runs have the same rpm.

In our baseline all 19 points converged. Its best sampled point is 6.88 kW (9.2 hp) at 7,250 rpm, and it falls off the pipe by 43.5 % between 7,250 and 7,500. Tutorial 3 step 5 reads the curve in detail.

1. Switch to a reed

Open Build → Ports → Intake port and change Port type from Piston port to Reed — ideal. Nothing else.

The card gets shorter. It now shows only Port type, Port effective diameter 21 mm and Port / passage Cd 0.85. The window fields and the Flow area line are gone, because a reed isn't timed by the piston. On the timing ring, IO, IC and the intake arc disappear for the same reason.

Build, Ports: the Intake port card with Port type set to Reed — ideal, Port effective diameter 21 mm and Port / passage Cd 0.85, above the note on what Cd meters. There are no window fields and no Flow area line.
Build → Ports, intake card with Port type set to Reed — ideal

Note what the 21 mm now means. On the piston port it's the intake duct (usually the carb bore), and the flow area comes from the 492 mm² window. On the reed it's relabelled Port effective diameter: one equivalent opening for the whole inlet path, carb, reed and passage together. The app keeps the number when you switch, so this run has a smaller effective inlet than the piston port had. That's part of what this one-change comparison measures. A real reed conversion would size its own.

Run it and name it reed. Open Compare → Diff inputs, pick baseline as Before and reed as After: it should list one change, Intake / Valve Type, pistonPort → reed.

The Diff run inputs dialog, Before baseline and After reed, listing one change: Intake / Valve Type, pistonPort to reed.
Compare → Diff inputs, reed against baseline: Valve Type only

The run's own description may not match. Depending on the app version, after Restore configuration it compares with the run you restored or with the previous run in the project, so it can list more changes than this. Diff inputs is the one to check.

2. Read the reed against the piston port

When the sweep finishes, the Dyno tab overlays it on the runs before it. In Compare, show baseline and reed, and click baseline on baseline.

rpmPiston port kWReed kWchange
5,0002.752.93+0.18
5,2503.453.64+0.18
5,5003.864.00+0.14
5,7504.904.81−0.10
6,0006.045.95−0.09
6,2506.566.64+0.07
6,5005.085.96+0.88
6,7505.505.44−0.05
7,0006.376.22−0.14
7,2506.887.09+0.21
7,5003.897.26+3.38
7,7504.314.33+0.02
8,0004.564.65+0.09
8,2504.864.93+0.07
8,5004.985.03+0.05
8,7504.604.60+0.00
9,0004.504.55+0.06
9,2504.544.57+0.04
9,5004.154.23+0.08

All 19 reed points converged.

Italics: 6,500 is the piston port's dip. The reed moves it by +0.88 kW while the points either side move by +0.07 and −0.05. A single point that jumps like that needs a finer sweep before it's used, and we didn't run one. So the power and exhaust-temperature comparisons below leave 6,500 out, for the reed and for the rotary disc, and say so where they do.

  • Low down, the reed is ahead: +0.14 to +0.18 kW from 5,000 to 5,500 rpm, or +3.6 to +6.5 %.
  • Through the middle, it's close but no longer behind all the way: from 5,750 to 7,250 (leaving out 6,500) it's behind at four points, by −0.05 to −0.14 kW (at most 2.2 %), and ahead at 6,250 (+0.07) and 7,250 (+0.21).
  • At the top it's ahead: its best point is 7.26 kW (9.7 hp) at 7,500, where the piston port has already fallen off (3.89 kW). Best against best, that's +5.6 % on the piston port's 6.88 kW at 7,250.
  • It comes off the pipe one step later, between 7,500 and 7,750 (−40.4 %, against −43.5 % for the piston port between 7,250 and 7,500), and from 7,750 to 9,500 it's within +0.00 to +0.09 kW of the piston port.

So on this engine the reed moved the fall-off up one step, 250 rpm. Below it, it added a little at the bottom and stayed within a few tenths of a kW through the middle.

Dyno comparison of rotary disc (orange, with points, the primary run), reed (blue) and baseline (green, the baseline). Power from 5,000 to 9,500 rpm, output as solid lines and indicated as dashed lines. The reed and baseline lines lie close together up to 7,250 rpm. The baseline drops after 7,250; the reed stays up at 7,500 and drops after it. The rotary disc line is below them at most points up to 7,250, is at about 7.1 kW at 7,500, between the reed and the dropped baseline, and drops after 7,500 like the reed, running with the other two from 7,750 up.
Dyno comparison: baseline, reed and rotary disc

A possible why: the mixture that goes back out

The sweep's CSV (the download icon in the chart header) has two columns the charts don't: intake_forward_mass_mg, the mixture that comes in through the intake each cycle, and intake_reverse_mass_mg, the mixture that goes back out the same way. For the piston port:

rpm5,0005,5006,0006,5007,0007,500 and up
pushed back out, mg per cycle11.48.03.41.50.50.3 or less
share of what came in16.2 %10.3 %3.2 %1.6 %0.5 %0.6 % or less

At 5,000 rpm, a sixth of what the piston port draws in goes back out of the intake, and by 7,500 rpm practically nothing comes back. The usual explanation fits those numbers, though these runs don't test it: the window closes 73° after top dead centre, when the piston is already on its way down, so at low rpm it pushes some of the mixture back out before the window shuts, and as the revs rise the mixture's own momentum carries it in against that push.

The ideal reed has 0.0 mg at all 19 points: it can't flow backwards. Its low-rpm gain is where the piston port's backflow is largest, and it's gone by 5,750, as that backflow falls. That makes backflow a possible explanation for the gain, not a proven one: switching to the reed also changed the effective inlet (step 1), and these runs can't separate the two. Above 7,500, where the piston port loses nothing back through the intake either, the two are within 2 %.

We didn't test why the reed is slightly behind through the middle. One difference is in the inputs: its inlet is the 21 mm effective opening, smaller than the piston port's window.

Exhaust temperature follows a similar pattern. Set the second chart to EGT (measured 120 mm down the header): the reed runs 14 to 40 °C cooler from 5,000 to 5,500 rpm, 27 to 82 °C hotter from 5,750 to 7,500 (leaving out 6,500), and within 7 °C of the piston port from 7,750 up.

3. Switch to a rotary disc

Restore baseline again (run picker → baseline → Restore config from selected run → Restore configuration), so this run is one change from the piston port, not from the reed. Then on Build → Ports → Intake port, change Port type to Rotary disk. Nothing else.

The card now shows the disc:

  • Port effective diameter 21 mm and Port / passage Cd 0.85, as for the reed: one equivalent opening for the whole inlet path.
  • Rotary opens 165 °BTDC and Rotary closes 85 °ATDC. That's 250° open, against the piston port's 145°: it opens much earlier and closes about 12° later.
  • Aperture radius from axis 45.0 mm, and the disc's drag: Boundary/rubbing torque 0.030 N·m, Viscous torque coeff. 10.0 µN·m·s/rad. The line under them reads At 7,900 rpm: 0.048 bar FMEP · 32 W. The drag comes off the brake power; it doesn't change the gas flow.
Build, Ports: the Intake port card with Port type set to Rotary disk, Port effective diameter 21 mm and Port / passage Cd 0.85. Under Rotary geometry: Rotary opens 165 °BTDC and Rotary closes 85 °ATDC, with the line intake duration 250° under them, and Aperture radius from axis 45.0 mm. Under Mechanical disk drag: Boundary/rubbing torque 0.030 N·m and Viscous torque coeff. 10.0 µN·m·s/rad, and the line At 7,900 rpm: 0.048 bar FMEP · 32 W.
Build → Ports, intake card with Port type set to Rotary disk

You didn't type those disc values. They come from the 125 road race template that tutorial 3's engine is built from, which has a rotary disc, and the project keeps them when the intake is a piston port. So “one change” here means the template's disc, timing included. If you want a different disc timing, that's a second run.

The timing ring shows the disc as IO 195° IC 85° and intake 250°. The ring counts the opening in degrees after top dead centre, so 195° on the ring is the card's 165° before it (360 − 165). It's the same angle, written two ways.

The Port timing ring with the rotary disc: TDC at the top, the exhaust arc from EO 95° to EC 265°, the transfers from TO 120° to TC 240°, and the intake arc from IO 195° to IC 85°. In the middle: intake 250°. Below the ring: ign 15° BTDC, Ex 170° · Tr 120° and blowdown 25°, then the durations and the chips for the exhaust port and the combined transfer ports.
Build → Ports, timing ring with the rotary disc: IO 195°, IC 85°, intake 250°

Run it and name it rotary disc. Diff inputs with baseline as Before and rotary disc as After lists one change, Intake / Valve Type, pistonPort → rotary. The run's own description may say reed → rotary instead, if your version compares with the previous run rather than the restored one; Diff inputs is the one to check.

4. Read the rotary disc against the piston port

In Compare, show baseline and rotary disc, with the baseline on baseline. (To see a run on its own, click Clear baseline first; the baseline run can't be hidden while it's the baseline.)

rpmPiston port kWRotary disc kWchange
5,0002.752.26−0.48
5,2503.452.94−0.52
5,5003.863.25−0.61
5,7504.903.55−1.35
6,0006.045.05−0.99
6,2506.565.52−1.05
6,5005.085.47+0.39
6,7505.504.68−0.82
7,0006.375.26−1.11
7,2506.886.30−0.58
7,5003.897.06+3.17
7,7504.314.09−0.22
8,0004.564.63+0.07
8,2504.864.87+0.02
8,5004.984.98−0.00
8,7504.604.58−0.02
9,0004.504.33−0.17
9,2504.544.46−0.08
9,5004.154.08−0.07

All 19 rotary points converged.

  • Below the peak, the disc is well behind: −0.48 to −1.35 kW at the other nine points from 5,000 to 7,250 rpm, or −8.4 to −27.5 %. At 6,500, the piston port's dip, it's +0.39 kW (+7.7 %) ahead; that point is unresolved, so we leave it out.
  • At 7,500 it's still on the pipe, where the piston port has fallen off: 7.06 kW against 3.89.
  • At 7,750 it has come off the pipe too: 4.09 kW against 4.31.
  • From 8,000 up, both are off the pipe and within −0.17 to +0.07 kW of each other.

Where it comes off the pipe

A single point that jumps like 7,500 (+3.17 kW while 7,250 and 7,750 move −0.58 and −0.22) needs checking before you use it. So we ran a finer sweep of the same build: 7000 → 9250, step 125, named rotary disc fine. You don't need to repeat it. If you do, it's one more sweep (18.5 units estimated) on top of the two or three above, and it may not fit in the same day either. Before you run it, set Run → Setup to From 7000, To 9250, Step 125, Quality Standard, and nothing else; Diff inputs with rotary disc as Before and rotary disc fine as After then lists the three sweep fields only.

Power from 5,000 to 9,500 rpm: rotary disc as a blue line across the whole range and the finer sweep in orange with points from 7,000 to 9,250 rpm, output as solid lines and indicated as dashed lines. Where both have points the two lines lie on top of each other; the finer sweep climbs to about 7.4 kW at 7,625 rpm and drops to about 4.1 kW at 7,750, where the coarse sweep is also about 4.1 kW.
Dyno comparison: rotary disc (blue line) and the finer sweep (orange, with points), 7,000–9,250 rpm

All 19 points of the finer sweep converged.

  • The ten points both sweeps share agree within 0.07 kW (1.5 %), 7,500 included. So 7,500 is a result: the disc is still on the pipe there.
  • The finer sweep climbs to 7,625 rpm, 7.38 kW (9.9 hp), then falls 44.6 % to 4.08 kW at 7,750. From there to 9,250 it stays between 4.08 and 4.97 kW.

So on this model, the rotary disc comes off the pipe between 7,625 and 7,750 rpm, against 7,250–7,500 for the piston port. That's a small shift, at most 500 rpm, and the sweeps can't say exactly how much. Its best sampled point, 7.38 kW at 7,625 in the finer sweep, is 7.2 % above the piston port's 6.88 kW at 7,250.

A possible why: early, late, and the mixture that goes back out

The CSV's backflow column offers a possible explanation here too. The disc pushes mixture back out of the intake at every rpm: 20.7 mg per cycle at 5,000 rpm, 37.3 % of what came in, 9.9 to 18.9 % from 6,000 to 7,500, and still 7.1 % at 7,750. The piston port's 16.2 % at 5,000 fades to practically nothing by 7,500; the disc's doesn't.

Its timing gives it two places where that could happen. It closes 85° after top dead centre, about 12° later than the piston port, with the piston on its way down. And it opens 165° before top dead centre, just after bottom dead centre: on the ring that's 195°, while the transfers (open until 240°) still connect the crankcase to the cylinder. The CSV doesn't say which end the backflow comes from. As with the piston port, it broadly shrinks as the revs rise, down to 4.4 % at 8,500 rpm, which fits the momentum explanation. Above that it grows again, to 15.1 % at 9,500. What we observed is that the disc stayed on the pipe one sweep point longer at the top and lost power at every point below the peak except the unresolved 6,500. These runs don't show that the backflow or the template's long timing caused either: switching to the disc changed the effective inlet and the timing at once.

The disc also runs hotter in the header below the peak: 93 to 184 °C above the piston port from 5,000 to 7,250 rpm (leaving out 6,500), on the EGT chart. We didn't test why.

What to take from it

On this model, with this engine and the same pipe, changing only the intake type:

  • The ideal reed had no backflow out of the intake, which the piston port has at low rpm (16.2 % of the incoming mixture at 5,000 rpm). It added +3.6 to +6.5 % from 5,000 to 5,500 rpm, was within a few tenths of a kW either way through the middle (at most 2.2 % behind), stayed on the pipe one step longer than the piston port, and its best point was 5.6 % above the piston port's.
  • The rotary disc, with the template's 250° timing, lost 8.4 to 27.5 % from 5,000 to 7,250 rpm (6,500 left out, as in step 4), pushed back up to 37.3 % of its intake there, and came off the pipe a little later: between 7,625 and 7,750 rpm in the finer sweep, against 7,250–7,500, and at the same 250 rpm step as the reed. Its best point was 7.2 % above the piston port's.
  • The reed came off the pipe one step (250 rpm) after the piston port, and the disc at most 500 rpm after it, at the same step as the reed. That's what we observed. These runs don't say what sets it: each switch also changed the effective inlet and, for the disc, the timing.
  • The reed here is the app's ideal valve: instant, zero lag, one way, with its own effective opening. These runs don't say what a real reed block would do on this engine.

That's one engine and one set of intake values. To try yours:

  • Start from your own engine (the setup wizard, tutorial 1), sweep it, then change only Port type.
  • For a disc, try its timing too. Rotary opens and Rotary closes are on the same card. Change one at a time and compare at the same rpm (Compare two pipes).
  • Check the backflow column in the CSV before you explain a gain or a loss low down, and check any single point that jumps with a finer sweep before you use it.
  • For the pipe's part, How an expansion chamber works explains what the chamber does, and tutorial 3 step 7 compares a longer chamber and shows what changed in the curve.
  • For the intake duct's part, Intake manifold length on a two-stroke keeps a rotary disc and changes only the length of the duct in front of it, and shows what that does to power and to the mixture pushed back out.

These are simulated estimates from a 1D gas-dynamics model of a generic engine, not measurements, and not your engine. The model isn't calibrated against a dyno, and even the differences between the runs hold only for this model. The reed is the app's ideal valve, not a model of a real reed block. The model shows falling off the pipe as a sharp step, sharper than a real dyno would. Nothing here says how an engine will ride. Use WaveDyno to compare designs and to see what changes where, and confirm on a real dyno before building. See the Terms of Service, section 4.

© 2026 Havelaar US, LLC. All rights reserved. WaveDyno is a product of Havelaar US, LLC.

Open the app Docs Terms of Service Privacy Policy