Vendor BrainStem Linux SDK tarball and document unpack/build
Track only the official .tgz under brainstem_sdk/; ignore extracted trees. Add docs/brainstem-sdk.md with untar steps, udev, C++ examples, and Reflex/arc notes. Made-with: Cursor
This commit is contained in:
parent
442774b976
commit
0b4de5ba67
|
|
@ -0,0 +1,4 @@
|
|||
# Only the upstream `brainstem_sdk_*.tgz` is tracked. Extracted trees stay local.
|
||||
/*
|
||||
!/.gitignore
|
||||
!/*.tgz
|
||||
Binary file not shown.
|
|
@ -0,0 +1,66 @@
|
|||
# BrainStem SDK tarball in this repo
|
||||
|
||||
The repository vendors **one file** under `brainstem_sdk/`: the Acroname **Linux** SDK archive, for example:
|
||||
|
||||
`brainstem_sdk/brainstem_sdk_2.12.2_RHEL_9_x86_64.tgz`
|
||||
|
||||
That archive matches **RHEL 9 / compatible distros** on **x86_64**. It is the **driverless** bundle (API, examples, small CLI tools, udev helper). It does **not** replace `pip install brainstem` for Python; it adds headers, examples, and native utilities next to the tree.
|
||||
|
||||
## Extract the archive
|
||||
|
||||
From the repository root:
|
||||
|
||||
```bash
|
||||
cd brainstem_sdk
|
||||
tar -xzf brainstem_sdk_2.12.2_RHEL_9_x86_64.tgz
|
||||
```
|
||||
|
||||
The tarball unpacks **into the current directory** (top-level entries: `api/`, `cli/`, `docs/`, `linux_brainstem_driverless/`, plus `license.txt`, `readme.txt`, `version.txt`). To avoid unpacking next to the `.tgz`, use a subdirectory:
|
||||
|
||||
```bash
|
||||
mkdir -p brainstem_sdk/unpacked && cd brainstem_sdk/unpacked
|
||||
tar -xzf ../brainstem_sdk_2.12.2_RHEL_9_x86_64.tgz
|
||||
```
|
||||
|
||||
If you use `unpacked/`, set `BRAINSTEM2_DEV_ROOT` to the directory that contains `api/` after extract (for example `…/brainstem_sdk/unpacked`). FiWi’s default repo-local search only looks at `brainstem_sdk/` and `brainstem_sdk/BrainStem2/`, not `unpacked/`, without that variable.
|
||||
|
||||
## Device access (udev)
|
||||
|
||||
Before talking to hardware over USB, run the script described in `readme.txt` inside the extracted tree:
|
||||
|
||||
```bash
|
||||
./linux_brainstem_driverless/udev.sh
|
||||
```
|
||||
|
||||
That installs udev rules (typically requires `sudo`) and adds the current user to `dialout`. Reboot or re-login as the vendor readme recommends.
|
||||
|
||||
## Build C/C++ examples from source
|
||||
|
||||
Sample projects live under `api/examples/c_cpp/`. Each example includes `How_To_Build.txt` or `How_to_Build.txt` with Acroname’s steps. In general:
|
||||
|
||||
1. Open that file in the example directory you care about.
|
||||
2. Copy the **`lib`** directory from the SDK into the example tree where the readme says (headers and `BrainStem2` shared library).
|
||||
3. Run `make` (or follow the makefile targets documented there).
|
||||
|
||||
You need a normal Linux C/C++ toolchain (`gcc`, `g++`, `make`) and any extra packages the example readme mentions.
|
||||
|
||||
## Reflex (`.reflex` → `.map`) and `arc`
|
||||
|
||||
FiWi can invoke Acroname’s **Reflex compiler** `arc` via `python3 fiwi.py reflex compile …`. The **`arc`** binary is **not** shipped in this driverless `.tgz` listing (no `bin/arc` in the archive). Install the **BrainStem Development Kit** build that includes Reflex tooling, or set `FIWI_REFLEX_ARC` to a full path when you have `arc` elsewhere.
|
||||
|
||||
Details and download pointer:
|
||||
|
||||
```bash
|
||||
python3 fiwi.py reflex help
|
||||
python3 fiwi.py reflex which
|
||||
```
|
||||
|
||||
Useful environment variables (also in `fiwi reflex help`):
|
||||
|
||||
- `BRAINSTEM2_DEV_ROOT` — root of an extracted kit (FiWi looks for `bin/arc`, `api/lib/BrainStem2`, etc.).
|
||||
- `FIWI_REFLEX_ARC` — explicit path to `arc`.
|
||||
- `FIWI_REFLEX_INCLUDE` — extra `-I` directories for `*.reflex` API headers if your layout is nonstandard.
|
||||
|
||||
## Qt / HubTool
|
||||
|
||||
`readme.txt` in the bundle notes that **HubTool** needs Qt packages on Linux. Install the distro-specific packages listed there if you use HubTool from Acroname’s full kit.
|
||||
Loading…
Reference in New Issue