LEGO Powered UP - Motor Modes POS and APOS

The LEGO Control+ motors - Technic XLarge Linear Motor and Technic Large Linear Motor - have internally the modes POS (reporting a position) and APOS (reporting an absolute position). Further does the LEGO Wireless Protocol specify methods StartSpeedForDegrees and GotoAbsolutePosition.

ReactiveX Middlewares

While implementing sharpbrick/powered-up an interesting problem came up to solve: How to handle the incoming messages of the Bluetooth Low Energy based communication protocol. On top of the Bluetooth abstraction there is a simple callback which would receive roughly 50 different message types which would need dispatching to several locations, some locations would even spawn up dynamically over time. I needed an infrastructure! I needed a middleware 😀.