I want to use the SafeGuard Dongle to store some protected data as machine options.
To do this i would like to develop an executable in C or C++ to read/write the dongle directly on the GPOS, i use an APC 4100 with hypervisor.
I searched on Help and don’t find how to do this, is anyone know if it’s possible or if a driver exist to read/write on SafeGuard Dongle ?
The safe key’s sole purpose is to manage the safety application and underlying data. It’s not meant to be user-accessible or a general purpose memory and I am not aware of any means to access it besides via the Safe designer and the libraries (SfDomain for mappSafety, AsSafety for Safety Release).
If you want to store user data, you can always store it on a user partition of your PLC memory (the CF) or an extra USB stick.
You could also use the X20CMR modules, they have 512 kB of Flash, I believe you use Flatstream mode to access, so it isn’t fast storage, or file based storage, but it isn’t easy for users to get to and mess with.
The X20CMR100/X20CMR111 also have the 241kB of tech guard storage via AsGuard. The Tech Guard functionality only works when on the direct X2X bus of the PLC, not behind a bus controller.
Depending on what protected data you are trying to store, and if it is safety related, you could also use the SafeCommission options/SafeTables to store data. This would be stored on the Safe Dongle when it’s loaded on to it and exist through power cycles.