Magic roads

Can’t see why my magic roads emails are not able to create my road. This is the third one I have tried this morning (two different ones and only short TT routes) and this is what I get back.

“We tried our best but there was a problem and our trusted team could not build your road.
Road Wheelers_7_TT-1.gpx
Failed to process road data

1 Like

@ozmadman I’m no MagicRoads wizard, but are you using GPXmagic to clean up your GPX file first? I found it’s pretty much a necessity.

Some help here:

Yes, tried with and without smoothing

@ozmadman If you want to email me a GPX or two, I’ll try my hand at it. [EDIT - info removed]

1 Like

Thanks just sent them over to you

Hi thanks here we are just two short TT’s



(Attachment Wheelers_Essex_Roads_11_6_mile_TT.gpx is missing)

(Attachment Wheelers_7_TT-1.gpx is missing)

looks like the attachments are not allowed as they are in GPX format??


Yeah, email me directly. Was I too cryptic? I messaged you my address.

1 Like

I tried to upload a couple gpx files last night and I received the same errors.

Gotta love the generic error message.

I created my gpx in Strava. Haven’t had a problem with Strava gpx files before. But these aren’t working.

1 Like

Wonder if there were just issues last night. I was able to use @ozmadman’s GPX files today and made MagicRoads with minimal fuss.


That’s good. definitely could have been a temporary issue. I’ll have to try it again and see.



I just submitted the exact same gpx I submitted last night and this time it worked. Must’ve been a temporary glitch last night.


In addition to GPXMagic (which is excellent), there’s also processGPX, for command-line fans.

There’s an -auto option which does a decent job by itself. But there’s a lot more.

There’s a document processGPX.pdf .

1 Like

What’s the code or URL?

Okay – this is a good example.

  1. Look at the profile. The gradient is spiky, between 0 and 20%, for example. This indicates the altitude needs to be smoothed.
  2. there’s two sharp corner warnings. These are a big problem. Loop warnings can generally be ignored, but sharp corners are always a problem. If you look at the corners, they have relatively few points. They would be improved by having more points, and with the curve occurring smoother, in an arc.
  3. one of the corners is a turnaround. GPXMagic (or processGPX if you’re more of a command line person) can add a turnaround loop there. RGT cannot handle abrupt 180’s.

Fortunately, you can fix at least the first two of these by loading the GPX into GPXMagic (google for URL), load the GPX, click “one-click fix”, then save the new GPX. The loop can also be added (I’m not sure if one-click fix will do it but one of the tabs does this). With more experience you can learn how to refine it more. One thing I like to do is switch to satellite view and make sure the MR tracks the real road. If it doesn’t, you can use “nudge” with “smooth transition” (set transition length) to adjust groups of points. Then do “one click fix” after to make sure there’s no ugliness.


I updated processGPX to version 0.51.

processGPX requires Perl and three CPAN modules: Geo::Gpx, XML::Descent, and Date::Parse. I run it on a Mac and Linux. Others have run it on Windows but I don’t know how to do that.
In addition to the usual set of bug and documentation fixes, this version has two significant new options, in addition to (too) many other options from previous versions:

-circuitFromPosition : this goes to the specified position in meters from the route start, checks for the original route to loop around and return to that point, and if such a loop is found, it is repeated the specified number of times. So this is useful for routes which contain circuits, but are not pure circuits which can be handled with the RGT lap option. An optional, rarely used option allows for the circuit to return to the original point more than once before the end of the lap (for example, an out-and-back circuit would use “2” here).

-circuitToPosition <repeats.> : this is similar, but the circuit ends at the specified position, and the position is counted from the end rather than start of the route. This allows defining circuits at the end of the GPX track using -circuitToPosition 0 4, for example, which would have 4 finishing circuits.

Doing circuits this way is much better than doing circuits by repeating the circuits in Strava, for example, since it assures that the circuits perfectly align.

The magic road which motivated these changes was the 2024 Olympic course in Paris (preliminary: based on crude maps):

1 Like