Notification LED Driver Registry Settings (Compact 2013)

3/26/2014

Registry settings for the notification LED (NLED) driver include registry keys for the NLED driver and registry keys for the NLED service.

To create NLED registry settings specific to a hardware platform, create registry entries in the Platform.reg file at %_WINCEROOT%\Platform\%_TGTPLAT%\Files.

The following table shows NLED driver registry settings. The NLED driver registry settings are under HKEY_LOCAL_MACHINE\Drivers\BuiltIn\NLED\Config. For each notification component, replace Led0 with a different subkey. The term LED refers to all notification components.

Value : type

Condition

Description

Led0\MddPowerManaged : DWORD

Optional

Specifies whether power management is done by the model device driver (MDD).

The following table shows possible values.

ValueDescription
0Not power managed by the MDD.
1Power managed by the MDD.

Led0\LedNum : DWORD

Required

UINT index number that corresponds to the notification component.

Led0\LedGroup : DWORD

Optional

Nonzero UINT number that identifies if a notification component is in a group. In a group, activation of components is mutually exclusive. In a group, one notification component is on at a given time and prioritization determines which component is active.

The system ignores this setting if the value is not specified and ignores this setting if the value is zero.

Led0\LedType : DWORD

Required

Type of notification component.

The following table shows possible values.

ValueDescription
0Unknown
1Led
2Vibrator

Led0\CycleAdjust : DWORD

Optional. Ignored if SWBlinkCtrl and Blinkable are set to 0.

Granularity of cycle time adjustments, in microseconds. NLED_SUPPORTS_INFO uses this value as lCycleAdjust. By default, the driver does it's best to fulfill blink parameter requests and rounds parameters to supported settings.

Led0\Blinkable : DWORD

Required

Support for blinking in hardware.

The following table shows possible values.

ValueDescription
0Notification component cannot blink.
1Notification component can blink.

Led0\SWBlinkCtrl : DWORD

Optional. Ignored if Blinkable is set to 1

Software blinking support. Software blinking sends ON and OFF messages to the hardware. The lCycleAdjust for SWBlinkCtrl is 1000 microseconds. For more information about lCycleAdjust, see the NLED_SUPPORTS_INFO topic.

Gg157619.note(en-us,WinEmbedded.80).gifNote:
Setting Blinkable to 1 automatically disables software blinking.

The following table shows possible values:

ValueDescription
0Software does not control blinking. This value is the default value.
1Software controls blinking, if the value of Blinkable is not 1.

Led0\AdjustType : DWORD

Optional. Ignored if Blinkable is set to 0

Supported adjustments to blinking. This value indicates if TotalCycleTime, OnTime, and OffTime are adjustable. For more information, see NLED_SETTINGS_INFO.

The following table shows possible values.

ValueDescription
0Not adjustable. This value is the default value.
1Only TotalCycleTime can be adjusted.
2Only OnTime and OffTime can be adjusted.

Led0\MetaCycle : DWORD

Optional. Ignored if Blinkable is set to 0

Specifies if MetaCycleOn and MetaCycleOff can be adjusted. For more information, see NLED_SETTINGS_INFO.

The following table shows possible values.

ValueDescription
0Not adjustable. This value is the default value.
1Adjustable.

Led0\D4State : DWORD

Optional. Ignored if MddPowerManaged is set to 0

Indicates the LED state during the D4 power state.

The following table shows possible values.

ValueDescription
0Off.
1On.
All other values.Unchanged. This value is the default value.

The following table shows registry keys that apply if you use the NLED service. Within the NLED service, an event, for example activation of Bluetooth, triggers when a registry value matches a specified value. For Bluetooth, an example registry value is HKEY_LOCAL_MACHINE\States\Main\BluetoothStatus. For each event, a new subkey must replace Event0 in the following table. The first three entries in the table correspond to the location of the event-value that the NLED service monitors.

Value : type

Condition

Description

Led0\Event0\Root : DWORD

Required if you use the NLED service.

Root of the registry key used by the service. The following values are possible values:

  • HKEY_CLASSES_ROOT - 0x80000000
  • HKEY_CURRENT_USER - 0x80000001
  • HKEY_LOCAL_MACHINE - 0x80000002
  • HKEY_USERS - 0x80000004
  • HKEY_LOCAL_MACHINE is the default value.

Led0\Event0\Path : String

Required if you use the NLED service.

Path, excluding the root, to the key that holds the value.

Led0\Event0\ValueName : String

Required if you use the NLED service.

Name of the value stored at Root\Path.

Led0\Event0\Mask : DWORD

Required if you use the NLED service.

Mask with which the current value undergoes a bitwise AND operation. The current value is at the location of the event-value in the registry. The result of the operation is the masked value.

Led0\Event0\TriggerValue : DWORD

Required if you use the NLED service.

Trigger value that is compared to the masked value.

Led0\Event0\Operator : DWORD

Optional.

Operator for the comparison between the trigger value and the masked value.

The following table shows possible values.

ValueDescription
0Masked registry value == TriggerValue. This value is the default value.
1Masked registry value > TriggerValue
2Masked registry value >= TriggerValue
3Masked registry value < TriggerValue
4Masked registry value <= TriggerValue

This comparison determines the condition of the event. The event is active if the statement evaluates to TRUE.

Led0\Event0\Prio : DWORD

Required if you use the NLED service.

Priority of the event. Lower numbers have higher priority, with zero (0) being the highest priority. Events on the same LED or LED group must have different priority values.

Led0\Event0\State : DWORD

Required if you use the NLED service.

LED action if the event fires.

The following values are possible values.

ValueDescription
0Off. This value is the default value.
1On.
2Blink.

NLED_SETTINGS_INFO uses this value as OffOnBlink.

Led0\Event0\TotalCycleTime : DWORD

Required if the blink state and capabilities apply.

Total time, in microseconds, for a blink cycle. NLED_SETTINGS_INFO uses this value as TotalCycleTime.

Led0\Event0\OnTime : DWORD

Required if the blink state and capabilities apply.

Time, in microseconds, that the LED is on during one blink cycle. NLED_SETTINGS_INFO uses this value as OnTime.

Led0\Event0\OffTime : DWORD

Required if the blink state and capabilities apply.

Time, in microseconds, that the LED is off during one blink cycle. NLED_SETTINGS_INFO uses this value as OffTime.

Led0\Event0\MetaCycleOn : DWORD

Required if the blink state and capabilities apply.

NLED_SETTINGS_INFO uses this value as MetaCycleOn.

Led0\Event0\MetaCycleOff : DWORD

Required if the blink state and capabilities apply.

NLED_SETTINGS_INFO uses this value as MetaCycleOn.

Note

The maximum size of a key name is 255 characters.

NLED Driver Registry Example

[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\NLed\Config\YellowLed]
    "LedNum" = dword:0
    "LedGroup" = dword:0 
    "LedType" = dword:1
        ;LedType = 1 -  Led
;------------------------------------------------------------------------------
    ;Blink-related hardware capabilities
    "CycleAdjust" = dword:1E848
        ;CycleAdjust = 125000 microseconds
    "SWBlinkCtrl"= dword:0
        ;SWBlinkCtrl = disabled
    "Blinkable" = dword:1
        ;blinkable = 1 - yes
    "AdjustType" = dword:0
        ;AdjustType = 0 - CycleTimes not adjustable
    "MetaCycle" = dword:0
        ;MetaCycleAdjust = 0 - Metacycles not adjustable.
;------------------------------------------------------------------------------
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\NLed\Config\YellowLed]
    "LedNum" = dword:0
    "LedGroup" = dword:0 
    "LedType" = dword:1
        ;LedType = 1 -  Led
;------------------------------------------------------------------------------
    ;Blink-related hardware capabilities
    "CycleAdjust" = dword:1E848
        ;CycleAdjust = 125000 microseconds
    "SWBlinkCtrl"= dword:0
        ;SWBlinkCtrl = disabled
    "Blinkable" = dword:1
        ;blinkable = 1 - yes
    "AdjustType" = dword:0
        ;AdjustType = 0 - CycleTimes not adjustable
    "MetaCycle" = dword:0
        ;MetaCycleAdjust = 0 - Metacycles not adjustable.
;------------------------------------------------------------------------------
;NLED Service configuration for YellowLed
;------------------------------------------------------------------------------
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\NLed\Config\YellowLed\Event1]
    "Root"=dword:80000002
    "Path"="Test\\States"
    "ValueName"="Main"
    ;specify to monitor the registry value "HKLM\Test\States\Main".
    ;mask the value with 0x01. If the result is 0x01, turn YellowLed On
    "Mask"=dword:00000001
    "TriggerValue"=dword:00000001
    "Prio"=dword:1
    "State"=dword:1

;==============================================================================
;NLED configuration for BlueLed
;==============================================================================
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\NLed\Config\BlueLed]
     "LedNum" = dword:1
     "LedType" = dword:1
        ;LedType = 1 -  Led
;------------------------------------------------------------------------------
    ;Blink-related hardware capabilities
    "CycleAdjust" = dword:7A120
        ;CycleAdjust = 500000 microseconds
    "Blinkable" = dword:0
        ;0 - not blinkable
        ;1 - blinkable
    "SWBlinkCtrl"= dword:1
        ;SWBlinkCtrl = enabled
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\NLed\Config\BlueLed\Event2]
    "Root"=dword: 80000002
    "Path"="SampleEvent\\Sample"
    "ValueName"="anEvent"
    ;specify to monitor the registry value "HKLM\SampleEvent\Sample\anEvent".
    ;mask the value with 0x01. If the result is 0x01, blink the LED: on 1 second,
    ;off 1 second.
    "Mask"=dword:00000001
    "TriggerValue"=dword:00000001
    "Prio"=dword:1
    "State"=dword:2
    "TotalCycleTime"=dword:0 ;not used for this LED
    "OnTime"=dword:F4240 ;1 second
    "OffTime"=dword:F4240

See Also

Reference

Notification LED Driver Reference