Just wanted to post my experience replacing a lockset on a new-to-me GTS 300 HPE: I bought the scooter (very) used, and it came with only the blue (user) key, which has seen better days. My scooter's manual seat release is broken, and I was worried I'd be in trouble if my only key failed or went missing.

I saw SteelBytes's excellent Vespa Diag tool may allow clearing existing key bindings on the ECU, which I believed would let me initialize a new service (brown) key and a number of new user (blue) keys using the "Electrical System" --> "Virgin circuit" procedure in the workshop manual. I gave this a go, and after some trial and error I now have a pair of new keys. Nice! Some notes about this process below, in case this encourages someone to do the same:

Clearing existing key bindings:

This is relatively easy: I bought a Euro 5 diagnostic connector pigtail (e.g. this) for a few dollars, and a cheap clone of a CANable 2.0 board, hooked up the CAN-H, CAN-L, and ground wires to make a phone-to-vespa diagnostic cable with a bit of electrical tape to keep things organized. The Vespa Diag app is quite straightforward (note that reading and modifying the EEPROM image does require a $10 purchase in the app - fair enough).

To reset the key bindings, I did the following:
1. Read the EEPROM image with the app (BINS --> EEPROM Read). This takes a minute or so.
2. Save the image someplace safe
3. Inspect the image file with the app to gain confidence it was read without error (BINS --> EEPROM Info).
4. I copied this image to make sure I had a pristine backup.
5. The app then has a button to modify the image file to clear key bindings (BINS --> EEPROM Remove Keys)
6. Write back the modified EEPROM image (BINS --> EEPROM Write). This also takes a little while.
7. I then read it back and made sure it matched the modified copy I'd created earlier.

At this point, the scooter gave me a dashboard light sequence consistent with the "Previously unused control unit" error codes. It started, but refused to throttle above idle with my existing blue key. Nice, time to replace the lock cylinder and pair the ECU with new keys.

Replacing the lock cylinder:

This was a bit fiddly but did not require much skill. Robot has an excellent video tutorial showing how to replace the lock cylinder.

In practice it's not strictly necessary to remove the handlebar covers (but doing so greatly helps if you want to completely remove the glovebox cover), or to completely remove the glovebox cover. I was able to remove the glovebox cover bolts and pull it away from the frame without disconnecting cables or moving its neck out of the steering column wiring harness. You do absolutely have to move the immobilizer antenna collar (638534) out of the way, which is easy but requires a gentle touch.

With a right angle machinist's pick, you can just access the lock cylinder retaining clip, and carefully wiggle it upwards until the lock mechanism (1B001876) pops out. Robot cautions that you shouldn't remove the retaining clip completely, and I did have some trouble with this clip moving out of place, requiring some cursed two-hand shenanigans to re-seat the new lockset correctly. It's fiddly work, and this would have gone much quicker had I removed the handlebar covers & glovebox completely.

Buying a replacement lock cylinder & keys:

Vespa keys are chipped on modern models >50cc, and there are multiple protocols used over the years. This was a little confusing, and I did initially order the wrong part.

My original key was blue and had a wedge marking at the base of the key (maybe an "I" or a skinny triangle; unclear). It's not clear which chip is in this key; I didn't want to break it further and did not dig deeper.

I initially ordered an incorrect lockset for my scooter (1B004727R), which arrived with a pair of keys (brown and black), each stamped with an triangle & circles icon resembling a radio antenna. The chip in the brown key is readily accessible, and is an Atmel 336 ATA5551. The scooter ignored these keys entirely (two flash error code, meaning the scooter doesn't see the key chip at all). If someone wants a brand new lockset for their pre-2020 scooter, I don't hesitate to reach out :').

After some digging (again, thanks SteelBytes), it seems that my North America MY21 GTS 300 HPE uses a different key system -- 1B009662R. This also comes with a pair of chipped keys (brown and black), the keys having the same triangle radio icon, with an additional marking (the letter "N"). Again, it's easy to open the brown key to inspect the chip, which is an NXP PCF7936AA. After installing these, the scooter did acknowledge the existence of both keys, judging by the sequence of lights at power-on. Nice! Next.

Programming the new keys:

This is a sequence spelled out in the workshop manual ("Electrical System" --> "Virgin circuit"), and in another video by Robot. This took me a two tries; the timing seems to matter quite a bit. At this point, the scooter recognized both keys, started, and happily throttled up. A month of riding later, haven't had any issues.

Overall, this took a couple of weeks of waiting for mail and ~2 hours of fiddly panel removal, no harder than any other Vespa project. Risk of screwing things up seems relatively low, provided the app continues to work well.

Cheers, hope this saves someone a bit of confusion!