Skip to content

Commit 88068e0

Browse files
committed
ledmatrix: Build separate EVT version
Signed-off-by: Daniel Schaefer <[email protected]>
1 parent 27978ef commit 88068e0

File tree

4 files changed

+58
-10
lines changed

4 files changed

+58
-10
lines changed

.github/workflows/firmware.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ jobs:
3636
- run: cargo make --cwd c1minimal
3737
- run: cargo make --cwd ledmatrix build-release
3838
- run: cargo make --cwd ledmatrix build-release-10k
39+
- run: cargo make --cwd ledmatrix build-release-evt
3940
- run: cargo make --cwd b1display build-release
4041
- run: cargo make --cwd c1minimal build-release
4142

@@ -46,6 +47,7 @@ jobs:
4647
cargo make --cwd b1display uf2
4748
cargo make --cwd c1minimal uf2
4849
cargo make --cwd ledmatrix build-release-10k-uf2
50+
cargo make --cwd ledmatrix build-release-evt-uf2
4951
cargo make --cwd ledmatrix uf2
5052
5153
- name: Convert to bin format
@@ -64,6 +66,7 @@ jobs:
6466
ledmatrix.bin
6567
ledmatrix.uf2
6668
ledmatrix_10k.uf2
69+
ledmatrix_evt.uf2
6770
6871
- name: Upload b1display files
6972
uses: actions/upload-artifact@v3

ledmatrix/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ version = "0.1.7-pre"
55

66
[features]
77
10k = []
8+
evt = []
89

910
[dependencies]
1011
cortex-m.workspace = true

ledmatrix/Makefile.toml

Lines changed: 40 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,58 @@
11
extend = "../Makefile.toml"
22

3+
[tasks.build-release-evt]
4+
command = "cargo"
5+
args = [
6+
"build",
7+
"--target=thumbv6m-none-eabi",
8+
"--release",
9+
"--features",
10+
"evt",
11+
]
12+
13+
[tasks.build-release-evt-uf2]
14+
command = "elf2uf2-rs"
15+
args = [
16+
"../target/thumbv6m-none-eabi/release/ledmatrix",
17+
"../target/thumbv6m-none-eabi/release/ledmatrix_evt.uf2",
18+
]
19+
dependencies = ["build-release-evt"]
20+
install_crate = "elf2uf2-rs"
21+
322
[tasks.build-release-10k]
423
command = "cargo"
5-
args = ["build", "--target=thumbv6m-none-eabi", "--release", "--features", "10k"]
24+
args = [
25+
"build",
26+
"--target=thumbv6m-none-eabi",
27+
"--release",
28+
"--features",
29+
"10k",
30+
"evt",
31+
]
632

733
[tasks.build-release-10k-uf2]
834
command = "elf2uf2-rs"
9-
args = ["../target/thumbv6m-none-eabi/release/ledmatrix", "../target/thumbv6m-none-eabi/release/ledmatrix_10k.uf2"]
35+
args = [
36+
"../target/thumbv6m-none-eabi/release/ledmatrix",
37+
"../target/thumbv6m-none-eabi/release/ledmatrix_10k.uf2",
38+
]
1039
dependencies = ["build-release-10k"]
1140
install_crate = "elf2uf2-rs"
1241

1342
[tasks.uf2]
1443
command = "elf2uf2-rs"
15-
args = ["../target/thumbv6m-none-eabi/release/ledmatrix", "../target/thumbv6m-none-eabi/release/ledmatrix.uf2"]
44+
args = [
45+
"../target/thumbv6m-none-eabi/release/ledmatrix",
46+
"../target/thumbv6m-none-eabi/release/ledmatrix.uf2",
47+
]
1648
dependencies = ["build-release"]
1749
install_crate = "elf2uf2-rs"
1850

1951
[tasks.bin]
2052
command = "llvm-objcopy"
21-
args = ["-Obinary", "../target/thumbv6m-none-eabi/release/ledmatrix", "../target/thumbv6m-none-eabi/release/ledmatrix.bin"]
53+
args = [
54+
"-Obinary",
55+
"../target/thumbv6m-none-eabi/release/ledmatrix",
56+
"../target/thumbv6m-none-eabi/release/ledmatrix.bin",
57+
]
2258
dependencies = ["build-release"]

ledmatrix/src/main.rs

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,11 @@ const MAX_BRIGHTNESS: u8 = 255;
106106
// Provide an alias for our BSP so we can switch targets quickly.
107107
// Uncomment the BSP you included in Cargo.toml, the rest of the code does not need to change.
108108
use bsp::entry;
109-
use fl16_inputmodules::{fl16::DVT2_CALC_PIXEL, games::game_of_life, led_hal as bsp};
109+
#[cfg(not(feature = "evt"))]
110+
use fl16_inputmodules::fl16::DVT2_CALC_PIXEL;
111+
#[cfg(feature = "evt")]
112+
use fl16_inputmodules::fl16::EVT_CALC_PIXEL;
113+
use fl16_inputmodules::{games::game_of_life, led_hal as bsp};
110114
//use rp_pico as bsp;
111115
// use sparkfun_pro_micro_rp2040 as bsp;
112116

@@ -238,18 +242,22 @@ fn main() -> ! {
238242
state.grid = every_nth_col(2);
239243
};
240244

241-
//let mut matrix = LedMatrix::new(i2c, EVT_CALC_PIXEL);
245+
#[cfg(feature = "evt")]
246+
let mut matrix = LedMatrix::new(i2c, EVT_CALC_PIXEL);
247+
#[cfg(not(feature = "evt"))]
242248
let mut matrix = LedMatrix::new(i2c, DVT2_CALC_PIXEL);
243249
matrix
244250
.setup(&mut delay)
245251
.expect("failed to setup RGB controller");
246252

247253
// EVT
248-
// matrix
249-
// .device
250-
// .sw_enablement(is31fl3741::SwSetting::Sw1Sw9)
251-
// .unwrap();
254+
#[cfg(feature = "evt")]
255+
matrix
256+
.device
257+
.sw_enablement(is31fl3741::SwSetting::Sw1Sw9)
258+
.unwrap();
252259
// DVT
260+
#[cfg(not(feature = "evt"))]
253261
matrix
254262
.device
255263
.sw_enablement(is31fl3741::SwSetting::Sw1Sw8)

0 commit comments

Comments
 (0)