Difference between revisions of "MCURTC:SetInfoLEDPattern"

From 3dbrew
Jump to navigation Jump to search
(Added more information to the animation fields.)
 
(3 intermediate revisions by 3 users not shown)
Line 35: 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=
 
=Animation=
Line 43: Line 43:
 
!  u8 smoothing
 
!  u8 smoothing
 
!  u8 loop_delay
 
!  u8 loop_delay
!  u8 ???
+
!  u8 blink_speed
 
|-
 
|-
 
| ''delay = seconds * 0x10''
 
| ''delay = seconds * 0x10''
Line 51: Line 51:
 
If set to 0x00, only the first value of the pattern is played. (?)
 
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.]
 
| 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''
 
| ''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).
 
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).
Line 58: Line 57:
  
 
If set to 0xFF, the pattern is played only once.
 
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.