keypad functional
arbitrary duty calculation
Merge branch 'calculation-logic'