Introduction
C-STEMbian is for computing and STEM education using Raspberry Pi. C-STEMbian is a free open source Linux operating system based on Raspbian for absolute beginners to use Raspberry Pi effectively. It extends Raspbian with easy installation of many additional components, including C-STEM Studio and user-friendly C/C++ interpreter Ch, to help absolute beginners learn coding, making, robotics, and STEM.
C-STEMbian is an ideal solution for coding, do it yourself (DIY) and making, Internet of Things (IoT) applications, and Cyber-Physical Systems (CPS) using Raspberry Pi and Arduino boards.
C-STEMbian runs in Raspberry Pi and Pi compatible computers, including Pi 1, 2, 3, Pi Zero, and Pi Zero W. Raspberry Pi computers are ultra-low-cost, fully functional tiny computers that sell for as little as $5 dollars. They are developed by the UK-based Raspberry Pi Foundation, with the goal of putting “digital making into the hands of people all over the world.” C-STEM Studio for Raspberry Pi makes building your own digital and hardware systems easy and fun.
Salient Features
C-STEM Studio can be used to control Barobo Linkbots and Lego Mindstorms NXT/EV3.
GPIOviewer in C-STEM Studio allows students easily get started tinkering with electronics and testing circuitry using general purpose input/output (GPIO) pins on Raspberry Pi.
C/C++ is the programming language of choice for interfacing hardware and electronics. The scripting and plotting capabilities in C/C++ interpreter Ch allow for rapid software development using Ch WiringPi Package with visualization. The step-by-step debugging feature in the user friendly ChIDE helps students learn problem solving with critical thinking and reasoning
Ch Arduino in C-STEMbian allows seamless integration of Pi and Arduino for unprecedented convenience of physical computing and Making.
Web-based computing in Raspberry Pi can be used for web-based data acquisition and visualization.
Student teams can participate in project-based RoboPlay Video Competition using Linkbot or NXT/EV3, or combination, with motions created using C-STEM Studio in Raspberry Pi.
Getting Started
Barobo Raspberry Pi Starter Kit contains all the necessary components needed to run C-STEMbian. C-STEMbian and C-STEM Studio can be downloaded from Downloadspage.
A Raspberry Pi computer can run stand alone, connected with a monitor, keyboard, and mouse. C-STEM Studio on Raspberry Pi can be accessed through Windows, Mac, or Chromebook computers using existing peripheral devices through Virtual Network Computing. You can get started with C-STEMbian for Pi quickly.
Major Components and Features
C-STEMbian is a superset of the latest Raspbian. C-STEMbian contains the following major components for education, research, and applications in STEM fields, IoT, and CPS.
- Raspbian, the Raspberry Pi Foundation’s official supported operating system. As C-STEMbian is a superset of the Raspbian, C-STEMbian contains all features of the latest Raspbian.
- Ch, a C/C++ interpreter for script computing in C/C++ with high-level extensions, including ChIDE, simple numerical computing, plotting, QuickAnimation, etc.
- ChIDE in Ch can be used to edit, debug, and run C/C++ program with syntax highlighting, and can readily compile and link C/C++ programs using gcc for C and g++ for C++ compilers (in ChIDE->Tools->Compile/Link/Build/Go). It is a better alternative than Geany Text Editor in Raspberry Pi.
- C-STEM Studio, a platform for hands-on integrated learning of computing, science, technology, engineering, and mathematics (C-STEM) using Linkbot, Lego Mindstorms NXT and EV3, Arduino boards, and Raspberry Pi, Pi Zero, Pi Zero W. C-STEM Studio can be used to teach C-STEM Math-ICT Curriculum which provides K-13 students with up to 12 years of hands-on integrated math and computer science education with coding in Blockly and Ch/C/C++.
- Ch Mindstorms Controller in C-STEMStudio is the only platform in Raspberry Pi that allows you to control Lego Mindstorms NXT/EV3 from Pi directly. A single program can also control multiple NXT/EV3 at the same time.
- RoboBlockly for learning coding, robotics, and math.
- GPIOviewer, a simple GUI to interact with general purpose input/output (GPIO) pins on Rasperry Pi
- Ch WiringPi Package, a Ch binding to WiringPi to use WiringPi C functions for interfacing GPIO and other devices.
- Ch Arduino package in C-STEM Studio allows the same C/C++ code to run in both ChIDE and Arduino IDE without any modification.
- Ch Common Gateway Interface (CGI) Toolkit for processing fill-out forms in Web development and Web-based computing.
- Linkbot Labs for control Barobo Linkbots.
- Using Ch Mechanism Toolkit for Web-Based Mechanism Design and Analysis for design and analysis of many different mechanisms such as fourbar linkage, crank-slider mechanism, sixbar linkages, cam-follower system, etc.
- Ch Control System Toolkit and Web-Based Control System Design and Analysis for modeling, design, and analysis of continuous-time or discrete-time linear time invariant (LTI) control systems.
- Apache Web Server for web development and Web-based computing (The user needs to start the server)
- Embedded Ch for embedded scripting and IoT by embedding Ch engine into a binary C/C++ application program so that the program behavior can be changed by C/C++ scripts later without recompilation.
- Mobile-C, an IEEE FIPA compliant mobile agent platform for mobile agent-based computing and applications for IoT and Cyber-Physical Systems.
- Ch OpenCV in C-STEMbian for capture images, capture videos, machine vision, image processing, and artificial intelligence.
- (More packages will be added. Practically all C libraries can be ported to work in Ch using Ch SDK. We can help you port your favorite C libraries to run in C-STEMbian.)
- …
Textbooks and Curriculum on Physical Computing with Pi and Arduino
You can use C-STEM Studio, textbooks of “Learning Physical Computing with Raspberry Pi for the Absolute Beginner” and
“Learning Physical Computing with Arduino for the Absolute Beginner”, and curriculum on Physical Computing with Pi and Arduino readily for classroom teaching.
Training on Physical Computing with Pi and Arduino
You can visit our Professional Development page to arrange and register for a Free 1-Day Workshop on Arduino and Robotics in your region using low-cost Arduino and Raspberry Pi Kits designed to work with C-STEMbian. The Barobo Raspberry Pi Starter Kit shown below contains all the components you will need to get started using C-STEMbian and C-STEM related curriculum.