Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix recent windows build and add ubuntu-20.04 support #88

Merged
merged 7 commits into from
Dec 7, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions .github/workflows/build_and_deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
include:
- os: ubuntu-22.04
target: all
- os: windows-latest
- os: windows-2022
target: dronecan_v2
runs-on: ${{ matrix.os }}
timeout-minutes: 10
Expand All @@ -26,10 +26,12 @@ jobs:
- name: Install dependencies
run: |
python -m pip install -r requirements.txt
python -m pip install yakut
if [ "${{ runner.os }}" == "Linux" ]; then
sudo apt-get install -y gcc-arm-none-eabi
elif [ "${{ runner.os }}" == "Windows" ]; then
choco install -y gcc-arm-embedded make cmake
choco install -y gcc-arm-embedded make
choco install -y cmake --version=3.31.1
fi
shell: bash

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/cyphal_sitl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
- name: Install dependencies
run: |
pip install -r requirements.txt
pip install pytest
pip install pytest yakut
sudo apt-get install -y gcc-arm-none-eabi linux-modules-extra-$(uname -r)

- run: make sitl_cyphal
Expand Down
16 changes: 15 additions & 1 deletion .github/workflows/dronecan_sitl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,13 @@ on:
- '*'
jobs:
sitl:
runs-on: ubuntu-22.04
strategy:
matrix:
include:
- os: ubuntu-24.04
- os: ubuntu-22.04
- os: ubuntu-20.04
runs-on: ${{ matrix.os }}
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
Expand All @@ -21,6 +27,14 @@ jobs:
pip install -r requirements.txt
sudo apt-get install -y gcc-arm-none-eabi linux-modules-extra-$(uname -r)

- name: Setup GCC for Ubuntu 20.04
if: matrix.os == 'ubuntu-20.04'
run: |
sudo apt update
sudo apt install -y gcc-10 g++-10
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 100

- name: Build SITL DroneCAN
run: make sitl_dronecan

Expand Down
9 changes: 9 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,15 @@ The software supports RL v2 nodes (stm32f103, 128 KBytes flash) and v3 nodes (st
| Mini v2 </br> stm32f103 </br> 128 KBytes flash | <img src="https://docs.raccoonlab.co/assets/img/view_top.6b0ef99e.png" alt="drawing" width="120"> | <img src="https://docs.raccoonlab.co/assets/img/pinout.c14a3021.png" alt="drawing" width="120"> | <img src="https://raw.githubusercontent.com/RaccoonLabHardware/mini_v2_stm32cubemx_project/main/Assets/stm32cubemx.png" alt="drawing" width="160"> |
| Mini v3 </br> stm32fg0b1 </br> 512 KBytes flash | <img src="https://docs.raccoonlab.co/assets/img/t-view-bottom.7eadba26.png" alt="drawing" width="120"> | <img src="https://docs.raccoonlab.co/assets/img/pinout.e7b1d6b7.png" alt="drawing" width="120"> | <img src="https://github.com/RaccoonLabHardware/v3-software-template/blob/main/Assets/stm32cubemx.png" alt="drawing" width="160"> |

The following table outlines the compatibility of the project with different operating systems, modes, and support timelines.

| **Operating System** | **DroneCAN Support** | **Cyphal Support** | **Notes** |
|-----------------------|-----------------------|---------------------|----------------------------------------|
| Ubuntu 24.04 | ✅ Supported | ✅ Supported | Latest Ubuntu LTS version. |
| Ubuntu 22.04 | ✅ Supported | ✅ Supported | Fully supported for both modes. |
| Ubuntu 20.04 | ✅ Supported | ❌ Not Supported | Will be deprecated in April, 2026. |
| Windows (2022) | ✅ Supported | ✅ Supported | Current "latest" Windows version. |

### 3. USE CASES

This node is a versatile device integrating PWM control, IMU sensing, and dual CAN bus communication, suitable for various applications in robotics, drones, and other embedded systems. Below are the detailed use cases for different scenarios.
Expand Down
2 changes: 1 addition & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
raccoonlab-tools>=0.1.0
raccoonlab-tools==0.2.0