These instructions apply to the DS 7 Crossback Mk1 (X74) 2017-Present.
For other models, please choose your vehicle here.
If the electric sunroof on your DS 7 Crossback (2017–present) has stopped working with one touch — usually after a battery disconnection or flat battery — it needs re-initialising so it relearns its end positions. It’s a normal owner job, not a fault, done from the sunroof switch in about a minute. Once the panel has been taught its limits again it will tilt, slide and close on a single press instead of only creeping while you keep the switch held.
When You Need This
The sunroof loses its calibration when the 12 V battery is disconnected or goes flat, leaving the panel working only while you hold the switch. Re-initialising restores normal one-touch operation. You will typically notice it right after fitting a new battery, jump-starting the car, or leaving it long enough that the battery drained: the roof no longer runs to the top on its own, one-touch tilt is gone, and the anti-pinch may feel over-sensitive. None of that means the motor has failed — the module has simply forgotten where the glass sits fully open and fully closed.
How the Relearn Works on This Car
An electric sunroof does not use fixed stops to know its position; the control module counts the motor’s movement and stores the fully-tilted, fully-open and fully-closed points as reference values. Those values are held in memory that depends on battery power, so cutting the supply erases them. For safety the system then falls back to a hold-to-move mode — the glass only travels while you press — so that a roof with unknown limits can never trap something on a single automatic sweep. The sequence below drives the panel to its physical end stops so the module can re-capture those points and re-enable one-touch running.
First, a Few Checks
- Park the car and set the ignition to on so the roof has power but the engine need not be running.
- Make sure the battery is properly charged — a weak supply can stall the glass part-way and the relearn will not take.
- Check the aperture is clear of hands, hair, fingers and loose items before running the full-travel steps.
- Wipe leaves and grit off the glass edge, seals and track so the panel can reach its true end stops without binding.
- Keep your finger on the switch throughout each hold — releasing early stops the learn before it finishes.
Re-initialising the Sunroof
- Switch the ignition on.
- Press and hold the sunroof CLOSE switch until the roof is fully closed — it will tilt and move slightly. Keep holding for 1 second, then release.
- Wait 2 seconds.
- Press and hold the CLOSE switch again — the roof completes a full open/close cycle. Hold for about 2 seconds, then release.
- The sunroof is initialised.
If It Won’t Initialise
- Hold the switch for the full times stated — the roof must reach and hold its end stops for the module to log them.
- Clear debris from the seals and track so the glass can run its complete travel without stopping short.
- Confirm the ignition stayed on for the whole sequence; if it timed out, switch it back on and start again.
- Recharge a low battery and repeat — a voltage drop during the cycle will abort the learn.
- Let the motor rest a minute if it feels warm after several attempts, then run the sequence once more from the start.
- Still faulty? A sunroof-module issue can store a code — look it up on autodtcs.com.
What to Expect Afterwards
Once the routine finishes, a single press should tilt and slide the roof, and a single press in the opposite direction should close it fully on its own. Test both directions a couple of times and gently check that the anti-pinch reverses the glass if it meets resistance. If the first pass feels hesitant, run the sequence one more time — it usually settles after the panel has confirmed both end points.
Frequently Asked Questions
Why did my DS 7 Crossback sunroof stop working with one touch?
Its calibration is lost when the battery is disconnected or goes flat — the re-initialisation restores it. The module keeps the roof’s open and closed reference points in power-dependent memory, so any interruption to the 12 V supply wipes them and drops the roof into hold-to-move mode until you relearn.
Do I need tools?
No — it’s done from the sunroof switch with the ignition on. There is no need for a diagnostic scanner or a workshop visit; the whole procedure is a short hold-and-release sequence on the roof control, followed by a quick test of one-touch operation.
What if it doesn’t complete the cycle?
Repeat the sequence, making sure you hold the switch until the roof reaches each end stop and that you keep it held for the full one-second and two-second stages. Check the battery is charged and the track is clear, since a stall part-way through prevents the module from logging the limits.
Does this apply to the panoramic roof?
Yes — the same re-initialisation applies to the DS 7’s electric sunroof. The larger glass panel is driven and referenced the same way, so if it loses one-touch operation after a battery event you use the identical hold-and-release procedure to teach it its end positions again.
Do I have to keep the switch pressed the whole time?
Yes. Each hold must last for the time stated and the glass has to reach and briefly sit against its end stop. Letting go early stops the learn before the module has captured a valid reference, so the roof stays in hold-to-move mode and you simply repeat the steps.
Will I need to do this again after the next battery change?
Possibly. Any interruption to the 12 V supply can clear the stored positions, so if one-touch operation disappears after a future battery disconnection or flat, just run the same quick sequence again to restore it. It is normal maintenance rather than a recurring fault.
Re-initialising as part of a battery job? See our DS 7 Crossback battery disconnect/reconnect guide, and if a warning light stays on afterwards you can decode the stored code on autodtcs.com.
Independent guide — not affiliated with DS. Always follow your official service manual and safety precautions. Read our full disclaimer.