working on firmware