Import format: open a design from a link
Any suspension design can be opened in opensus from a link. https://opensus.app/app/?example=fsae opens a built-in example; https://opensus.app/app/?design= followed by URL-encoded JSON opens your own hardpoints. This lets a forum post, a spreadsheet or an AI assistant hand someone a working geometry.
Opening a link never loses work: whatever design was already open is kept under Project → Saved first.
Examples
| Link | Opens |
|---|---|
/app/?example=fsae |
Formula SAE car: pushrod double wishbones front and rear |
/app/?example=sedan |
E30-style sedan: MacPherson front, semi-trailing arm rear |
Design JSON
{
"name": "My car",
"example": "fsae",
"front": {
"type": "doubleWishbone",
"camber": -1.5,
"toe": 0.1,
"points": {
"ucaOuter": [-8, 550, 330],
"lcaOuter": [3, 570, 125]
}
},
"rear": {
"type": "fiveLink",
"points": { "tieInner": [-130, 215, 185] }
}
}
Every field is optional:
| Field | Meaning |
|---|---|
name |
Name shown in the header |
example |
Start from an example (fsae or sedan) instead of the default car |
front, rear |
One axle, given as its left corner and mirrored to the right |
type |
doubleWishbone, macpherson, fiveLink or semiTrailing. Points not listed keep that type's defaults |
camber, toe |
Static camber and toe-in in degrees at the loaded position |
points |
Point name → [X, Y, Z] in mm, in opensus coordinates: ISO 8855, measured from the axle line, centreline and ground |
Put the JSON in the design parameter, URL-encoded. In JavaScript: "https://opensus.app/app/?design=" + encodeURIComponent(JSON.stringify(design)). In Python: "https://opensus.app/app/?design=" + urllib.parse.quote(json.dumps(design)).
If part of a link can't be used, such as an unknown point name or a coordinate that isn't a number, opensus opens the rest and lists what it skipped.
Point names
These are the names to use in points, with each type's default front-corner position.
Double A-arm (doubleWishbone)
| Name | Point | Default front position, mm |
|---|---|---|
ucaFront |
Upper arm, front inner | 110, 280, 292 |
ucaRear |
Upper arm, rear inner | -110, 280, 288 |
ucaOuter |
Upper ball joint | -8, 550, 330 |
lcaFront |
Lower arm, front inner | 120, 200, 113 |
lcaRear |
Lower arm, rear inner | -120, 200, 117 |
lcaOuter |
Lower ball joint | 3, 570, 125 |
tieInner |
Tie rod inner | -68, 215, 148 |
tieOuter |
Tie rod outer | -70, 565, 165 |
wheelCentre |
Wheel centre | 0, 604, 222 |
rodOuter |
Pushrod at lower arm | 0, 530, 135 |
rodInner |
Pushrod at rocker | 0, 260, 420 |
rockerPivot |
Rocker pivot | 0, 220, 370 |
rockerAxis |
Rocker axis | 40, 220, 370 |
springRocker |
Coilover at rocker | 0, 170, 410 |
springChassis |
Coilover at chassis | 0, 60, 300 |
arbPivot |
Sway bar pivot | 70, 175, 300 |
arbAxis |
Sway bar axis | 70, 115, 300 |
arbTip |
Sway bar arm tip | -30, 175, 300 |
arbDrop |
Drop link at rocker | -30, 175, 395 |
MacPherson strut (macpherson)
| Name | Point | Default front position, mm |
|---|---|---|
lcaFront |
Lower arm, front inner | 130, 210, 118 |
lcaRear |
Lower arm, rear inner | -130, 210, 122 |
lcaOuter |
Lower ball joint | 5, 575, 120 |
strutTop |
Strut top mount | -25, 500, 620 |
strutBase |
Strut base on upright | -5, 545, 300 |
strutGuide |
Strut axis guide | -10, 534, 380 |
tieInner |
Tie rod inner | -110, 220, 190 |
tieOuter |
Tie rod outer | -110, 560, 195 |
wheelCentre |
Wheel centre | 0, 604, 222 |
5-link (fiveLink)
| Name | Point | Default front position, mm |
|---|---|---|
upperFrontIn |
Upper front link inner | 160, 260, 320 |
upperFrontOut |
Upper front link outer | 30, 540, 335 |
upperRearIn |
Upper rear link inner | -150, 270, 325 |
upperRearOut |
Upper rear link outer | -35, 540, 335 |
lowerFrontIn |
Lower front link inner | 170, 210, 125 |
lowerFrontOut |
Lower front link outer | 40, 565, 118 |
lowerRearIn |
Lower rear link inner | -170, 210, 125 |
lowerRearOut |
Lower rear link outer | -40, 565, 118 |
tieInner |
Tie rod inner | -130, 215, 180 |
tieOuter |
Tie rod outer | -130, 560, 190 |
wheelCentre |
Wheel centre | 0, 604, 222 |
springUpright |
Coilover at upright | 0, 500, 175 |
springChassis |
Coilover at chassis | 0, 400, 470 |
Semi-trailing arm (semiTrailing)
| Name | Point | Default front position, mm |
|---|---|---|
armInner |
Arm pivot, inboard | 200, 170, 250 |
armOuter |
Arm pivot, outboard | 295, 500, 250 |
wheelCentre |
Wheel centre | 0, 604, 222 |
springArm |
Spring at arm | 50, 400, 160 |
springChassis |
Spring at chassis | 50, 400, 330 |
damperArm |
Damper at arm | -50, 500, 190 |
damperChassis |
Damper at chassis | -20, 470, 480 |
Project files
For a complete design (every point, link, spring, damper, tire and setting), use a project file instead: Download → opensus project saves a .opensus.json file, and Project → Upload project opens one. Project files use the same ISO 8855 millimetre coordinates.