non interactive version, reads pins.json
move pin logic into registerPins