Skip to content

Commit 46049b5

Browse files
committed
Merge commit '307e809' into merge/template_307e809
Merge RD Template tip-of-main to update this reference design ahead of the Golioth Firmware SDK v0.18.0 release.
2 parents 36d191c + 307e809 commit 46049b5

23 files changed

+489
-164
lines changed

.github/workflows/build_zephyr.yml

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,15 @@ jobs:
4949
uses: actions/checkout@v4
5050
with:
5151
path: app
52+
53+
- name: Process Board name
54+
id: nicename
55+
shell: bash
56+
run: |
57+
BOARD_NICENAME=${{ inputs.BOARD }}
58+
BOARD_NICENAME=${BOARD_NICENAME//\//_}
59+
echo "BOARD_NICENAME=${BOARD_NICENAME}" >> $GITHUB_OUTPUT
60+
5261
- name: Setup West workspace
5362
run: |
5463
west init -l app
@@ -60,23 +69,24 @@ jobs:
6069
6170
- name: Build with West
6271
run: |
63-
west build -p -b ${{ inputs.BOARD }} app
72+
west build -p -b ${{ inputs.BOARD }} --sysbuild app
6473
6574
- name: Prepare artifacts
75+
shell: bash
6676
if: inputs.ARTIFACT == true && inputs.TAG != ''
6777

6878
run: |
69-
cd build/zephyr
79+
cd build
7080
mkdir -p artifacts
71-
mv merged.hex ./artifacts/golioth-${{ github.event.repository.name }}_${{ inputs.TAG }}_${{ inputs.BOARD }}_full.hex
72-
mv app_update.bin ./artifacts/golioth-${{ github.event.repository.name }}_${{ inputs.TAG }}_${{ inputs.BOARD }}_update.bin
73-
mv zephyr.elf ./artifacts/golioth-${{ github.event.repository.name }}_${{ inputs.TAG }}_${{ inputs.BOARD }}.elf
81+
mv merged.hex ./artifacts/modbus_${{ inputs.TAG }}_${{ steps.nicename.outputs.BOARD_NICENAME }}_full.hex
82+
mv app/zephyr/zephyr.signed.bin ./artifacts/modbus_${{ inputs.TAG }}_${{ steps.nicename.outputs.BOARD_NICENAME }}_update.bin
83+
mv app/zephyr/zephyr.elf ./artifacts/modbus_${{ inputs.TAG }}_${{ steps.nicename.outputs.BOARD_NICENAME }}.elf
7484
7585
# Run IDs are unique per repo but are reused on re-runs
7686
- name: Save artifact
7787
if: inputs.ARTIFACT == true
78-
uses: actions/upload-artifact@v3
88+
uses: actions/upload-artifact@v4
7989
with:
80-
name: build_artifacts_${{ github.run_id }}
90+
name: build_artifacts_${{ github.run_id }}_${{ steps.nicename.outputs.BOARD_NICENAME }}
8191
path: |
82-
build/zephyr/artifacts/*
92+
build/artifacts/*

.github/workflows/release.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,15 @@ on:
99
version:
1010
description: 'Release Version.'
1111
required: true
12-
default: 'v0.0.0'
12+
default: 'template_v0.0.0'
1313
type: string
1414

1515
jobs:
1616
build-binaries:
1717
strategy:
1818
matrix:
1919
ZEPHYR_SDK: [0.16.3]
20-
BOARD: ["nrf9160dk_nrf9160_ns","aludel_mini_v1_sparkfun9160_ns"]
20+
BOARD: ["nrf9160dk/nrf9160/ns","aludel_mini/nrf9160/ns","aludel_elixir/nrf9160/ns"]
2121

2222
uses: ./.github/workflows/build_zephyr.yml
2323
with:
@@ -36,10 +36,11 @@ jobs:
3636
uses: actions/checkout@v4
3737

3838
- name: Download artifact
39-
uses: actions/download-artifact@v3
39+
uses: actions/download-artifact@v4
4040
with:
41-
name: build_artifacts_${{ github.run_id }}
41+
pattern: build_artifacts_*
4242
path: ~/artifacts
43+
merge-multiple: true
4344

4445
- name: Create Release manually with GH CLI
4546
run: gh release create --title ${{ inputs.version }} --draft ${{ inputs.version }}

.github/workflows/test.yml

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,30 @@
11
# Copyright (c) 2023 Golioth, Inc.
22
# SPDX-License-Identifier: Apache-2.0
33

4-
name: Test firmware
4+
name: Test firmware
55

66
on:
77
pull_request:
88

99
push:
10+
branches: [ main ]
1011

1112
jobs:
12-
test_build:
13+
test_build_nrf9160dk:
1314
uses: ./.github/workflows/build_zephyr.yml
1415
with:
1516
ZEPHYR_SDK: 0.16.3
16-
BOARD: aludel_mini_v1_sparkfun9160_ns
17-
ARTIFACT: false
17+
BOARD: nrf9160dk/nrf9160/ns
18+
ARTIFACT: false
19+
test_build_aludel_elixir:
20+
uses: ./.github/workflows/build_zephyr.yml
21+
with:
22+
ZEPHYR_SDK: 0.16.3
23+
BOARD: aludel_elixir/nrf9160/ns
24+
ARTIFACT: false
25+
test_build_aludel_mini:
26+
uses: ./.github/workflows/build_zephyr.yml
27+
with:
28+
ZEPHYR_SDK: 0.16.3
29+
BOARD: aludel_mini/nrf9160/ns
30+
ARTIFACT: false

README.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ images](https://github.com/golioth/reference-design-modbus-vibration-monitor/rel
2727
### Additional Sensors/Components
2828

2929
- Texas Instruments THVD1426 RS-485 transceiver
30+
- Banner QM30VT2 Banner Modbus temperature & vibration sensor
3031

3132
## Golioth Features
3233

@@ -123,7 +124,8 @@ the LightDB Stream service:
123124
{
124125
"sensor": {
125126
"temperature": {
126-
"celcius": 27.08
127+
"celcius": 21.96,
128+
"farenheight": 71.53
127129
},
128130
"x_axis": {
129131
"acceleration": {
@@ -294,7 +296,9 @@ folder. The `build` and `deps` directories being one level higher
294296
prevents the repo from cataloging all of the changes to the dependencies
295297
and the build (so no `.gitignore` is needed).
296298

297-
### Use `west` to initialize the workspace and install dependencies
299+
Prior to building, update `VERSION` file to reflect the firmware version
300+
number you want to assign to this build. Then run the following commands
301+
to build and program the firmware onto the device.
298302

299303
> [!WARNING]
300304
> You must perform a pristine build (use `-p` or remove the `build`

VERSION

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
VERSION_MAJOR = 1
2+
VERSION_MINOR = 0
3+
PATCHLEVEL = 0
4+
VERSION_TWEAK = 0
5+
EXTRAVERSION =

boards/aludel_elixir_ns.conf

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,11 @@ CONFIG_NET_SOCKETS_TLS_PRIORITY=35
1818

1919
# Modem library
2020
CONFIG_NRF_MODEM_LIB=y
21-
CONFIG_NRF_MODEM_LIB_ON_FAULT_APPLICATION_SPECIFIC=y
2221

2322
# LTE connectivity with network connection manager
24-
CONFIG_LTE_CONNECTIVITY=y
25-
CONFIG_LTE_CONNECTIVITY_AUTO_CONNECT=n
23+
CONFIG_NRF_MODEM_LIB_NET_IF=y
24+
CONFIG_NRF_MODEM_LIB_NET_IF_AUTO_START=y
25+
CONFIG_NRF_MODEM_LIB_NET_IF_AUTO_CONNECT=n
2626
CONFIG_NET_CONNECTION_MANAGER=y
2727
CONFIG_NET_CONNECTION_MANAGER_MONITOR_STACK_SIZE=1024
2828

@@ -33,6 +33,12 @@ CONFIG_GOLIOTH_SAMPLE_NRF91_LTE_MONITOR=y
3333
CONFIG_MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED=n
3434
CONFIG_MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED=n
3535

36+
# MbedTLS configuration to support p-384 curve. These options
37+
# enable using the MbedTLS built-in support for operations not
38+
# supported by the default nRF Oberon crypto backend
39+
CONFIG_NORDIC_SECURITY_BACKEND=n
40+
CONFIG_MBEDTLS_LEGACY_CRYPTO_C=y
41+
3642
# Add Network Info Support
3743
CONFIG_MODEM_INFO=y
3844

@@ -41,3 +47,5 @@ CONFIG_BOOTLOADER_MCUBOOT=y
4147

4248
# Use Golioth Ostentus Faceplate
4349
CONFIG_LIB_OSTENTUS=y
50+
51+
CONFIG_REGULATOR=y
Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,19 @@
1010
};
1111
};
1212

13+
&i2c2 {
14+
status = "okay";
15+
16+
/* Needed for I2C writes used by libostentus */
17+
zephyr,concat-buf-size = <48>;
18+
19+
ostentus@12 {
20+
status = "okay";
21+
compatible = "golioth,ostentus";
22+
reg = <0x12>;
23+
};
24+
};
25+
1326
&mikrobus_serial {
1427
status = "okay";
1528

@@ -18,7 +31,3 @@
1831
status = "okay";
1932
};
2033
};
21-
22-
&qwiic_i2c {
23-
status = "okay";
24-
};

boards/aludel_elixir_ns_A.overlay

Lines changed: 0 additions & 18 deletions
This file was deleted.

boards/aludel_mini_v1_sparkfun9160_ns.conf renamed to boards/aludel_mini_nrf9160_ns.conf

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,11 @@ CONFIG_NET_SOCKETS_TLS_PRIORITY=35
1818

1919
# Modem library
2020
CONFIG_NRF_MODEM_LIB=y
21-
CONFIG_NRF_MODEM_LIB_ON_FAULT_APPLICATION_SPECIFIC=y
2221

2322
# LTE connectivity with network connection manager
24-
CONFIG_LTE_CONNECTIVITY=y
25-
CONFIG_LTE_CONNECTIVITY_AUTO_CONNECT=n
23+
CONFIG_NRF_MODEM_LIB_NET_IF=y
24+
CONFIG_NRF_MODEM_LIB_NET_IF_AUTO_START=y
25+
CONFIG_NRF_MODEM_LIB_NET_IF_AUTO_CONNECT=n
2626
CONFIG_NET_CONNECTION_MANAGER=y
2727
CONFIG_NET_CONNECTION_MANAGER_MONITOR_STACK_SIZE=1024
2828

@@ -33,6 +33,12 @@ CONFIG_GOLIOTH_SAMPLE_NRF91_LTE_MONITOR=y
3333
CONFIG_MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED=n
3434
CONFIG_MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED=n
3535

36+
# MbedTLS configuration to support p-384 curve. These options
37+
# enable using the MbedTLS built-in support for operations not
38+
# supported by the default nRF Oberon crypto backend
39+
CONFIG_NORDIC_SECURITY_BACKEND=n
40+
CONFIG_MBEDTLS_LEGACY_CRYPTO_C=y
41+
3642
# Battery Support
3743
CONFIG_ALUDEL_BATTERY_MONITOR=y
3844

@@ -41,6 +47,3 @@ CONFIG_MODEM_INFO=y
4147

4248
# Generate MCUboot compatible images
4349
CONFIG_BOOTLOADER_MCUBOOT=y
44-
45-
# Use Golioth Ostentus Faceplate
46-
CONFIG_LIB_OSTENTUS=y

boards/aludel_mini_v1_sparkfun9160_ns.overlay renamed to boards/aludel_mini_nrf9160_ns.overlay

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,21 @@
66

77
/ {
88
zephyr,user {
9-
rs485-8-click-en-gpios = <&mikrobus_header_1 1 GPIO_ACTIVE_HIGH>;
9+
rs485-8-click-en-gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
1010
};
1111
};
1212

13+
&i2c2 {
14+
/* Needed for I2C writes used by libostentus */
15+
zephyr,concat-buf-size = <48>;
16+
17+
ostentus@12 {
18+
status = "okay";
19+
compatible = "golioth,ostentus";
20+
reg = <0x12>;
21+
};
22+
};
23+
1324
/* On this board, mikrobus_spi == spi2 & mikrobus_serial == uart2, and a
1425
* limitation of the nRF9160 is that both can't be enabled simultaneously.
1526
* On this board, mikrobus_spi is enabled by default and mikrobus_serial is

0 commit comments

Comments
 (0)