The number that matters is the byte count on disk. A station file reporting 0 bytes has no ZIP header, no geometry stream, no station tree — RobotStudio has nothing to parse, so it refuses to open it. That is a file-write failure, not a corrupt-model problem, and the two have completely different recovery paths.
Recovery Attempts That Burn the First Hour
Four things get tried before anyone looks at the .BAK, and none of them return geometry.
Reopening RobotStudio, or repairing/reinstalling it. The application is not holding your station in a recoverable buffer once the process closes. Reinstalling rewrites program files and leaves the zero-byte station exactly as it is.
Hunting for an autosave directory. Engineers assume there is a hidden recovery cache with a timestamped copy of the last edit session, the way a word processor keeps one. Searching %LOCALAPPDATA% for a station fragment produces nothing usable, because the file sitting next to your station with the .BAK extension is the recovery copy, and it is the previous completed save — not a rolling autosave of the last few minutes.
Opening the Backup folder inside the solution. When a station is created as a Solution, RobotStudio drops controller backups into a Backup subfolder as part of the save. That folder contains the virtual controller image: system parameters, RAPID modules, configuration. It contains no CAD, no station tree, no component positions. If your cell is still at the layout stage with no controllers created, that folder is either empty or irrelevant, and time spent there is wasted.
Windows Previous Versions or File History. Worth one look if the volume has shadow copies enabled, but on most engineering workstations it is off, and on cloud-synced folders the version history lives in the sync provider's web interface rather than the shell property page.
Why the Save Wrote Zero Bytes
An .RSSTN is a packaged archive, not a flat serialization. Saving is a truncate-then-write operation: the existing file is emptied, the geometry, station tree, and library references are streamed in, and the archive directory is written at the end. If the stream is interrupted anywhere after the truncate, what remains on disk is a file of length zero — or a small file with no valid archive footer. Either way the loader rejects it.
The interruptions that produce this on RobotStudio workstations are mechanical, not logical:
- The target volume ran out of free space mid-write. Large CAD-heavy cells write hundreds of megabytes per save, and the write happens all at once.
- A cloud sync client (OneDrive, Dropbox, Box, a mapped SharePoint library) held or replaced the file handle during the write. Sync clients are the single most common cause of this failure mode on RobotStudio stations, because they treat a multi-hundred-megabyte file that rewrites completely on every save as a fresh upload and will lock or de-hydrate it.
- Antivirus real-time scanning locked the file for inspection between truncate and write.
- A network share or removable drive dropped during the save.
- The application terminated during the write — process kill, GPU driver reset, power loss.
This is I/O, not logic. Nothing in your station model caused it, and the model that was in memory at the last successful save is still on disk under the .BAK name.
Restoring the Station From the .BAK
The save routine renames the outgoing file to .BAK before writing the new one. That file is a complete, valid station package — only the extension is different. Change the extension and RobotStudio opens it.
- Close RobotStudio completely. Confirm no process is holding the folder.
- Copy the entire station folder to a local path outside any synced directory — for example
C:\RS_Recovery\. Work on the copy. The original stays untouched as evidence if the first attempt fails. - In File Explorer, enable View > File name extensions. Without this you will rename the file to
Cell.RSSTN.BAKand conclude the method does not work. - Check the size of the
.BAK. It must be non-zero and in the same order of magnitude as your station previously was. A zero-byte.BAKmeans both the current and previous save failed, and recovery moves to shadow copies or sync-provider version history. - Duplicate the
.BAK, then rename the duplicate fromCell.BAKtoCell.RSSTN. - Launch RobotStudio and open the renamed file through File > Open, pointing at the local recovery path.
- Immediately save it under a new name on a local, non-synced drive, and confirm the new file reports a non-zero size before you continue editing.
What to Measure Before and After
| Quantity | Limit / expected value | Where to read it |
|---|---|---|
| Station file size | Non-zero; comparable to prior saves | Explorer details view, Size column |
.BAK file size |
Non-zero; if 0, the previous save also failed | Same folder as the station |
| Free space on target volume | Several times the station size, per save | Drive properties |
| Sync client status on the save path | Path should not be under any sync root | Sync client settings / folder overlay icons |
| Geometry vs. controller data | Geometry lives only in the station file; the solution Backup folder holds controller data only |
Solution folder structure |
| Antivirus exclusions | Station working directory excluded from real-time scan | Endpoint protection console |
Verifying the Recovered Cell
A station that opens is not automatically a station that is intact. Walk the recovered cell before you resume work.
- Check the station tree for every imported CAD part and library component. Missing geometry shows as absent nodes or as unresolved library references flagged in the browser.
- Confirm part positions and orientations against a known reference — a fixture datum, a robot base frame, a conveyor centerline. A partial write can preserve geometry but drop the most recent transform edits.
- Verify that externally linked geometry still resolves to its source files. If parts were imported by link rather than embedded, the link paths must still be valid from the recovery folder.
- Check targets, paths, and work object frames if any were created. These belong to the station, not to a controller backup.
- Accept the time gap. The
.BAKis the state at the previous successful save, so any work done between that save and the failed one is not in the file. Reconstruct that delta deliberately rather than assuming it survived. - Save, close, reopen. A station that survives a clean open/close/open cycle at full size is sound.
Save Practice That Prevents the Repeat
Keep the active station on a local physical drive. Synchronize to the network or cloud with a copy operation after the save completes, not by making the cloud folder the working directory. The sync client then uploads a finished file instead of contending with RobotStudio for the handle during a truncate-and-write.
Use Pack & Go for milestone snapshots. It bundles the station together with its libraries and any controller systems into a single transportable archive, which survives a corrupted working file and moves cleanly between machines. Increment the filename at each milestone so a bad save never overwrites the only good copy.
Once virtual controllers exist, take backups from the Controller tab on a schedule of your own rather than relying on the automatic backup the station save produces. Controller backups and station geometry fail independently, and the controller side is where most long-term damage occurs. Two separate backup streams, in two separate locations, is the working configuration.
Escalate to ABB support when the .BAK is also zero bytes and no shadow copy or sync-provider version history exists, or when a station opens but crashes the application repeatedly at load — that pattern points at the installation or a library conflict rather than at file damage. Have the station and .BAK file sizes, the RobotStudio version, and the save path type (local, mapped drive, synced folder) ready before you open the case.
Frequently Asked Questions
How do I open a RobotStudio .BAK file?
Copy the .BAK to a local folder, turn on file name extensions in Explorer, and rename the copy from Cell.BAK to Cell.RSSTN. It opens directly through File > Open — the contents are a complete station package, only the extension differs.
How do I recover CAD geometry if my station file is 0 bytes and there is no .BAK?
Check Windows Previous Versions on the volume and the version history in your cloud sync provider's web interface, then any Pack & Go archive you created. The solution's Backup folder will not help — it contains controller data only, with no geometry.
Is the .BAK file an autosave?
No. It is the previous completed save, renamed by the save routine before the new file is written. Work performed between that save and the failed one is not recoverable from it.
How do I stop RobotStudio from writing zero-byte station files?
Move the working directory off any cloud-synced or network path to a local drive, add that folder to your antivirus real-time scan exclusions, and keep free space on the volume at several times the station size so each full rewrite completes.
How do I back up a station that has no virtual controller yet?
Use Pack & Go to bundle the station and its libraries into one archive, and save incrementing filenames at each milestone. Controller-tab backups only become relevant once a virtual controller exists, and they never contain layout geometry.