https://janelia-arduino.github.io/qp-arduino
- Name: qp-arduino
- Description: QP real-time embedded framework for Arduino
- Version: 6.9.5
- qpcpp version: 6.9.4
- qm version: 5.1.3
- Release Date: 2024-10-29
- Creation Date: 2017-01-30
- License: GPLv3
- Forked From Repository: https://github.com/QuantumLeaps/qp-arduino
- URL: https://github.com/janelia-arduino/qp-arduino
- Author: Quantum Leaps
- Fork Maintainer: Peter Polidorop
- Email: peter@polidoro.io
- Copyright: Quantum Leaps, LLC
- References:
The Quantum Leaps’ QP™ real-time embedded frameworks (RTEFs) and the QM™ modeling tool complement the Arduino platform and provide everything you need to program Arduino graphically with event-driven active objects and modern hierarchical state machines.
PlatformIO can be used as an alternative to the Arduino IDE for compiling and uploading Arduino code to embedded boards using a command line interface.
https://docs.platformio.org/en/latest/core/installation/index.html
python3 -m venv .venv
source .venv/bin/activate
pip install platformio
pio --version
Linux users have to install udev rules for PlatformIO supported boards/devices.
curl -fsSL https://raw.githubusercontent.com/platformio/platformio-core/develop/platformio/assets/system/99-platformio-udev.rules | sudo tee /etc/udev/rules.d/99-platformio-udev.rules
sudo service udev restart
sudo usermod -a -G dialout $USER && sudo usermod -a -G plugdev $USER
sudo apt-get purge --auto-remove modemmanager
You will need to log out and log back in again (or reboot) for the user group changes to take effect.
After this file is installed, physically unplug and reconnect your board.
make teensy-firmware
pio run -e teensy41
make teensy-upload
pio run -e teensy41 -t upload
make monitor
pio device monitor
cd ~ && rm -rf qp && mkdir qp && cd qp
curl -OL https://github.com/QuantumLeaps/qm/releases/download/v5.1.3/qm_5.1.3-linux64.zip
unzip qm_5.1.3-linux64.zip && rm qm_5.1.3-linux64.zip && mv qm qm-5.1.3
chmod u+x qm-5.1.3/bin/qm && chmod u+x qm-5.1.3/bin/qm.sh
alias qm='~/qp/qm-5.1.3/bin/qm.sh'
cd ~/qp
curl -OL https://github.com/QuantumLeaps/qtools/releases/download/v6.9.3/qtools-posix_6.9.3.zip
unzip qtools-posix_6.9.3.zip && rm qtools-posix_6.9.3.zip && mv qtools qtools-6.9.3
cd qtools-6.9.3/qspy/posix
make
alias qspy='~/qp/qtools-6.9.3/bin/qspy'