codegen: instance: moody includes: - driver/i2c.h - driver/mmsubstate.h flags: - arch_drivers=i2c - drivers=mmsubstate setup: i2c.setup(); parameters: - substate_count - substate_duration - substate_power - static_p1 - static_p2 states: - UNINITIALIZED - SLEEP - STATIC - SUB2 - SUB8 - SUBVAR transition: sleep: src: [UNINITIALIZED, STATIC, SUB2, SUB8, SUBVAR] dst: SLEEP set_param: substate_count: 0 substate_duration: 0 substate_power: 0 noSubstates: src: [SLEEP, STATIC, SUB2, SUB8, SUBVAR] dst: STATIC arguments: - name: power1 values: [30, 50, 80] parameter: static_p1 - name: power2 values: [30, 50, 80] parameter: static_p2 set_param: substate_count: 0 substate_duration: 0 substate_power: 0 twoSubstates: src: [SLEEP, STATIC, SUB2, SUB8, SUBVAR] dst: SUB2 set_param: substate_count: 2 arguments: - name: switchDuration values: [5, 10, 15, 20] parameter: substate_duration - name: power values: [50, 100, 150] parameter: substate_power eightSubstates: src: [SLEEP, STATIC, SUB2, SUB8, SUBVAR] dst: SUB8 set_param: substate_count: 8 arguments: - name: switchDuration values: [5, 10, 15, 20] parameter: substate_duration - name: power values: [50, 100, 150] parameter: substate_power setSubstates: src: [SLEEP, STATIC, SUB2, SUB8, SUBVAR] dst: SUBVAR arguments: - name: substateCount values: [2, 4, 10, 12] parameter: substate_count - name: switchDuration values: [5, 10, 15, 20] parameter: substate_duration - name: power values: [255] parameter: substate_power