Direct-from-AliExpress Carbon Road Bike

This post was originally published in October 2023 and revisited in July 2026.

Introduction

I am not a serious cyclist; my interest in bikes comes mostly from appreciating them as machines and working on them. My first adult bike was a second-hand, late-80s Georgena Terry steel road bike that I bought in 2012. It was built with Tange double-butted chromoly tubing, Shimano 105 8-speed downtube shifters, and Shimano wheels. A few weeks after buying it, I rode my first metric century. It was an uncomfortable, gruelling, and prolonged experience.

I am fairly mechanically competent and enjoy taking things apart, so before long I had the Terry stripped down to the bare frame. Around the same time, I was spending a lot of time on Sheldon Brown’s website, trying to figure out what all the different parts were called, what would fit, how they worked, and what to service. That reading introduced me to cycling history, and Campagnolo kept turning up. I liked its ties to cycling history and the fact that it was a bit weird.

What started as a basic service turned into a full drivetrain overhaul. I found an early-2000s Chorus groupset on eBay, but the shifters were in rough shape. When I looked into rebuilding them, I realized the small internal parts were either unavailable or too expensive to make sense, which is very on-brand for Campagnolo. I ended up returning the Chorus components and bought a 2012 Veloce groupset along with Campagnolo Scirocco aluminum wheels.

2003 Campagnolo catalog

Road bikes have changed a lot since then. Electronic shifting, hydraulic disc brakes, power meters, wide tires, and carbon frames are now the norm. Alongside these technical shifts, Chinese manufacturing has also evolved. Chinese manufacturers have become much more visible to Western buyers. Some sell directly through AliExpress or similar marketplaces, and some seem to sit somewhere between factory, house brand, and conventional bike company.

When I first started paying attention to Chinese carbon frames, I was cautious. The reputation was uneven, good information was harder to find, and buying one still felt like a bit of an experiment. That has changed considerably. Today, many Chinese manufacturers offer solid engineering and proprietary designs, while established Western brands like BMC, Cervélo, and Canyon have dealt with their own high-profile design and quality-control issues.

Incolor SSR frameset

The same shift is happening with drivetrains and components. Shimano, SRAM, and Campagnolo remain the dominant names, but brands like Sensah, L-TWOO, Wheeltop, and Magene are now part of the conversation. They aren’t appearing out of nowhere; many of these companies have deep roots in the same manufacturing ecosystems that have supported the major brands for decades.

I am more willing than most to buy parts that require research and mechanical sympathy. Moving from a late-80s steel road bike retrofitted with modern components to a build made up mostly of Chinese parts is a reasonable progression for me. There are some obvious drawbacks: limited support, unproven long-term reliability, and paying to beta-test a product. But China operates on a massive scale. Both the absolute best and the absolute worst manufacturing happen there. Within that massive ecosystem, my belief is that there is a genuine chance of finding incredible value. Navigating that variance is part of the process.

I like tinkering, and I wanted to see what these components are actually like to live with. This post documents my experience building and maintaining a bike with affordable Chinese components sourced mainly through AliExpress. It also became a loose survey of the broader market, and whatever else accumulated along the way.

Part overview

I have included background information, reasons for each selection, and more in-depth notes where relevant.

Part list

All prices are in CAD and represent the final all-in cost, including tax and shipping.

Part Price
SP-053D frameset $743.63
Frameset refund -$78.96
L-TWOO RX groupset $374.83
ThinkRider PP5 and crank arms $252.09
ZRACE Unchained 50/34T chainrings $67.30
ZRACE XG4 brake calipers, pair $83.64
ZRACE 160mm centerlock disc rotors $10.02
ZRACE 12-speed 11-34T cassette $35.96
Elitewheels ENT gravel wheels $562.02
Total $2,050.53

The total weight (with pedals and bottle cage) is just under 7.25 kg, which respectable falls into weight weenie territory. At nearly 1.7 kg, the wheels offer the most obvious opportunity for further weight savings.

Frameset

Brands like Incolor, Yoeleo, Winspace, Tavelo, and Serk have built genuine reputations, and they are now discussed less as “cheap Chinese frames” and more as established bike brands in their own right. There are also long-running OEM manufacturers, such as Fibertech Composite in Xiamen, that have produced carbon frames for major international brands for years and are now becoming more visible under their own names.

Spcycle sits in a different part of the market: affordable carbon frames, mixed reputation, and none of the credibility of the brands above. I bought the SP-053D, which is heavily inspired by the Cipollini Dolomia.

2025 refresh of the Spcycle SP-053D with T47 threaded bottom bracket

The 2023 version is listed with the following specifications:

The frameset included the fork, seatpost, headset, handlebar, and thru axles. I later received a partial refund, for reasons I will get into below.

Drivetrain

L-TWOO RX 12-speed mechanical groupset

The RX series is L-TWOO’s flagship 12-speed road groupset. It uses mechanical cable-actuated shifting with hydraulic disc brakes.

I purchased the original RX release, which included shifters, brake calipers, and front/rear derailleurs. Its shift logic follows Campagnolo, with a separate thumb lever. Since then, L-TWOO has released newer versions of the shifters, rear derailleur, and brake calipers. The shifters are now available in both the original Campagnolo-style layout and a Shimano-style option.

One thing to note: the cable pull ratio is compatible with Shimano 12-speed road derailleurs and cassettes, so it can be mixed with Shimano-compatible parts. It is also compatible with L-TWOO’s GRT rear derailleur, which opens up wider cassette options. Although the RX rear derailleur officially supports up to a 32T cassette, I am able to run a 34T cassette due to frame geometry.

Crankset

The crank assembly consists of a ThinkRider PP5 spider-based power meter, carbon crank arms, and ZRACE Unchained 50/34T chainrings. The PP5 uses an Easton-style four-bolt 110 BCD interface to mount the chainrings, and the entire crankset spins on a Shimano-standard 24mm titanium spindle.

Shane Miller (GPLama) reviewed the PP5 power meter and found accuracy problems, especially after hard efforts where the zero offset can drift and make the unit read high for the rest of the ride. I am not in the demographic where that matters. For me, having a rough power reference beats vibes. Plus, the PP5 power meter spider was close enough to the cost of a non-power-meter spider that it seemed worth trying.

The ZRACE chainrings are machined out of 7075 aluminium and are heavily profiled for weight reduction.

Brakes

In the original 2023 build, I used L-TWOO RX hydraulic calipers. They worked well, but I didn’t like how they looked, so I replaced them with ZRACE XG4 four-piston hydraulic calipers. Some L-TWOO RX groupsets are now sold with these calipers, but that option was not available when I bought mine.

The calipers are machined from a single piece of aluminum and feel surprisingly high quality in hand. ZRACE sells them in several colors, and the same calipers also show up under brands like IIIPro and ONIRII with even more finish options. The design is heavily inspired by the Hope RX4, and the XG4 uses the same brake pads.

Cassette

I am using a ZRACE 12-speed 11-34T cassette. It is a very utilitarian cassette: the steel cogs are riveted together around an aluminium support structure.

Wheels

Elitewheels has broken out of the “cheap AliExpress wheels” category. Their better wheelsets are considered serious wheels now. But I did not buy one of those. Instead, I bought their entry-level, AliExpress-special ENT gravel wheels. They are basic 45mm carbon wheels with centerlock disc mounts, basic aluminum hubs, and generic bearings.

Assembly notes

Assembly required a few new specialized tools: bottom bracket and lockring tools, a bleed kit, a hydraulic hose cutter and barb/olive insert tool, an internal routing kit, and a bottom bracket press.

Bottom bracket

Originally I installed a thread-together press-fit bottom bracket, but the non-drive side bearing bound up immediately after installation despite feeling perfectly smooth prior. Because the roughness showed up with only that single side pressed in, it points to local bore distortion. The frame shell is likely slightly undersized or out-of-round, squeezing the cup enough to pinch the bearing race.

Removal of the ZTTO thread-together bottom bracket. Due to the shallow splines, I am using a bearing press tool to apply pressure to the bottom bracket tool to ensure engagement.

I checked the shell with digital calipers, and the measurements corroborate the physical symptoms. A BB86 shell is nominally 41.00 mm, with standard press-fit tolerances calling for a 40.95 mm to 41.00 mm bore. Several spots on this frame measured below 40.95 mm, particularly on the drive side.

At that point I had a few options:

Correcting the frame shell is the most direct fix, but it is also permanent and easy to get wrong. A hand hone can remove material, but it will not reliably correct coaxial alignment, roundness, or parallelism.

Modifying the bottom bracket cup is less risky because the cup is sacrificial and replaceable. It may reduce the interference fit enough to stop the bearing from being squeezed.

The main risks of not doing anything are premature bottom bracket wear, a small power loss, and possible future creaking. In itself, that is not catastrophic; press-fit bottom brackets and bearings are replaceable wear parts. But it is still a useful quality signal for the frame overall.

Spcycle AliExpress merchant page.

I pursued an unsuccessful claim with AliExpress. The seller offered a refund on the frame if I covered return shipping, but shipping would have cost more than the frame.

Deep dive

The bottom bracket is the bearing assembly that lets the crankset rotate inside the bicycle frame. It supports the crank spindle, carries pedaling loads from both legs, and transfers those loads into the frame while keeping the crank aligned and spinning smoothly. In practice, a bottom bracket is also an interface between the crank, the frame shell, and the manufacturing tolerances of both. Most bottom bracket problems come from that interface: how accurately the bearings are positioned, how securely the cups are held, and whether the frame shell distorts or misaligns the bearing seats.

The mechanical problem the bottom bracket is trying to solve is a mix of bearing alignment, shell tolerance, serviceability, and frame manufacturing tolerance. Different bottom bracket systems have different opinions about where alignment comes from.

Design Main alignment datum
Separate left/right cups The frame shell
Thread-together cups Frame shell plus the threaded BB body
One-piece / cartridge-style BB The machined BB unit itself

In a standard BB86 setup, each cup is independently pressed into the frame. The frame shell determines where each bearing sits. This is attractive for carbon frame design because it avoids a threaded bottom bracket shell, allows a wide shell area, and can simplify the frame structure. The tradeoff is that the bottom bracket becomes highly dependent on the accuracy of the frame shell.

Separate press-fit cup systems assume the frame shell is:

Manufacturing press-fit apertures to tight tolerances is notoriously difficult, which is exactly why press-fit bottom brackets have earned such a negative reputation. As Hambini Engineering argues, the standard itself isn’t inherently flawed; the real issue is that it demands a level of manufacturing precision that many bicycle brands simply fail to hit.

Example of angular misalignment

One strategy is to link the two sides together. In a thread-together press-fit bottom bracket, the cups still sit inside a press-fit shell, but the two sides thread into each other through the center. That turns two independent cups into a semi-joined assembly. This helps mitigate cups walking or moving independently, poor retention or creaking at the cup-frame interface and some alignment issues.

This doesn’t fix a misshapen frame shell. If the bore is undersized or oval, the cups still get squeezed and the bearings still distort. That is exactly why the thread-together bottom bracket failed here. Going back to separate press-fit cups is a compromise: the cups have less structure tying them together, so they may be more prone to wear or creaking over time, but they also have a little more independence, and they are cheap, replaceable parts.

Headset

The expander plug in a carbon steerer acts as both the headset preload anchor and internal support for the stem clamp. The plug should extend through the full clamping zone so the stem compresses the steerer against a supported internal surface. Too short, positioned too high, or not overlapping the stem clamp allows the stem to squeeze an unsupported section of carbon steerer. This can ovalize or crush the tube. Under braking, steering, sprinting, or impact loads, that damaged area can crack and fail. Major brands have issued recalls or service fixes around this type of failure mode, including Specialized’s Tarmac SL7 extended-expander recall and Canyon’s Speedmax CF V21 Aerostem steerer reinforcement recall.

I replaced the original expander plug with a longer 55mm unit. The new plug extends past the full stem clamp zone and into the spacer stack.

55 mm expander plug that extends past the stem clamping zone for the top and bottom pinch bolts.

The area near the upper headset bearing is also highly loaded, but for a different reason. That area sees bending and bearing reaction loads as the fork transmits braking and road impacts into the head tube. Guidance suggests that the expander plug does not usually need to extend into the head tube itself.

I cut the steerer tube approximately 1 to 2mm longer than ideal, so I added a 2mm spacer above the stem to allow proper headset compression.

L-TWOO RX groupset

Overall, I am very happy with the L-TWOO RX groupset. Long-term reliability is still unknown, but so far the shifting has been as good as anything else I have used. The shifters are probably the best part of the groupset. The rubber hoods feel high quality, and I like the Campagnolo-style thumb lever. The levers also have pre-travel adjustment, which lets you fine-tune braking engagement.

The main place the levers feel less refined is the shift action. There is some free play before the shifting mechanism engages. Not mushy, but there is some slop, and it is noticeable compared with higher-end groupsets. The thumb lever and shift paddle could also be improved. The thumb lever is nylon, and the shift paddle is some sort of plastic. None of this has affected function, but it is where the shifters could be improved. On my version, the brake lever is forged carbon fiber. The standard version has aluminium levers.

The derailleurs are boring and pedestrian, but functional. I replaced the high/low limit, adjustment, and pinch bolt with titanium because the original fasteners felt soft.

Updated L-TWOO RX rear derailleur.

Mechanically, installation was straightforward, with a few caveats.

Routing fully internal cables

With routing tools, magnets, and gravity, running the cable housing and hydraulic hoses was easy. The result is very clean, but it comes with a real serviceability penalty. Because the lines run through the handlebar and stem, then through the headset and into the frame, even routine front-end work can turn into a full hose-and-housing reroute. Changing the spacer stack, replacing headset bearings, removing the fork, or swapping the bar or stem all become much bigger jobs requiring full disassembly of the cockpit.

Installing hydraulic brakes

Installing hydraulic brakes was a bit more work. For future reference, here is the manual.

One detail worth emphasizing: the pre-travel screw on the shift lever needs to be backed out before bleeding. It does not need to be backed out completely, but it does need to be open enough for the bleed procedure to work properly.

Bleeding the brakes means pushing mineral oil through the system while giving trapped air a way out. I used a syringe at the caliper to push oil upward, with a reservoir cup installed at the shifter bleed port. Before bleeding, I removed the wheels and brake pads to avoid contaminating the braking surfaces, and installed a bleed block in the caliper. The bleed block keeps the pistons from moving too far out and sets the correct pad spacing while the system is open. Once oil was pushed through the line and into the reservoir cup, I closed the caliper bleed port. Then I cycled the brake lever and rotated the shifter through a few angles to help trapped bubbles move up into the cup. The goal is to remove air from the system, since air compresses and mineral oil effectively does not.

Crankset

The crank arms are torqued to the titanium spindle and held in place by a larger reverse-thread bolt and lockring. Preload is set using a threaded collar on the non-drive side. Here’s what that all looks like:

With the bottom bracket installed, the frame measured 91.5mm from cup to cup. Since the spindle is 95mm, that leaves 3.5mm of total spacing to account for. I used 1.7mm of spacers on the drive side and 1.5mm on the non-drive side, then used the preload adjuster to take up the remaining difference. I applied Park Tool ASC-1 anti-seize compound to the spline and threaded interfaces during assembly (titanium to aluminium joint).

The chainrings are affixed to the spider with titanium chainring bolts. Titanium-on-titanium galling is a concern, but mostly during installation or removal rather than normal riding. Here, retention matters more than easy future disassembly, so I used retaining compound. Stainless steel bolts would have been the better choice here.

For future reference, here is the manual for the ThinkRider PP5 power meter.

A compact 50/34T crankset paired with an 11-34T cassette gives a wide gearing range: a 4.55:1 top gear and a 1:1 lowest gear for climbing.

Combination Gear ratio km/h at 100 RPM
34 x 11 3.09 39.6
34 x 13 2.62 33.5
34 x 15 2.27 29.0
34 x 17 2.00 25.6
34 x 19 1.79 23.0
34 x 21 1.62 20.7
34 x 23 1.48 18.9
34 x 25 1.36 17.4
34 x 27 1.26 16.1
34 x 30 1.13 14.5
34 x 34 1.00 12.8
50 x 11 4.55 58.3
50 x 13 3.85 49.3
50 x 15 3.33 42.7
50 x 17 2.94 37.7
50 x 19 2.63 33.7
50 x 21 2.38 30.5
50 x 23 2.17 27.9
50 x 25 2.00 25.6
50 x 27 1.85 23.7
50 x 30 1.67 21.4
50 x 34 1.47 18.8

Dialing in the shifting

I had more trouble dialing in this drivetrain than I expected. A 12-speed setup gives you less room to be sloppy: the chain is narrower, the cassette spacing is tighter, and adjustments that would have been close enough on a 10-speed setup were not close enough here.

I found it useful to think about derailleur adjustment in terms of the control variables that govern shifting.

Front derailleur:

Rear derailleur:

Front derailleur mounting

The front derailleur height and rotation are the easy variables. The outer cage plate needs to sit close to the big ring so it can start controlling the chain almost immediately as the shift begins, but not so close that the teeth can hit the cage under frame flex or vibration. In practice, that usually means about 1–2 mm above the tallest teeth on the big ring. If the derailleur is mounted too high, the cage has to push the chain farther before the chain can engage the shift ramps and pickup pins on the large ring, which makes upshifts slower and less decisive.

The cage also needs to be parallel to the chainrings so it guides the chain sideways with a nearly uniform gap along the length of the cage. If the derailleur is rotated inward or outward, one end of the cage reaches the chain before the other. That can cause rubbing, hesitation, or a messy shift where the chain is pushed sideways without climbing cleanly onto the big ring.

Rear derailleur B-screw

The L-TWOO RX rear derailleur has a B-screw that sets the derailleur body’s starting angle relative to the cassette. More B-tension rotates the derailleur backward and increases the gap between the upper jockey wheel and the cassette; less B-tension lets it sit closer. The upper jockey wheel is what tracks the cassette and presents the chain to each cog during a shift. If it is too far away, the chain has more room to wander before engaging the next sprocket, so shifts become slower and less precise. If it is too close, the jockey wheel can crowd the larger cogs, causing noise, drag, or outright interference. The objective is to find the smallest gap that still gives safe clearance in the largest cassette cog.

Limit screws and cable tension

One thing I had not really thought about before was the derailleur’s default position and what the cable is actually doing. Both derailleurs are spring-loaded, and the shift cable pulls against that spring.

At that spring-loaded default position, the cable should be just taut enough to move the derailleur immediately, but not tight enough to pull it off its stop.

The opposite limit screw is just a mechanical safety stop. It should be set far enough to let the derailleur reach the end gear, but no farther.

Chainline

I had originally centered the crank spindle left to right, but that turned out to leave the chainline slightly too far inboard. In the small chainring and smaller rear cogs, the chain would brush the big ring, usually on the shift pins. At low speed, it was occasional; at higher speed, vibration turned it into a constant pinging noise.

That gear range should be usable, so the amount of rubbing suggested the chainline was off. The fix was to move the crankset about 0.5 mm toward the drive side using spacers.

Fasteners and torque

Bikes are exposed to water, sweat, road salt, grit, and repeated washing. Internal parts usually have some protection from seals, grease, or assembly compounds, but external fastener heads are much more exposed. Rusty fasteners bother me a lot; they make an otherwise well-maintained bike look neglected. My original plan was to replace all the screws with 316 stainless steel, but sourcing them in sensible quantities was a problem. I needed several sizes, lengths, and head types, which would have meant packs of 50 to 100 of each. So I ended up buying specialty titanium fasteners from AliExpress. Weight savings weren’t a factor; I just did not want hundreds of spare screws sitting around. I also like titanium and have a strong preference for Torx heads.

This bike has a mix of titanium, aluminium, steel, and metal inserts bonded into carbon parts. Mixed-metal joints bring two main risks: galling and corrosion.

This simple reference for static threaded joints on the bike compares common metal pairings and the relative risks of galling and corrosion with anti-seize, threadlocker, or dry assembly. Further reference from Park Tools.

Al (aluminium), Ti (titanium), St (steel), AS (anti-seize/grease), TL (threadlocker).

Metal pair AS TL Dry
Al, Al galling
corrosion
galling
corrosion
galling
corrosion
Al, Ti galling
corrosion
galling
corrosion
galling
corrosion
Al, St galling
corrosion
galling
corrosion
galling
corrosion
Ti, Ti galling
corrosion
galling
corrosion
galling
corrosion
Ti, St galling
corrosion
galling
corrosion
galling
corrosion
St, St galling
corrosion
galling
corrosion
galling
corrosion

Fastener list

These are the fasteners, tools, torque targets, and compounds I used during assembly.

AS (anti-seize), TL (threadlocker), FM (flat mount), FD (front derailleur), RD (rear derailleur)

Location Fastener Tool Specs
Lever clamp Band clamp 5mm hex 6-8 Nm
No grip paste
Fork steerer Expander plug 5mm hex 5-6 Nm
No grip paste
Top cap M6x30 Ti T30 Preload
AS
Stem clamp Ti pinch bolts 4mm hex 4-5 Nm
AS
Caliper-FM M5x12 304 SS 4mm hex 5-8 Nm
TL threads
AS head
Rear FM-frame M5x35 Ti + washer T25 5-6 Nm
TL threads
AS head
Fork FM-frame M5x12 Ti + washer T25 5-6 Nm
TL threads
AS head
Saddle-seatpost M6x30 Ti T30 5 Nm
AS
Seatpost clamp   T30 5-6 Nm
AS
Chainring Chainring bolts 5mm hex 10 Nm
AS
FD adjustment M4x15 Ti 3mm hex TL minimal
FD cable pinch M5x12 Ti + washer T25 6-7 Nm
AS
FD mount M5x10 Ti T25 6-7 Nm
AS
RD adjustment M4x15 Ti 3mm hex TL minimal
RD cable pinch M5x12 Ti + washer T25 6-7 Nm
AS
RD mount Mount bolt 5mm hex 6-7 Nm
AS
Bottle mount M5x15 Ti T25 AS
Rear thru-axle M12x168 (P1.5, 16L)
7075 Al
6mm hex 9-13 Nm
AS
Front thru-axle M12x121 (P1.5, 17L)
7075 Al
6mm hex 9-13 Nm
AS
Cassette Lockring Cassette tool 40 Nm
AS
Brake rotor Lockring 16-notch BB 40 Nm
AS
Crank bolt Retention bolt Cassette tool
20-tooth BB
Varies
AS
Brake hose Hose fitting 5mm spanner
8mm spanner
8-9 Nm
AS
Pedal Spindle 8mm hex 35-40 Nm
AS

Tubes and tubeless

I initially set the bike up tubeless. Setup went smoother than expected. Coming from 23c tires at 105 PSI, running 32c gravel tires at 40 PSI felt incredible.

The downside was additional maintenance. When the sealant is left sitting, it pools, clumps, and dries out at the bottom of the tire. This throws off the wheel balance. Cleaning it out before storage fixes the issue, but that’s way more hassle than I want.

I’ve since switched to RideNow TPU tubes.

Chain wax

Chain waxing promises a clean, grime-free drivetrain. Since I was starting with a drivetrain that already had a few hundred kilometers on it, it was necessary to strip out old oil and contamination before waxing. The chain and cassette both fit in my 2L ultrasonic cleaner. The jockey wheels on the rear derailleur use press-fit bearings, and I wasn’t prepared to replace them, so I cleaned those by hand instead of putting them in the ultrasonic cleaner.

Slightly chewed up derailleur cage due to circumstances unrelated to this adventure.

I ran the cassette and chain for an hour at 50 degrees Celsius in a 50% dilution of Simple Green Aircraft. To keep the ultrasonic cleaner clean, I put the parts and degreaser in a Ziploc bag, then placed the bag in the cleaner with water.

For the chain, I followed with an overnight acetone soak in a glass jar. I then wiped it down and put it in the ultrasonic cleaner in a sealed glass jar.

For wax, I used Silca Secret Chain Blend (SDS), which is paraffin wax with tungsten disulfide (SDS) and other additives. It comes in a sous-vide bag, so I heated the bag directly in the ultrasonic cleaner. I set the cleaner to 75 degrees Celsius, but even after 1.5 hours, the ultrasonic was only able to hit 67 degrees Celsius. That’s probably due to not being able to close the lid and the heating element being optimistically rated.

Melting the wax in the ultrasonic cleaner

According to IR thermometer readings, the wax appeared to melt around 63 degrees Celsius. There was still a large unmelted clump in the middle of the bag, but enough wax had liquefied to use.

Unmelted wax in the center, with liquid wax agitated by the ultrasonic cleaner

I warmed the chain with a heat gun before dipping it. The wax was already close to its solidifying point, and I did not want a cold chain to make the wax skin over before it reached the rollers. Once the chain was in the wax, I agitated it by hand and ran the ultrasonic cleaner.

After that, I turned the heat off and let the wax cool toward 60 degrees Celsius. As the surface started to skin over, I pushed the film aside and lifted the chain out. I hung it above the bag to drip, then broke the links free once it had cooled.

Other notes

Conclusion

The build was successful overall, with the exception of the frame.

Groupset, drivetrain and brakes

The L-TWOO RX groupset is the biggest win. I would put it roughly at or just below Shimano 105, although it lacks some refinement. There is more play in the shift action, some of the smaller parts feel cheaper, and Shimano’s decades-long head start surely counts for something. Still, even if 105 were sold at L-TWOO RX prices, I would probably still choose the RX simply because it is something different.

I did not consider electronic shifting at all until writing this section. I accept that it shifts better, but batteries, firmware, electronics, and the likelihood that the whole thing eventually becomes e-waste are unappealing to me. Of course, mechanical shifters are not necessarily repairable either, but I think the point still stands.

Hydraulic disc brakes are another interesting change. Objectively, they are more powerful and consistent than rim brakes, but I am not heavy enough, fast enough, or regularly riding in conditions where caliper brakes would be inadequate. Hydraulic braking comes with the territory with a modern groupset, 12x100mm and 12x142mm thru-axle spacing, and carbon wheels. I still prefer the appearance and simplicity of caliper brakes.

I also remain unconvinced by 12-speed. I do not think the extra cogs meaningfully improves my experience. The continued addition of gears feels more like a product-cycle requirement than a response to a real problem.

The inexpensive ZRACE cassette has been great. It is heavier than higher-end AliExpress options, but it shifts reliably, has steel cogs, and was super affordable.

I am happy with the YBN chain. YBN is the OEM chain manufacturer for Campagnolo. Waxing was worthwhile (to me) mainly because the drivetrain stays clean; any reduction in maintenance or friction is secondary.

Wheels

Admittedly, I chose carbon wheels purely for the aesthetics and curiosity. Coming from aluminium wheels on a steel frame, it is not a direct comparison, but they are nice. They are basic by current standards, and there are much better direct-from-China wheelsets available now, but I am happy with them. They have done exactly what I wanted.

Saddle

The Ryet saddle may be the most surprising individual component. Its construction is genuinely impressive, and it feels like a real step forward from my previous Fizik saddle.

Frame

The frame is where the value proposition falls apart. The undersized and out-of-round bottom bracket shell, rough flat-mount interfaces, and generally inconsistent finishing are disappointing. None of these problems alone suggest that the frame will fail. I expect it will probably be fine in normal use. Collectively, however, they are a strong indication of the level of care that went into its construction.

I still expect the frame to be fine on the merits of the material and basic manufacturing process, despite the poor workmanship in these areas. That is not the same as having confidence in it. There are better-established Chinese carbon frames available for not much more money, which makes this kind of workmanship difficult to justify.

The case for carbon is straightforward: it is lighter than steel and can be formed into complex shapes that are not possible with conventional steel tubes. That gives designers more freedom to reduce weight, tune compliance, and improve aerodynamics. I just do not make much use of those advantages. A good modern steel frame might add a kilogram, but so what? The aerodynamic shaping probably matters even less to me, although I admit that it looks cool.

The bike feels good, but attributing that entirely to carbon would be difficult. The geometry, dropped seatstays, seatpost design, wheels, and 32mm tires all contribute to how it rides. Those design choices matter at least as much as the frame material itself. I am therefore underusing most of carbon’s advantages while still dealing with its main disadvantage for me: feeling like I have to baby it.

Laget Aero One single-piece 3D printed titanium frame.

That is what makes emerging 3D-printed titanium frames exciting. Bikes like the No. 22 Reactor Aero and the monocoque Laget Aero One, shown at the 2026 Shanghai Bike Show, combine the durability of a metal frame with some of the complex shaping and structural optimization carbon monopolizes. They begin to blur the choice between low weight and freedom of form on one side, and durability on the other. It feels like genuine “we are living in the future” technology.

Other details

A few other choices also worked out well.

Final thoughts

The groupset, cassette, wheels, saddle, and many of the smaller components range from good value to genuinely impressive. The frame demonstrates the other side of the marketplace: the low price can come with poor execution, and no practical recourse.

Gallery

AI disclaimer: No AI or generative imaging tools were used to create or enhance these photos. This is an intentional exercise in conventional photo editing, controlled lighting, and camera work.

The fully integrated cockpit.
Profile view of the cockpit.
Ryet 3D-printed carbon fiber saddle.
L-TWOO RX front derailleur over the ZRACE chainrings and ThinkRider PP5 power meter
L-TWOO RX rear derailleur with the 12-speed ZRACE cassette.
ThinkRider PP5 power meter with ZRACE Unchained chainrings.
ZRACE XG4 four-piston rear caliper.
A closer look at the open lattice on the Ryet 3D-printed saddle.
L-TWOO RX carbon fiber brake lever with Campagnolo-style thumb shifter.

Archives

The original 2023 build with a Senicx PR3 50/34T crankset, tubeless tires, and L-TWOO RX hydraulic calipers.