The official frontend for libSMCE.
Created to emulate cars supporting the smartcar_shield platform, write real arduino code and run on it your desktop!
SMCE-gd is an educational platform that allows its users to write real arduino code, leveraging libSMCE to compile and run arduino code to instantly get results without involving real arduino hardware.
Here is a simple arduino hello world program:
void setup() {
Serial.begin(9600);
Serial.println("Hello world");
}
void loop() {
Serial.println("Loop!");
delay(100);
}
In this world UART is always attached, thus the above will output:
You get access to multiple sensors and other attachments through a simple graphical interface, most sensors even display handy information such as what pins they are attached to, and what their actual measurement is:
You get simulated vehicle physics, along with a debug overlay and a keyboard controllable debug vehicle; it is almost true to life.
SMCE compiles arduino code with a real C++ compiler, so be sure to checkout the following resources on installation and setup for the best experience:
-
Smartcar shield (Examples)
- Godot
- *libSMCE (version)
- godot-cpp (automatically built from source; *SConstruct is not used, but Python3 is still required)
- C++20-compatible compiler + CMake
* To install libSMCE head to it's releases page and extract/install one of the artifacts, then set the env var SMCE_ROOT
pointed to the root of the extracted directory.
mkdir build
cmake -B build
cmake --build build --target godot-smce
Packaging is done using CPack.
note: we bundle the shared lib of SMCE on export
godot --path project/
- Or open up the project folder in the Godot editor and start from there.
Copyright ItJustWorks™, Apache 2.0 licensed
Software courtesy of RuthgerD
CI & Packaging by AeroStun
Logo by @Reves.sur.papier
Car model by Ancelin Bouchet