I have added several refinements to the Python program.
If you click the close button on the Novag Citrine Interface window, or set up the new game position on the Citrine board, you now are offered the option of saving the game. If you click "Yes", the PGN for the game is appended to ChessGames.txt.
If you click on the rightmost button on the top frame, you are offered the option to send a command manually to the Citrine. Sending the "p" command to get the Citrine's view of the board position is sometimes helpful. I have never known that to differ from the position displayed by the interface. Nonetheless, that command sometimes gets rid of strange flashing lights when playing against the Citrine engine. Here is the latest Python code.