Assembler programming for embedded systems uses both on-site programming of devices connected directly to the development platform (usually via USB) and an integrated solution for IoT laboratories: VREL NextGen Software for remote experimentation.
Local development
Local development requires installing the development toolchain. A common scenario is to use Visual Studio Code, a compiler and, usually, a plugin dedicated to a selected platform, e.g. AVR Assembler Toolbox. AVR is commonly connected via UST-to-Serial: either embedded in the development board, as in the Arduino Uno, or as a separate electronic component between the development PC and the MCU. This, on the other hand, requires installing the serial port drivers (the procedure varies by operating system).
Remote development
Remote development uses a ready-made development platform accessible only via a web browser. The device is observable only via a live video stream, which introduces limitations to consider, such as latency and the lack of physical access to the device (e.g., pushing a reset button is impossible).
Users connect to the system using a web browser and develop software in the browser, compile it and inject it into the microcontroller, all remotely.
The following chapters present additional information on using the VREL NextGen remote labs system for assembler programming.