Skip to content
Closed
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
31 changes: 11 additions & 20 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,23 +17,22 @@ jobs:
fail-fast: false
matrix:
include:
- manifest: ncs-serial-modem/west.yml
target: thingy91x/nrf9151/ns
app: ncs-serial-modem
sysbuild: true
- manifest: west-ncs.yml
target: nrf9160dk/nrf9160/ns
target: thingy91x/nrf5340/cpuapp
app: gateway
sysbuild: true
- manifest: ncs-serial-modem/west.yml
target: nrf9160dk/nrf9160/ns
app: ncs-serial-modem
sysbuild: true
- manifest: west-ncs.yml
target: nrf9160dk/nrf52840
app: controller
sysbuild: false
- manifest: west-ncs.yml
target: thingy91x/nrf9151/ns
app: gateway
sysbuild: true
- manifest: west-thingy91x-controller.yml
target: thingy91x/nrf5340/cpunet
app: controller
sysbuild: true
extra_args: -DSB_CONF_FILE=sysbuild/nrf5340_cpuapp.conf
- manifest: west-zephyr.yml
target: frdm_rw612
artifact_suffix: -ethernet
Expand Down Expand Up @@ -74,11 +73,6 @@ jobs:
git config --global user.name "Git User"
west patch apply || true

- name: Manual Patch
if: ${{ matrix.manifest == 'west-thingy91x-controller.yml' }}
run: |
west forall zephyr -c "git am $GITHUB_WORKSPACE/pouch-gateway/zephyr/patches/thingy91x-controller/zephyr/*.patch"

- name: Install pip packages
run: |
uv pip install \
Expand Down Expand Up @@ -121,8 +115,5 @@ jobs:
build/${{ matrix.sysbuild && matrix.app || '' }}/zephyr/zephyr.hex
build/${{ matrix.sysbuild && matrix.app || '' }}/zephyr/zephyr.elf
build/${{ matrix.sysbuild && matrix.app || '' }}/zephyr/zephyr.map
${{ ((matrix.manifest == 'west-ncs.yml') && 'build/merged.hex') || '' }}
${{ ((matrix.manifest == 'west-thingy91x-controller.yml') && 'build/merged.hex') || '' }}
${{ ((matrix.manifest == 'west-thingy91x-controller.yml') && 'build/merged_CPUAPP.hex') || '' }}
${{ ((matrix.manifest == 'west-thingy91x-controller.yml') && 'build/empty_app_core/zephyr/zephyr.elf') || '' }}
${{ (matrix.sysbuild && (matrix.manifest == 'west-ncs.yml') && 'build/dfu_application.zip') || '' }}
${{ ((matrix.manifest != 'west-zephyr.yml') && 'build/merged.hex') || '' }}
${{ (matrix.sysbuild && (matrix.manifest != 'west-zephyr.yml') && 'build/dfu_application.zip') || '' }}
32 changes: 14 additions & 18 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,28 +26,24 @@ jobs:
run: |
mkdir -p release

mv artifacts/gateway-nrf9160dk-nrf9160-ns/merged.hex \
mv artifacts/ncs-serial-modem-thingy91x-nrf9151-ns/merged.hex \
release/thingy91x_nrf9151.hex
mv artifacts/ncs-serial-modem-thingy91x-nrf9151-ns/ncs-serial-modem/zephyr/zephyr.elf \
release/thingy91x_nrf9151.elf
mv artifacts/gateway-thingy91x-nrf5340-cpuapp/merged.hex \
release/thingy91x_nrf5340.hex
mv artifacts/gateway-thingy91x-nrf5340-cpuapp/gateway/zephyr/zephyr.elf \
release/thingy91x_nrf5340.elf

mv artifacts/ncs-serial-modem-nrf9160dk-nrf9160-ns/merged.hex \
release/nrf9160dk_nrf9160.hex
mv artifacts/gateway-nrf9160dk-nrf9160-ns/gateway/zephyr/zephyr.elf \
release/nrf9160dk_nrf9160_ns.elf
mv artifacts/controller-nrf9160dk-nrf52840/zephyr/zephyr.hex \
mv artifacts/ncs-serial-modem-nrf9160dk-nrf9160-ns/ncs-serial-modem/zephyr/zephyr.elf \
release/nrf9160dk_nrf9160.elf
mv artifacts/gateway-nrf9160dk-nrf52840/merged.hex \
release/nrf9160dk_nrf52840.hex
mv artifacts/controller-nrf9160dk-nrf52840/zephyr/zephyr.elf \
mv artifacts/gateway-nrf9160dk-nrf52840/gateway/zephyr/zephyr.elf \
release/nrf9160dk_nrf52840.elf

mv artifacts/gateway-thingy91x-nrf9151-ns/merged.hex \
release/thingy91x_nrf9151.hex
mv artifacts/gateway-thingy91x-nrf9151-ns/gateway/zephyr/zephyr.elf \
release/thingy91x_nrf9151_ns.elf
mv artifacts/controller-thingy91x-nrf5340-cpunet/merged_CPUAPP.hex \
release/thingy91x_nrf5340_cpuapp.hex
mv artifacts/controller-thingy91x-nrf5340-cpunet/empty_app_core/zephyr/zephyr.elf \
release/thingy91x_nrf5340_cpuapp.elf
mv artifacts/controller-thingy91x-nrf5340-cpunet/merged.hex \
release/thingy91x_nrf5340_cpunet.hex
mv artifacts/controller-thingy91x-nrf5340-cpunet/controller/zephyr/zephyr.elf \
release/thingy91x_nrf5340_cpunet.elf

mv artifacts/gateway-frdm_rw612-ethernet/zephyr.hex \
release/frdm_rw612-ethernet.hex
mv artifacts/gateway-frdm_rw612-ethernet/zephyr.elf \
Expand Down
93 changes: 45 additions & 48 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,25 +76,23 @@ recommend using these binaries as the fastest way to get started.
1. Install the
[`nrfutil`](https://www.nordicsemi.com/Products/Development-tools/nRF-Util)
CLI tool.
2. Program the nRF5340 Bluetooth Controller Firmware
2. Program the nRF9151 Serial Modem Firmware

a. Position the SWD selection switch (`SW2`) to `nRF53`
a. Position the SWD selection switch (`SW2`) to `nRF91`

b. Issue the following command to program the `app` core:
```
nrfutil device program --firmware thingy91x_nrf5340_cpuapp.hex --x-family nrf53 --core application
b. Issue the following command:
```
c. Issue the following command to program the `net` core:
nrfutil device program --firmware thingy91x_nrf9151.hex --x-family nrf91
```
nrfutil device program --firmware thingy91x_nrf5340_cpunet.hex --x-family nrf53 --core network
3. Program the nRF9151 Gateway Firmware

3. Program the nRF5340 Gateway Firmware

a. Power cycle the device and position the SWD selection switch (`SW2`) to
`nRF91`
`nRF53`

b. Issue the following command:
```
nrfutil device program --firmware thingy91x_nrf9151.hex --x-family nrf91
nrfutil device program --firmware thingy91x_nrf5340.hex --x-family nrf53 --core application
```

</details>
Expand All @@ -106,22 +104,23 @@ CLI tool.
1. Install the
[`nrfutil`](https://www.nordicsemi.com/Products/Development-tools/nRF-Util)
CLI tool.
2. Program the nRF52840 Bluetooth Controller Firmware
2. Program the nRF9160 Serial Modem Firmware

a. Position the SWD selection switch (`SW10`) to `nRF52`
a. Position the SWD selection switch (`SW10`) to `nRF91`

b. Issue the following command:
```
nrfutil device program --firmware nrf9160dk_nrf52840.hex --x-family nrf52
nrfutil device program --firmware nrf9160dk_nrf9160.hex --x-family nrf91
```
3. Program the nRF9160 Gateway Firmware

3. Program the nRF52840 Gateway Firmware

a. Power cycle the device and position the SWD selection switch (`SW10`) to
`nRF91`
`nRF52`

b. Issue the following command:
```
nrfutil device program --firmware nrf9160dk_nrf9160.hex --x-family nrf91
nrfutil device program --firmware nrf9160dk_nrf52840.hex --x-family nrf52
```

</details>
Expand Down Expand Up @@ -179,57 +178,55 @@ west patch apply

#### Thingy:91 X

Controller on nRF5340 NET core does not work yet with newest NCS
version (for unknown reason yet), so it is required to use older version
of NCS which is specified in `west-thingy91x-controller.yml`. In order
to checkout proper revision and apply required patches type:

```
west config manifest.file west-thingy91x-controller.yml && west update
west forall zephyr -c "git am $(west topdir)/pouch-gateway/zephyr/patches/thingy91x-controller/zephyr/*.patch"
```

Bluetooth controller is running on the nRF5340 NET core. This means that proper
firmware needs to be flashed (HCI controller over UART) in order to
access Bluetooth from nRF9151 chip.

This is done by by changing `SWD` switch (`SW2`) from `nRF91` to `nRF53`
on Thingy, then building and flashing firmware with:
Serial modem firmware runs on the nRF9151 chip, providing LTE
connectivity to the gateway over UART. Switch to serial modem manifest,
build and flash by changing the `SWD` switch (`SW2`) to `nRF91`, then:

```
west build -p -b thingy91x/nrf5340/cpunet pouch-gateway/controller --sysbuild -- -DSB_CONF_FILE=sysbuild/nrf5340_cpuapp.conf
west config manifest.file ncs-serial-modem/west.yml
west update
west patch apply
west build -p -b thingy91x/nrf9151/ns pouch-gateway/ncs-serial-modem/
west flash
```

Gateway firmware runs on nRF9151 chip. There is direct access to LTE
modem and also Bluetooth Host stack, which communicates with Bluetooth
Controller over UART. Build and flash it with:
Gateway firmware runs on the nRF5340 chip. It runs the Bluetooth Host
stack and communicates with the nRF9151 serial modem over UART for
Internet access. Switch back to NCS manifest, build and flash by
changing the `SWD` switch (`SW2`) to `nRF53`, then:

```
west build -p -b thingy91x/nrf9151/ns pouch-gateway/gateway --sysbuild
west config manifest.file west-ncs.yml
west update
west patch apply
west build -p -b thingy91x/nrf5340/cpuapp --sysbuild pouch-gateway/gateway/
west flash
```

#### nRF9160 DK

Bluetooth controller is running on nRF52840. This means that proper
firmware needs to be flashed (HCI controller over UART) in order to
access Bluetooth from nRF9160 chip.

This is done by by changing `SWD` switch (`SW10`) from `nRF91` to
`nRF52` on development kit, then building and flashing firmware with:
Serial modem firmware runs on the nRF9160 chip, providing LTE
connectivity to the gateway over UART. Switch to serial modem manifest,
build and flash by changing the `SWD` switch (`SW10`) to `nRF91`, then:

```
west build -p -b nrf9160dk/nrf52840 pouch-gateway/controller
west config manifest.file ncs-serial-modem/west.yml
west update
west patch apply
west build -p -b nrf9160dk/nrf9160/ns pouch-gateway/ncs-serial-modem/
west flash
```

Gateway firmware runs on nRF9160 chip. There is direct access to LTE
modem and also Bluetooth Host stack, which communicats with Bluetooth
Controller over UART. Build and flash it with:
Gateway firmware runs on the nRF52840 chip. It runs the Bluetooth Host
stack and communicates with the nRF9160 serial modem over UART for
Internet access. Switch back to NCS manifest, build and flash by
changing the `SWD` switch (`SW10`) to `nRF52`, then:

```
west build -p -b nrf9160dk/nrf9160/ns pouch-gateway/gateway --sysbuild
west config manifest.file west-ncs.yml
west update
west patch apply
west build -p -b nrf9160dk/nrf52840 --sysbuild pouch-gateway/gateway/
west flash
```

Expand Down
17 changes: 0 additions & 17 deletions controller/CMakeLists.txt

This file was deleted.

8 changes: 0 additions & 8 deletions controller/boards/nrf52840dongle_nrf52840.conf

This file was deleted.

8 changes: 0 additions & 8 deletions controller/boards/nrf9160dk_nrf52840.conf

This file was deleted.

67 changes: 0 additions & 67 deletions controller/boards/nrf9160dk_nrf52840.overlay

This file was deleted.

4 changes: 0 additions & 4 deletions controller/boards/nrf9160dk_nrf52840_0_14_0.overlay

This file was deleted.

5 changes: 0 additions & 5 deletions controller/boards/thingy91x_nrf5340_cpunet.conf

This file was deleted.

Loading
Loading