The stable response of the system in the previous subsection suggests a third HMI architecture wherein all interface, sensing, filtering, estimation, and control tasks are performed on the mobile device [8]. This allows learners to receive the benefits of the first and second architectures, and, in the spirit of [9], can replace expensive laboratory computers and software with low-cost microcontrollers, since tablets can perform all necessary computations. This architecture is illustrated with position control of a 15.24 cm motor arm (Figure 1). In this implementation, the PC (alternatively a microcontroller) is only responsible for transmitting control signals received from the tablet. Vision sensing is used to measure the angular position of the motor arm. The tablet implements a discrete-time Kalman filter and a full-state feedback controller. The motor control user interface has three main views (Figure 6a). A 30 Hz video is live-streamed in the large, right view, projected onto which is a purple semi-transparent virtual arm lying in the plane of the actual arm, representing the system set point. As the virtual arm is tapped and dragged, it pivots under the user's finger about its fixed end-attached to the orange marker in the scene-similar to the rotation of the actual motor arm about its axis. The two left-hand views of the interface contain plots. On top, users tap on an interactive pole-zero plot to select desired closed-loop poles, triggering a pole-placement formula for controller gain computation. On the bottom, dynamic plots display the set point command, vision-based measurements of the motor arm angular position, and angular velocity estimate from the Kalman filter. Buttons enable the user to start, stop, and reset plots and email collected data for post-processing. The resulting interface allows learners to interactively explore the effect of pole locations on system performance. To investigate the potential of this architecture, the tablet is used to design several controllers and issue 0̊ and 90̊ step commands. Figures 6b-6d show the issued set points and recorded responses for each control design. These results show that the interface allows users to both command the system and adjust various characteristics of its dynamic behavior, including steady-state error, settling time, and overshoot.