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

Update README.md to reflect windows support #183

Merged
merged 4 commits into from
Jan 11, 2025
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
1 change: 1 addition & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
./outputs
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ RUN apt-get update && apt-get install -y \
# add all buildroot files there
WORKDIR /home/odysseus/build

RUN git clone https://gitlab.com/buildroot.org/buildroot.git && cd ./buildroot && git checkout 2024.08.1
RUN git clone https://gitlab.com/buildroot.org/buildroot.git && cd ./buildroot && git checkout 2024.11.1


WORKDIR /home/odysseus/outputs/
Expand Down
21 changes: 12 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ Siren is our [pub/sub](https://www.stackpath.com/edge-academy/what-is-pub-sub-me
For information about MQTT, check out [this confluence page](https://nerdocs.atlassian.net/wiki/spaces/NER/pages/173113345/Delving+into+MQTT).

### Running with Docker
Custom image coming soon. For now, you can run with the instructions in the `extra/mosquitto_base` folder, and to achieve in-car configuration use the image but substitute the configurations with those found in the buildroot rootfs overlay for the TPU.
Custom image coming soon. For now, you can run with the instructions in the `extra/mosquitto_base` folder, and to achieve in-car configuration use the image but substitute the configurations with those found in the buildroot rootfs overlay for the TPU. More developer side Siren usage is found in the Argos repository.

### Local Setup
Docker is easiest, commands are in `extra/mosquitto_base`. If you would like to install locally, visit the mosquitto website to learn more.
Expand Down Expand Up @@ -52,32 +52,35 @@ All defconfigs come with (in addition to busybox and util_linux utilities):
- iperf3, iw, iputils, and other network configuration utilities

## Quick start
Download and install to PATH git and docker. Docker desktop is recommended for macOS and Windows.
Download and install to PATH git and docker. Docker desktop is required for macOS and Windows. Windows users must use WSL, and have WSL integration enabled in Docker Desktop --> Settings --> Resources --> WSL Integration --> Ubuntu (or other).
Then follow these steps in the terminal (WSL users must not be in the mnt/c directory!).
All platforms:
```
git clone https://github.com/Northeastern-Electric-Racing/Oydsseus.git
git clone https://github.com/Northeastern-Electric-Racing/Odysseus.git # or use SSH if configured
cd ./Odysseus
git submodule update --init --recursive
```

For linux (current support includes all build defconfigs):
Now launch the docker command line for Odysseus:

For Linux and WSL:
```
docker compose run --rm odysseus
```

For mac and windows: (current support includes all _debug defconfigs, on x86_64 host normal defconfigs can work (experimental)):
For mac: (experimental, limited):
```
docker compose -f "compose-compat.yml" run --rm --build odysseus # Future launches can omit `--build` for time savings and space savings, but it should be used if the Dockerfile or docker_out_of_tree.sh files change.
```



Now you are in the docker container. To build cd into the defconfig directory (either ap, or tpu), then run the make command alias:
Now you are in the docker container. To build cd into the defconfig directory (ap, tpu, etc), then run the make command alias:
```
cd ./<defconfig>
make-current
```

**Note: If failure occurs on mac or windows very early in the process, run `make nanomq-source` and try again before reporting the error.**
**Note: If failure occurs very early in the process, run `make nanomq-source` and try again before reporting the error.**
You can view the `output.log` for more info.

### More on docker configuration
Expand All @@ -93,7 +96,7 @@ The container has a directory structure as so:
### Extra docker tips
All paths relative to Siren root.

#### Note for Windows/macOS users
#### Note for macOS users
The outputs are stored in a docker volume on these platforms to ensure rsync compatability. Therefore fetching the files requires first running the image, then use `docker cp` to get them to the userspace. Alternatively, docker desktop has a file explorer for docker volumes that may come in handy.

#### Writing the sd card
Expand Down
1 change: 1 addition & 0 deletions odysseus_tree/configs/raspberrypi4_64_ap_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="2G"
# BR2_TARGET_ROOTFS_TAR is not set
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_GO_BIN=y
BR2_PACKAGE_HOST_KMOD_XZ=y
BR2_PACKAGE_HOST_MTOOLS=y
BR2_PACKAGE_NRC7292=y
Expand Down
1 change: 1 addition & 0 deletions odysseus_tree/configs/raspberrypi4_64_tpu_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,7 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="4G"
# BR2_TARGET_ROOTFS_TAR is not set
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_GO_BIN=y
BR2_PACKAGE_HOST_KMOD_XZ=y
BR2_PACKAGE_HOST_MTOOLS=y
BR2_PACKAGE_HOST_PYTHON3=y
Expand Down
Loading