I posted this in another thread:

I just downgraded to 3.20, where Bluetooth sync worked most of the time, and I never lost a ride, settings or profiles. It was the first time I tried downgrading. It was quite easy, so I won't worry about trying future Garmin updates. I just had to find the .gcd file for 3.20, rename it gupdate.gcd, place it in the Garmin folder on the device, and disconnect the device - on power-up, confirm I really wanted to install an older version. When downgrading you lose all settings, so I did a full re-format to make sure everything new got cleared out, re-started, placed all my backed up settings files (settings.fit, totals.fit, records.fit etc) in the NewFiles folder, and now it's back to good, old reliable 3.20 with all my settings intact.

Just don't run Garmin Express, or it will auto-update back to 3.50 without asking. Fortunately, I noticed it in time, and deleted the new gupdate.gcd file it had copied to my device while "Syncing".

There are some instructions also, but I did not need to use the firmware patcher to change any version number, just rename the Edge510_320.gcd as explained above.