-
Notifications
You must be signed in to change notification settings - Fork 4
Bridle v2.7
Release Notes : https://bridle.tiac-systems.net/doc/2.7/bridle/release_notes.html
Required Tools : https://bridle.tiac-systems.net/doc/2.7/bridle/gs_recommended_versions.html#required-tools
- Python 3.6 (tested 3.8.2 … 3.8.10)
- CMake 3.20.0 (tested 3.20.5 … 3.22.2)
- DTC 1.4.6 (1.4.7 … 1.6.0)
Installing Bridle manually : https://bridle.tiac-systems.net/doc/2.7/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-2.7 && cd ws-bridle-2.7 - Setup Python Virtual Environment for West
python3.8 -m venv --clear --copies --prompt="$(basename $(pwd))[$(python3.8 --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 v2.7-branch west update - Export a Zephyr CMake package
west zephyr-export - Installing all required Python dependencies
pip3 install --upgrade --requirement zephyr/scripts/requirements.txt pip3 install --upgrade --requirement bridle/scripts/requirements.txt
Warning
As of September 2025, the following defective dependency arises:
-
junit2html 30.1.6
drop support for jinja2<3.0 (97864794)
pip3 install --upgrade "junit2html<30.1.6" -
sphinx-notfound-page 1.0.0
drop support for Sphinx<5 (#220)
pip3 install --upgrade "sphinx-notfound-page<1.0.0" - Check PIP's dependency resolver again until comeback without defectives:
pip3 check || echo "FIXES NOT FINISHED"
Caution
Avoid installation in any global context, e.g. users home or /opt folder.
Minimal required versions of legacy tools are:
- CMake 3.20.0
- DTC 1.4.6 (under Linux provided by Zephyr SDK as 1.6.0)
- Zephyr SDK 0.13.1
-
Install the CMake into the always activated local Python Virtual Environment
pip3 install --upgrade "cmake>=3.20.0,<3.22.3" -
Install the Zephyr Software Development Kit (SDK) into the local workspace folder
wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.13.1/zephyr-sdk-0.13.1-linux-x86_64-setup.runchmod +x zephyr-sdk-0.13.1-linux-x86_64-setup.run ./zephyr-sdk-0.13.1-linux-x86_64-setup.run -- -norc -nocmake -y -d "$(pwd)/zephyr-sdk"Zephyr SDK installer output (click to expand or collapse)
Verifying archive integrity... 100% All good. Uncompressing SDK for Zephyr 100% It is recommended to install Zephyr SDK at one of the following locations for automatic discoverability in CMake: /home/user/zephyr-sdk-0.13.1 /opt/zephyr-sdk-0.13.1 Note: The version number '-0.13.1' can be omitted. md5sum is /usr/bin/md5sum Installing SDK to .../ws-bridle-2.7/zephyr-sdk Creating directory .../ws-bridle-2.7/zephyr-sdk Success [*] Installing arm tools... [*] Installing arm64 tools... [*] Installing arc tools... [*] Installing arc64 tools... [*] Installing nios2 tools... [*] Installing riscv64 tools... [*] Installing sparc tools... [*] Installing mips tools... [*] Installing x86_64 tools... [*] Installing xtensa_sample_controller tools... [*] Installing xtensa_intel_apl_adsp tools... [*] Installing xtensa_intel_s1000 tools... [*] Installing xtensa_intel_bdw_adsp tools... [*] Installing xtensa_intel_byt_adsp tools... [*] Installing xtensa_nxp_imx_adsp tools... [*] Installing xtensa_nxp_imx8m_adsp tools... [*] Installing CMake files... [*] Installing additional host tools... Success installing SDK. You need to setup the following environment variables to use the toolchain: export ZEPHYR_TOOLCHAIN_VARIANT=zephyr export ZEPHYR_SDK_INSTALL_DIR=.../ws-bridle-2.7/zephyr-sdk SDK is ready to be used.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 v2.7-branch origin/v2.7-branch
git -C zephyr checkout -b tiacsys/v2.7-branch origin/tiacsys/v2.7-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/v2.7-branch <--sync--> remote: origin/tiacsys/v2.7-branch local: v2.7-branch <--sync--> remote: origin/v2.7-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 v2.7-next origin/v2.7-next
git -C bridle track
(cd bridle && gitk --all) &
Git track output for Bridle (click to expand or collapse)
local: v2.7-branch <--sync--> remote: origin/v2.7-branch local: v2.7-next <--sync--> remote: origin/v2.7-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 STM32F777NIHx : https://bridle.tiac-systems.net/doc/2.7/bridle/boards/arm/tiac_magpie/doc/index.html
- https://bridle.tiac-systems.net/doc/2.7/bridle/boards/arm/tiac_magpie/doc/samples/basic/blinky.html
- https://bridle.tiac-systems.net/doc/2.7/bridle/boards/arm/tiac_magpie/doc/samples/basic/helloshell.html
west build -p always -b tiac_magpie -d build/led_blinky-tiac_magpie zephyr/samples/basic/blinky
West build output for Zephyr LED Blinky (click to expand or collapse)
-- west build: generating a build system Including boilerplate (Zephyr base): .../ws-bridle-2.7/zephyr/cmake/app/boilerplate.cmake -- Application: .../ws-bridle-2.7/zephyr/samples/basic/blinky -- Bridle version: 2.7.1 (.../ws-bridle-2.7/bridle) -- Zephyr version: 2.7.6 (.../ws-bridle-2.7/zephyr), build: v2.7.6-12-g756d7dec2ca0 -- Found Python3: .../ws-bridle-2.7/.env/bin/python3.8 (found suitable exact version "3.8.10") found components: Interpreter -- Found west (found suitable version "0.12.0", minimum required is "0.7.1") -- Board: tiac_magpie -- Cache files will be written to: /home/user/.cache/zephyr -- Found host-tools: zephyr 0.13.1 (.../ws-bridle-2.7/zephyr-sdk) -- Found dtc: .../ws-bridle-2.7/zephyr-sdk/sysroots/x86_64-pokysdk-linux/usr/bin/dtc (found suitable version "1.6.0", minimum required is "1.4.6") -- Found toolchain: zephyr 0.13.1 (.../ws-bridle-2.7/zephyr-sdk) -- Found BOARD.dts: .../ws-bridle-2.7/bridle/boards/arm/tiac_magpie/tiac_magpie.dts -- Generated zephyr.dts: .../ws-bridle-2.7/build/led_blinky-tiac_magpie/zephyr/zephyr.dts -- Generated devicetree_unfixed.h: .../ws-bridle-2.7/build/led_blinky-tiac_magpie/zephyr/include/generated/devicetree_unfixed.h -- Generated device_extern.h: .../ws-bridle-2.7/build/led_blinky-tiac_magpie/zephyr/include/generated/device_extern.h -- Including generated dts.cmake file: .../ws-bridle-2.7/build/led_blinky-tiac_magpie/zephyr/dts.cmake Parsing .../ws-bridle-2.7/zephyr/Kconfig Loaded configuration '.../ws-bridle-2.7/bridle/boards/arm/tiac_magpie/tiac_magpie_defconfig' Merged configuration '.../ws-bridle-2.7/zephyr/samples/basic/blinky/prj.conf' Configuration saved to '.../ws-bridle-2.7/build/led_blinky-tiac_magpie/zephyr/.config' Kconfig header saved to '.../ws-bridle-2.7/build/led_blinky-tiac_magpie/zephyr/include/generated/autoconf.h' -- The C compiler identification is GNU 10.3.0 -- The CXX compiler identification is GNU 10.3.0 -- The ASM compiler identification is GNU -- Found assembler: .../ws-bridle-2.7/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc -- Configuring done -- Generating done -- Build files have been written to: .../ws-bridle-2.7/build/led_blinky-tiac_magpie -- west build: building application [1/162] Preparing syscall dependency handling [2/162] Generating ../../zephyr/include/generated/version_bridle.h -- Bridle version: 2.7.1 (.../ws-bridle-2.7/bridle) … … … … … … … … … [162/162] Linking C executable zephyr/zephyr.elf Memory region Used Size Region Size %age Used FLASH: 22100 B 2 MB 1.05% SRAM: 4576 B 384 KB 1.16% DTCM: 0 GB 128 KB 0.00% IDT_LIST: 0 GB 2 KB 0.00%
west flash -d build/led_blinky-tiac_magpie
west build -p always -b tiac_magpie -d build/helloshell-tiac_magpie bridle/samples/helloshell
West build output for Bridle Hello Shell (click to expand or collapse)
-- west build: generating a build system Including boilerplate (Zephyr base): .../ws-bridle-2.7/zephyr/cmake/app/boilerplate.cmake -- Application: .../ws-bridle-2.7/bridle/samples/helloshell -- Bridle version: 2.7.1 (.../ws-bridle-2.7/bridle) -- Zephyr version: 2.7.6 (.../ws-bridle-2.7/zephyr), build: v2.7.6-12-g756d7dec2ca0 -- Found Python3: .../ws-bridle-2.7/.env/bin/python3.8 (found suitable exact version "3.8.10") found components: Interpreter -- Found west (found suitable version "0.12.0", minimum required is "0.7.1") -- Board: tiac_magpie -- Cache files will be written to: /home/user/.cache/zephyr -- Found host-tools: zephyr 0.13.1 (.../ws-bridle-2.7/zephyr-sdk) -- Found dtc: .../ws-bridle-2.7/zephyr-sdk/sysroots/x86_64-pokysdk-linux/usr/bin/dtc (found suitable version "1.6.0", minimum required is "1.4.6") -- Found toolchain: zephyr 0.13.1 (.../ws-bridle-2.7/zephyr-sdk) -- Found BOARD.dts: .../ws-bridle-2.7/bridle/boards/arm/tiac_magpie/tiac_magpie.dts -- Generated zephyr.dts: .../ws-bridle-2.7/build/helloshell-tiac_magpie/zephyr/zephyr.dts -- Generated devicetree_unfixed.h: .../ws-bridle-2.7/build/helloshell-tiac_magpie/zephyr/include/generated/devicetree_unfixed.h -- Generated device_extern.h: .../ws-bridle-2.7/build/helloshell-tiac_magpie/zephyr/include/generated/device_extern.h -- Including generated dts.cmake file: .../ws-bridle-2.7/build/helloshell-tiac_magpie/zephyr/dts.cmake Parsing .../ws-bridle-2.7/zephyr/Kconfig Loaded configuration '.../ws-bridle-2.7/bridle/boards/arm/tiac_magpie/tiac_magpie_defconfig' Merged configuration '.../ws-bridle-2.7/bridle/samples/helloshell/prj.conf' Configuration saved to '.../ws-bridle-2.7/build/helloshell-tiac_magpie/zephyr/.config' Kconfig header saved to '.../ws-bridle-2.7/build/helloshell-tiac_magpie/zephyr/include/generated/autoconf.h' -- The C compiler identification is GNU 10.3.0 -- The CXX compiler identification is GNU 10.3.0 -- The ASM compiler identification is GNU -- Found assembler: .../ws-bridle-2.7/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc -- Configuring done -- Generating done -- Build files have been written to: .../ws-bridle-2.7/build/helloshell-tiac_magpie -- west build: building application [1/209] Preparing syscall dependency handling [2/209] Generating ../../zephyr/include/generated/version_bridle.h -- Bridle version: 2.7.1 (.../ws-bridle-2.7/bridle) … … … … … … … … … [209/209] Linking C executable zephyr/zephyr.elf Memory region Used Size Region Size %age Used FLASH: 77968 B 2 MB 3.72% SRAM: 17048 B 384 KB 4.34% DTCM: 0 GB 128 KB 0.00% IDT_LIST: 0 GB 2 KB 0.00%
west flash -d build/helloshell-tiac_magpie