diff --git a/README.md b/README.md index e82d8f76..fbef3a89 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,11 @@ The simulation is based on the open source robot simulator *Webots*. The applica * Windows: ```%WEBOTS_HOME%\lib\controller``` 3. Install the native compiler toolchain: * Linux: Install the gcc toolchain, depended on your distribution. - * Windows: Install the [MSYS2](https://www.msys2.org) toolchain and follow the instructions there. + * Windows + * Install the [MSYS2](https://www.msys2.org) toolchain. + * Open MSYS2 shell. + * Update package database: ```pacman -Sy pacman``` + * Install GCC: ```pacman -Sy mingw-w64-ucrt-x86_64-gcc``` ## The Webots library To adapt the HAL to the simulation, some sourcecode files from Webots are necessary. Currently there is no Webots library in the platformio registry available. Therefore a local library is created during the build. Ensure that that Webots is already installed, before you try to build it! diff --git a/doc/configuration/README.md b/doc/configuration/README.md index 2823b58a..24d037a1 100644 --- a/doc/configuration/README.md +++ b/doc/configuration/README.md @@ -1,6 +1,7 @@ # Radon Ulzer - Line Follower - [Configuration Management](#configuration-management) +- [ArduinoNative](#arduinonative) - [Issues, Ideas And Bugs](#issues-ideas-and-bugs) - [License](#license) - [Contribution](#contribution) @@ -9,6 +10,18 @@ ![config](http://www.plantuml.com/plantuml/proxy?cache=no&src=https://raw.githubusercontent.com/BlueAndi/RadonUlzer/main/doc/configuration/uml/configuration.plantuml) +# PlatformIO Environments +As seen in the diagram before, the working environments are defined in the platformio.ini file, and these are used by PlatformIO to build the respective applications. To build an specific application, there are three possible methods: + +- On the left task bar of VS Code, choose the PlatformIO extension symbol, and open de drop-down menu of the desired application. +- Choose the desired application on the bottom task bar using the "Switch PlatformIO Project Environment" button. +- Use the command line: ```pio run -e ``` + +# ArduinoNative +In order to maintain compatibility between target and simulation, some interfaces from the Arduino Core have been adapted and/or stubbed into the ArduinoNative library. Code stubs for Stream, Serial, millis(), delay() and other similar Arduino functionalities have been implemented here. + +It is important to note that in the case of the simulation, the main entry point of the program is found in Arduino.cpp. + # Issues, Ideas And Bugs If you have further ideas or you found some bugs, great! Create a [issue](https://github.com/BlueAndi/RadonUlzer/issues) or if you are able and willing to fix it by yourself, clone the repository and create a pull request.