Remote embedded system development framework
Project ID: AEE-2021
Students: Anton Klami, Axel Aumasto, Oskar Liljeström, Shah Fahad Farooqi
Project manager: Axel Aumasto
Instructor: Ivan Vujaklija
Starting date: 23.1.2021
Completion date: 3.6.2021
The project was commissioned with making a remote embedded development framework to allow for remote development of embedded software. The task included conceptualizing, designing and implementation of prototype solution. As a project input a STM32 Nucleo64 development board was given to work with. Arduino Due microcontroller was chosen to be the secondary microcontroller to simulate IO devices that connect to the STM32 controller. Both STM32 and Arduino were connected to the remote host computer with their default serial-USB interfaces. The solution that emerged was to allow remote connection to STM’s native STM32CubeIDE and develop a separate program to test the embedded code with simulated peripherals.
The result of the project consists of the relay functionality written for the Arduino and the Arduino facing Python functions in the host providing means to initialize the Arduino and set the correct settings for relaying the IO data such as PWM, UART and I2C to and from the board. Python simulation program was written to demonstrate these functionalities with a simple DC motor example. Finally, a web application and simulation manager programs were made to form the user interface. Together with remote access to the IDE, the user can write and test their code end to end without any hardware at hand.