up()/down()?
pass previous pulse to encode symbol, if useful?
decode state encoded slot state
all remaining packet formats
init device, loop allowing input of arbitrary packet as hex bytes
maintain list of open devices?
keep timestamp of last rx?
drain read buffer before writing
also decode into array of scaled/translated parameters