Abstract
As a critical set of skills in the 21st century, computational thinking has attracted increasing attention in K-12 education. Microcontrollers, combined with LEDs, actuators, and a variety of sensors, provide students countless real-world projects, such as autonomous vehicles, smart homes, and robotics. By solving those projects through programming, students will not only learn computational skills but also benefit from the hands-on activities to get some experience on solving real-world problems. It makes microcontroller projects a perfect tool to develop the computational thinking skills of K-12 students. Our previous work has proposed a solution for higher graders to program Arduino through Ch, a C/C++ interpreter. It is necessary, however, to develop a platform for lower graders (K-6) since most of them do not have the ability to type through the keyboard. This paper extends our previous work such that students can program Arduino on RoboBlockly, a block-based programming platform. In the paper, we will present two case studies to demonstrate how to build blocks to control the Arduino board and what concepts students will learn from those projects. In addition, the proposed platform also provides an interactive way of transitioning students from the block-based program to a text-based program in Ch.