add blocking .read() method to LightBar
brevity
now mostly working, various fixes, needs xml redo