diff --git a/src/mappings.rs b/src/mappings.rs index bb87868..323c3f4 100644 --- a/src/mappings.rs +++ b/src/mappings.rs @@ -107,6 +107,24 @@ impl StrideMapping { ]) } + pub fn new_cyberplague() -> Self { + Self::from_json(&[ + (0, 6, 6, false), + (1, 6, 6, true), + (2, 6, 6, false), + (3, 4, 9, true), + (4, 4, 14, false), + (5, 0, 17, true), + (6, 2, 12, false), + (7, 0, 18, true), + (8, 4, 14, false), + (9, 5, 9, true), + (10, 4, 7, false), + (11, 5, 6, true), + (12, 5, 6, false) + ]) + } + pub fn new_jar() -> Self { Self::from_json(&[ (0, 0, 17, false), diff --git a/src/platform/esp32.rs b/src/platform/esp32.rs index f2d6e0a..01fb38f 100644 --- a/src/platform/esp32.rs +++ b/src/platform/esp32.rs @@ -175,7 +175,15 @@ impl Board for Esp32Board { std::thread::spawn(move || { FastWs2812Esp32Rmt::new(peripherals.rmt.channel0, pins.gpio5).unwrap() }).join().unwrap(), MAX_POWER_MW ) - } + }, + [0xfc, 0xf5, 0xc4, 0x05, 0xb8, 0x30, 0x0, 0x0] => { // cyberplague + StrideOutput::new( + Pixbuf::new(), + StrideMapping::new_cyberplague(), + std::thread::spawn(move || { FastWs2812Esp32Rmt::new(peripherals.rmt.channel0, pins.gpio13).unwrap() }).join().unwrap(), + MAX_POWER_MW + ) + }, _ => { StrideOutput::new( Pixbuf::new(),