Difference between revisions of "MCURTC:SetInfoLEDPattern"

From 3dbrew
Jump to navigation Jump to search
 
(7 intermediate revisions by 4 users not shown)
Line 9: Line 9:
 
|-
 
|-
 
| 1
 
| 1
| ?
+
| Animation
 
|-
 
|-
 
| 2-9
 
| 2-9
| Red pattern
+
| u8[32] Red pattern
 
|-
 
|-
 
| 10-17
 
| 10-17
| Green pattern
+
| u8[32] Green pattern
 
|-
 
|-
 
| 18-25
 
| 18-25
| Blue pattern
+
| u8[32] Blue pattern
|-
 
| 26
 
| ?
 
 
|}
 
|}
  
Line 38: Line 35:
  
 
=Description=
 
=Description=
This is used for controlling(including blinking) the notification LED. MCU module uses [[I2C_Services|I2C]] service command 0x001100C2 to write the input 0x64-bytes to MCU [[I2C]] register 0x2D.
+
This is used for controlling (including blinking) the notification LED. MCU module uses [[I2C_Services|I2C]] service command 0x001100C2 to write the input 0x64-bytes to MCU [[I2C]] register 0x2D.
 +
 
 +
=Animation=
 +
{| class="wikitable" border="1"
 +
|-
 +
!  u8 delay
 +
!  u8 smoothing
 +
!  u8 loop_delay
 +
!  u8 blink_speed
 +
|-
 +
| ''delay = seconds * 0x10''
 +
 
 +
Since this data is represented in a u8, the precision is 1/16th of a second (0x01) and the maximum delay time is 15.9375 seconds (0xFF).
 +
 
 +
If set to 0x00, only the first value of the pattern is played. (?)
 +
| The lower the value is, the less smoothing is applied to the pattern. Here is a visual approximation of how the smoothing works: [https://i.imgur.com/ZxdPbIw.png Smooth function.]
 +
| ''loop_delay = seconds * 0x10''
 +
Since this data is represented in a u8, the precision is 1/16th of a second (0x01) and the maximum delay time is 15.875 seconds (0xFE).
 +
 
 +
If set to 0x00, there is no loop delay.
 +
 
 +
If set to 0xFF, the pattern is played only once.
 +
| if smoothing is nothing, this can set LED blink speed value.
 +
|}

Latest revision as of 08:58, 28 June 2023

Request[edit]

Index Word Description
0 Header code [0x003B0640]
1 Animation
2-9 u8[32] Red pattern
10-17 u8[32] Green pattern
18-25 u8[32] Blue pattern

Response[edit]

Index Word Description
0 Header code
1 Result code

Description[edit]

This is used for controlling (including blinking) the notification LED. MCU module uses I2C service command 0x001100C2 to write the input 0x64-bytes to MCU I2C register 0x2D.

Animation[edit]

u8 delay u8 smoothing u8 loop_delay u8 blink_speed
delay = seconds * 0x10

Since this data is represented in a u8, the precision is 1/16th of a second (0x01) and the maximum delay time is 15.9375 seconds (0xFF).

If set to 0x00, only the first value of the pattern is played. (?)

The lower the value is, the less smoothing is applied to the pattern. Here is a visual approximation of how the smoothing works: Smooth function. loop_delay = seconds * 0x10

Since this data is represented in a u8, the precision is 1/16th of a second (0x01) and the maximum delay time is 15.875 seconds (0xFE).

If set to 0x00, there is no loop delay.

If set to 0xFF, the pattern is played only once.

if smoothing is nothing, this can set LED blink speed value.