-
Notifications
You must be signed in to change notification settings - Fork 4
Bridle v4.0
Release Notes : https://bridle.tiac-systems.net/doc/4.0/bridle/release_notes.html
Required Tools : https://bridle.tiac-systems.net/doc/4.0/bridle/gs_recommended_versions.html#required-tools
- Python 3.10 – but Bridle requires Python 3.12 (tested 3.12.3 … 3.12.11)
- CMake 3.20.5 (tested 3.20.5 … 3.28.3)
- DTC 1.4.6 (1.4.7 … 1.7.1)
Installing Bridle manually : https://bridle.tiac-systems.net/doc/4.0/bridle/gs_installing.html
Note
The git track command is a Git alias function and should be defined
as shown below:
git config get --global alias.track
Git alias function of `git track` (click to expand or collapse)
!f() { ([ $# -eq 2 ] && \ ( echo "Setting tracking for branch " $1 " -> " $2; \ git branch $1 $2; \ git branch --set-upstream-to=$2 $1; \ ) || ( \ git for-each-ref --format="local: %(refname:short) <--sync--> remote: %(upstream:short)" \ refs/heads && echo --Remotes && git remote -v \ )); }; f
Important
Ensure that the workspace folder created below does not exist. If so, it must first be renamed or removed.
- Create Workspace Folder
mkdir ws-bridle-4.0 && cd ws-bridle-4.0 - Setup Python Virtual Environment for West
python3.12 -m venv --clear --copies --prompt="$(basename $(pwd))[$(python3.12 --version)]" .env source .env/bin/activate pip3 install --upgrade pip pip3 install --upgrade setuptools pip3 install --upgrade west - Cloning the Repositories with West
west init -m https://github.com/tiacsys/bridle --mr v4.0-branch west update - Export a Zephyr CMake package
west zephyr-export - Export a Bridle CMake package
west bridle-export - Installing all required Python dependencies
pip3 install --upgrade --requirement zephyr/scripts/requirements.txt pip3 install --upgrade --requirement bridle/scripts/requirements.txt
Caution
Avoid installation in any global context, e.g. users home or /opt folder.
Minimal required versions of legacy tools are:
- CMake 3.20.5
- DTC 1.4.6 (under Linux provided by Zephyr SDK as 1.6.0)
- Zephyr SDK 0.17.0
-
Install the CMake into the always activated local Python Virtual Environment
pip3 install --upgrade "cmake>=3.20.5,<3.28.4" -
Install the Zephyr Software Development Kit (SDK) into the global
/optfolderwget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.17.0/zephyr-sdk-0.17.0_linux-x86_64.tar.xz wget -O - https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.17.0/sha256.sum | shasum --check --ignore-missingtar -xvf zephyr-sdk-0.17.0_linux-x86_64.tar.xz \ --xform='s/^zephyr-sdk-0.17.0/zephyr-sdk/' ./zephyr-sdk/setup.sh -h -t allZephyr SDK installer output (click to expand or collapse)
Zephyr SDK 0.17.0 Setup Installing host tools ... All done.export ZEPHYR_TOOLCHAIN_VARIANT="zephyr" export ZEPHYR_SDK_INSTALL_DIR="$(pwd)/zephyr-sdk"
Important
Ensure that you always execute the following commands within and at the top level of the previously set up workspace folder! The local Python Virtual Environment must be enabled and the Zephyr SDK environment variables must be set properly (see above).
git -C zephyr config set --local pull.ff only
git -C zephyr remote add upstream https://github.com/zephyrproject-rtos/zephyr.git
git -C zephyr remote add origin git@github.com:tiacsys/zephyr.git
git -C zephyr remote update --prune
git -C zephyr fetch --unshallow
git -C zephyr checkout -b v4.0-branch origin/v4.0-branch
git -C zephyr checkout -b tiacsys/v4.0-branch origin/tiacsys/v4.0-branch
git -C zephyr track
(cd zephyr && gitk --all) &
Git track output for Zephyr (click to expand or collapse)
local: manifest-rev <--sync--> remote: local: heads/tiacsys/v4.0-branch <--sync--> remote: origin/tiacsys/v4.0-branch local: v4.0-branch <--sync--> remote: origin/v4.0-branch --Remotes origin git@github.com:tiacsys/zephyr.git (fetch) origin git@github.com:tiacsys/zephyr.git (push) tiacsys https://github.com/tiacsys/zephyr (fetch) tiacsys https://github.com/tiacsys/zephyr (push) upstream https://github.com/zephyrproject-rtos/zephyr.git (fetch) upstream https://github.com/zephyrproject-rtos/zephyr.git (push)
Important
Ensure that you always execute the following commands within and at the top level of the previously set up workspace folder!
git -C bridle config set --local pull.ff only
git -C bridle remote set-url --push origin git@github.com:tiacsys/bridle.git
git -C bridle remote update --prune
git -C bridle checkout -b v4.0-next origin/v4.0-next
git -C bridle track
(cd bridle && gitk --all) &
Git track output for Bridle (click to expand or collapse)
local: v4.0-branch <--sync--> remote: origin/v4.0-branch local: v4.0-next <--sync--> remote: origin/v4.0-next --Remotes origin https://github.com/tiacsys/bridle (fetch) origin git@github.com:tiacsys/bridle.git (push)
Important
Ensure that you always execute the following commands within and at the top level of the previously set up workspace folder!
TiaC Magpie F777NI : https://bridle.tiac-systems.net/doc/4.0/bridle/boards/tiac/magpie_f777ni/doc/index.html
- https://bridle.tiac-systems.net/doc/4.0/bridle/boards/tiac/magpie_f777ni/doc/samples/basic/blinky.html
- https://bridle.tiac-systems.net/doc/4.0/bridle/boards/tiac/magpie_f777ni/doc/samples/basic/helloshell.html
west build -p always -b magpie_f777ni -d build/led_blinky-magpie_f777ni zephyr/samples/basic/blinky
West build output for Zephyr LED Blinky (click to expand or collapse)
-- west build: generating a build system Loading Zephyr default modules (Zephyr base). -- Application: .../ws-bridle-4.0/zephyr/samples/basic/blinky -- CMake version: 3.28.3 Loading Bridle default modules (Bridle workspace). -- Bridle version: 4.0.0-dev (.../ws-bridle-4.0/bridle) -- Found Python3: .../ws-bridle-4.0/.env/bin/python3.12 (found suitable version "3.12.11", minimum required is "3.10") found components: Interpreter -- Cache files will be written to: /home/user/.cache/zephyr -- [✓] Found toolchain: 0.17.0 (.../ws-bridle-4.0/zephyr-sdk) -- Zephyr version: 4.0.0-dev (.../ws-bridle-4.0/zephyr) -- Found west (found suitable version "1.3.0", minimum required is "0.14.0") -- Board: magpie_f777ni, qualifiers: stm32f777xx -- Found host-tools: zephyr 0.17.0 (.../ws-bridle-4.0/zephyr-sdk) -- Found toolchain: zephyr 0.17.0 (.../ws-bridle-4.0/zephyr-sdk) -- Found Dtc: .../ws-bridle-4.0/zephyr-sdk/sysroots/x86_64-pokysdk-linux/usr/bin/dtc (found suitable version "1.6.0", minimum required is "1.4.6") -- Found BOARD.dts: .../ws-bridle-4.0/bridle/boards/tiac/magpie_f777ni/magpie_f777ni.dts -- Generated zephyr.dts: .../ws-bridle-4.0/build/led_blinky-magpie_f777ni/zephyr/zephyr.dts -- Generated pickled edt: .../ws-bridle-4.0/build/led_blinky-magpie_f777ni/zephyr/edt.pickle -- Generated zephyr.dts: .../ws-bridle-4.0/build/led_blinky-magpie_f777ni/zephyr/zephyr.dts -- Generated devicetree_generated.h: .../ws-bridle-4.0/build/led_blinky-magpie_f777ni/zephyr/include/generated/zephyr/devicetree_generated.h -- Including generated dts.cmake file: .../ws-bridle-4.0/build/led_blinky-magpie_f777ni/zephyr/dts.cmake Parsing .../ws-bridle-4.0/zephyr/Kconfig Loaded configuration '.../ws-bridle-4.0/bridle/boards/tiac/magpie_f777ni/magpie_f777ni_defconfig' Merged configuration '.../ws-bridle-4.0/zephyr/samples/basic/blinky/prj.conf' Configuration saved to '.../ws-bridle-4.0/build/led_blinky-magpie_f777ni/zephyr/.config' Kconfig header saved to '.../ws-bridle-4.0/build/led_blinky-magpie_f777ni/zephyr/include/generated/zephyr/autoconf.h' -- Found GnuLd: .../ws-bridle-4.0/zephyr-sdk/arm-zephyr-eabi/arm-zephyr-eabi/bin/ld.bfd (found version "2.38") -- The C compiler identification is GNU 12.2.0 -- The CXX compiler identification is GNU 12.2.0 -- The ASM compiler identification is GNU -- Found assembler: .../ws-bridle-4.0/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc --------------------------------------------------------------------- --- NOTICE: Unofficially supported SoC stm32f777xx will be used, --- --- relying on upstream startup and initialization code in: --- --- zephyr/soc/st/stm32 and zephyr/soc/st/stm32/stm32f7x --- --------------------------------------------------------------------- -- Using ccache: /usr/bin/ccache -- Configuring done (9.9s) -- Generating done (0.1s) -- Build files have been written to: .../ws-bridle-4.0/build/led_blinky-magpie_f777ni -- west build: building application [1/149] Preparing syscall dependency handling [2/149] Generating include/generated/zephyr/version.h -- Zephyr version: 4.0.0 (.../ws-bridle-4.0/zephyr), build: v4.0.0-137-g1bdea6d5cc5c [3/149] Generating ../../zephyr/include/generated/bridle/version.h -- Bridle version: 4.0.0-dev (.../ws-bridle-4.0/bridle), build: bridle-v4.0.0-3-gcda717986678 … … … … … … … … … [149/149] Linking C executable zephyr/zephyr.elf Memory region Used Size Region Size %age Used FLASH: 23968 B 2 MB 1.14% RAM: 4864 B 384 KB 1.24% QSPI_PLACEHOLDER: 0 GB 256 MB 0.00% SRAM0: 0 GB 384 KB 0.00% DTCM: 0 GB 128 KB 0.00% IDT_LIST: 0 GB 32 KB 0.00% Generating files from .../ws-bridle-4.0/build/led_blinky-magpie_f777ni/zephyr/zephyr.elf for board: magpie_f777ni
west flash -d build/led_blinky-magpie_f777ni
west build -p always -b magpie_f777ni -d build/helloshell-magpie_f777ni bridle/samples/helloshell
West build output for Bridle Hello Shell (click to expand or collapse)
-- west build: generating a build system Loading Zephyr default modules (Zephyr base). -- Application: .../ws-bridle-4.0/bridle/samples/helloshell -- CMake version: 3.28.3 Loading Bridle default modules (Bridle repository). -- Bridle version: 4.0.0-dev (.../ws-bridle-4.0/bridle) -- Found Python3: .../ws-bridle-4.0/.env/bin/python3.12 (found suitable version "3.12.11", minimum required is "3.10") found components: Interpreter -- Cache files will be written to: /home/user/.cache/zephyr -- [✓] Found toolchain: 0.17.0 (.../ws-bridle-4.0/zephyr-sdk) -- Zephyr version: 4.0.0-dev (.../ws-bridle-4.0/zephyr) -- Found west (found suitable version "1.3.0", minimum required is "0.14.0") -- Board: magpie_f777ni, qualifiers: stm32f777xx -- Found host-tools: zephyr 0.17.0 (.../ws-bridle-4.0/zephyr-sdk) -- Found toolchain: zephyr 0.17.0 (.../ws-bridle-4.0/zephyr-sdk) -- Found Dtc: .../ws-bridle-4.0/zephyr-sdk/sysroots/x86_64-pokysdk-linux/usr/bin/dtc (found suitable version "1.6.0", minimum required is "1.4.6") -- Found BOARD.dts: .../ws-bridle-4.0/bridle/boards/tiac/magpie_f777ni/magpie_f777ni.dts -- Generated zephyr.dts: .../ws-bridle-4.0/build/helloshell-magpie_f777ni/zephyr/zephyr.dts -- Generated pickled edt: .../ws-bridle-4.0/build/helloshell-magpie_f777ni/zephyr/edt.pickle -- Generated zephyr.dts: .../ws-bridle-4.0/build/helloshell-magpie_f777ni/zephyr/zephyr.dts -- Generated devicetree_generated.h: .../ws-bridle-4.0/build/helloshell-magpie_f777ni/zephyr/include/generated/zephyr/devicetree_generated.h -- Including generated dts.cmake file: .../ws-bridle-4.0/build/helloshell-magpie_f777ni/zephyr/dts.cmake Parsing .../ws-bridle-4.0/zephyr/Kconfig Loaded configuration '.../ws-bridle-4.0/bridle/boards/tiac/magpie_f777ni/magpie_f777ni_defconfig' Merged configuration '.../ws-bridle-4.0/bridle/samples/helloshell/prj.conf' Merged configuration '.../ws-bridle-4.0/bridle/samples/helloshell/boards/magpie_f777ni.conf' Configuration saved to '.../ws-bridle-4.0/build/helloshell-magpie_f777ni/zephyr/.config' Kconfig header saved to '.../ws-bridle-4.0/build/helloshell-magpie_f777ni/zephyr/include/generated/zephyr/autoconf.h' -- Found GnuLd: .../ws-bridle-4.0/zephyr-sdk/arm-zephyr-eabi/arm-zephyr-eabi/bin/ld.bfd (found version "2.38") -- The C compiler identification is GNU 12.2.0 -- The CXX compiler identification is GNU 12.2.0 -- The ASM compiler identification is GNU -- Found assembler: .../ws-bridle-4.0/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc --------------------------------------------------------------------- --- NOTICE: Unofficially supported SoC stm32f777xx will be used, --- --- relying on upstream startup and initialization code in: --- --- zephyr/soc/st/stm32 and zephyr/soc/st/stm32/stm32f7x --- --------------------------------------------------------------------- -- Using ccache: /usr/bin/ccache -- Configuring done (7.9s) -- Generating done (0.1s) -- Build files have been written to: .../ws-bridle-4.0/build/helloshell-magpie_f777ni -- west build: building application [1/230] Preparing syscall dependency handling [2/230] Generating include/generated/zephyr/version.h -- Zephyr version: 4.0.0 (.../ws-bridle-4.0/zephyr), build: v4.0.0-137-g1bdea6d5cc5c [3/230] Generating ../../zephyr/include/generated/bridle/version.h -- Bridle version: 4.0.0-dev (.../ws-bridle-4.0/bridle), build: bridle-v4.0.0-3-gcda717986678 … … … … … … … … … [230/230] Linking C executable zephyr/zephyr.elf Memory region Used Size Region Size %age Used FLASH: 122112 B 2 MB 5.82% RAM: 29632 B 384 KB 7.54% QSPI_PLACEHOLDER: 0 GB 256 MB 0.00% SRAM0: 0 GB 384 KB 0.00% DTCM: 0 GB 128 KB 0.00% IDT_LIST: 0 GB 32 KB 0.00% Generating files from .../ws-bridle-4.0/build/helloshell-magpie_f777ni/zephyr/zephyr.elf for board: magpie_f777ni
west flash -d build/helloshell-magpie_f777ni