Integrating Live Pen™ 2
Live Pen™ 2
Live Pen™ 2 has changed the way it stores captured strokes compared to the Live Pen™ 1 (DP-201). The new principle is that the pen stores all captured data in a stream and it will send all data to the back-end rather than splitting out pages inside the pen as in the Live Pen™ 1. In Live Pen™ 2 you can only get and remove all strokes at the same time. It is still possible to extract individual pages from the Live Pen™ 1, however to make your system behave in the same way for different pen models, the 'get all' design principle is recommended.
New Ink Format
Live Pen™ 2 uses a new ink data format, called STF2. It encapsulates strokes, pen ID, and pen properties into the same format. The STF2 format also provides a way to add debug information to the STF2 data stream. It logs all stroke samples, decoding errors and pen events that occur in a sequence as they occur.
The STF2 is compatible with the PGC 1.1 format and the stroke data can easily be extracted and converted to PGC 1.1 - the Anoto Live SDK provides an ink converter library for this purpose. By converting to PGC 1.1 the ink data from Live Pen™ 2 becomes compatible with existing solutions.
Pen Time Management
The time handling on Live Pen™ 2 is slightly different compared with the Live Pen™ 1. The time reported by the pen is defined to always be UTC time (milliseconds since 1970). All strokes in the pen are stamped with this time. If the current time is set from host computer or reset due to the battery being discharged completely, it is recorded in the STF2 data stream.
It is recommended that clients using the Live SDK compare 'pen time' at docking with the host system and update the pen time if needed.
NOTE: Since the pen stores pen events in the STF2 data stream, it may in some cases appear as if a pen contains strokes even if you have not written with the pen. For example, if you dock a pen that does not contain any strokes and then set the time the used memory value will increase.
Managing Utility Segment and Pidgets in STF2 and converted PGC 1.1
Since the Live Pen™ 2 stores all strokes in the same data stream and not page-based as in Live Pen™ 1, the pen data that is synchronised from the pen will contain all strokes since last synchronisation. To avoid losing stroke data when converting to the PGC 1.1 format, all strokes from the utility segment, magic box pidgets, global pidgets, etc. are included in the converted PGC 1.1.
Back-end solutions must be updated in order to successfully handle these cases when processing pen data.