Recently I made a small demo:
This is application running in ChibiOS/RT RTOS with addition of µGFX framework. It mimics screen unlocker known from Andriod smartphones. It was tested on Embest DM-STF4BB board with DM-LCD35RT LCD display, but should run on any other supported by µGFX. It works properly in ChibiOS/RT simulator also. For details how to run it there, please visit simulator introduction (link is dead, I’ll update this once it appears somewhere).
It allows to configure number of columns and rows you want to have, colors of the “rings” and few other options. The distance between rings is calculated automatically based on screen size and number of columns and rows. There are two functions to handle unlocker. displayUnlockerSetup() is used to draw and save unlock sequence. displayUnlocker() simply displays unlocker and exits if user drew proper pattern, either set by setup function or hardcoded. There is no persistence mechanism to store patterns.
The code is available at GitHub: