alienfx-tools icon indicating copy to clipboard operation
alienfx-tools copied to clipboard

Add AW3423DW Support

Open translucentfocus opened this issue 3 years ago • 16 comments

This request provides the initial PCAP (change file extension back to .pcap to open in WireShark) for adding Alienware AW3423DW QD-OLED Monitor support.

AW3423DW QD-OLED Monitor Device Information:

HID\VID_187C&PID_100B&REV_0200 HID\VID_187C&PID_100B HID\VID_187C&UP:FF00_U:0001 HID_DEVICE_UP:FF00_U:0001 HID_DEVICE_UPR:FF00-FFFF HID_DEVICE

Methodology for PCAP Collection:

  1. Found a USB root hub that was separated from everything else on the machine to reduce unnecessary PCAP data. Did this by opening USBPCAP and moving one USB device to different USB ports until that device showed up on a separate hub from everything else.
  2. Stopped the AWCC Service from the Services App [can also open with Windows Key + R >> services.msc]
  3. Unplugged Monitor USB cable from machine
  4. Killed AWCC.exe in Task Manager now that the AWCC Service was stopped
  5. Started PCAP
  6. Plugged monitor USB cable back into machine so that USB discovery is run and is captured in PCAP
  7. Started AWCC Service
  8. Opened AWCC
  9. Set all 4 lights to a preset Green {RGB: 20,220,18}
  10. Set all 4 lights to a preset Red {RGB: 240,0,0}
  11. Ended PCAP (may have set lights back to Green) AW3423DW.txt

If this is satisfactory, I will continue using the very helpful wiki to collect the rest of the data.

Update: Added PCAP below (change to pcap extension) for turning each of the lights off and then to the color red (RGB 255,0,0) Need to right-click SaveAs... then rename to .pcap

EachLightOnOffRedColor

translucentfocus avatar Sep 01 '22 00:09 translucentfocus

Don't need to play with AWCC/service right now. It needs to be stopped, then we start testing the device only. VID is Alienware.

Let me check interface, this issue can be a duplicate of #56, please read it.

T-Troll avatar Sep 01 '22 00:09 T-Troll

Yes, it's the same interface as #56.

Can you please run alienfx-cli probe=a (answer "n" for light set) and share output to me?

T-Troll avatar Sep 01 '22 00:09 T-Troll

Yes, it's the same interface as #56.

Can you please run alienfx-cli probe=a (answer "n" for light set) and share output to me?

PS C:\Program Files\AlienFX Tools> .\alienfx-cli.exe probe=a
alienfx-cli v7.0.4
Dell API not found, Low-level device 0 ready.
===== Device VID_187c, PID_100b =====
Version 512, block size 12
Report Lengths: Output 65, Input 65, Feature 0
Usage ID 0x1, Usage page 0xff00, Output caps 1, Index 64
+++++ Detected as: Alienware,  +++++
Do you want to set devices and lights names? n
Done.

translucentfocus avatar Sep 01 '22 00:09 translucentfocus

Here is the test cli - alienfx-cli.zip Can you, please:

  • Stop AWCCService.
  • Run alienfx-cli probe=a (as before) - check "Detected as:" - should be "Alienware, monitor, APIv6".
  • If detection is correct, please issue command alienfx-cli set-one=0,15,<R>,<G>,<B>
  • This should change all lights color.

T-Troll avatar Sep 01 '22 01:09 T-Troll

It detects API v6!

PS ~\Downloads\alienfx-cli> .\alienfx-cli.exe probe=a
alienfx-cli v7.1.0
Dell API not found, Low-level device 0 ready.
===== Device VID_187c, PID_100b =====
Version 512, block size 12
Report Lengths: Output 65, Input 65, Feature 0
Usage ID 0x1, Usage page 0xff00, Output caps 1, Index 64
+++++ Detected as: Alienware, Monitor, APIv6 +++++

Tried changing light colors, appears to not be working properly.

PS ~\Downloads\alienfx-cli> .\alienfx-cli.exe set-one=0,15,255,0,0
alienfx-cli v7.1.0
Dell API not found, Low-level device 0 ready.
Done.

PCAP (change file extension back to PCAP) of .\alienfx-cli.exe set-one=0,15,255,0,0 alienfx-cliLightChangePCAP.txt

translucentfocus avatar Sep 01 '22 01:09 translucentfocus

Ok, detection work correctly. Can you please use this test version - alienfx-cli.zip Only second command (set-one). Did it change the lights?

T-Troll avatar Sep 01 '22 01:09 T-Troll

Ok, detection work correctly. Can you please use this test version - alienfx-cli.zip Only second command (set-one). Did it change the lights?

PS ~\Downloads\alienfx-cli (1)> .\alienfx-cli.exe set-one=0,15,255,0,0
alienfx-cli v7.1.0
Dell API not found, Low-level device 0 ready.
Done.

No luck. No lights changed. PCAP attached (change extension back to .pcap) set-oneCommand.txt

translucentfocus avatar Sep 01 '22 01:09 translucentfocus

Ok, another version (same process) - alienfx-cli.zip

T-Troll avatar Sep 01 '22 02:09 T-Troll

Ok, another version (same process) - alienfx-cli.zip

It worked! All LEDs were set to red. 🥳🎉

PCAP attached as .txt as usual

PS ~\Downloads\alienfx-tools-comment-1233653691> .\alienfx-cli.exe set-one=0,15,255,0,0
alienfx-cli v7.1.0
Dell API not found, Low-level device 0 ready.
Done.

3rdalienfx-cliTest.txt

translucentfocus avatar Sep 01 '22 02:09 translucentfocus

Great!

T-Troll avatar Sep 01 '22 02:09 T-Troll

Here's the dark, light, dim pcap as mentioned in the wiki. Change extension to .pcap DarkLightDIM.txt

translucentfocus avatar Sep 01 '22 02:09 translucentfocus

So.... New test version - alienfx-cli.zip Can you please check different light/color set:

  • command is alienfx-cli set-one=0,<ID>,<R>,<G>,<B>. ID = 1,2,3,4 - light number.

T-Troll avatar Sep 01 '22 03:09 T-Troll

So.... New test version - alienfx-cli.zip Can you please check different light/color set:

  • command is alienfx-cli set-one=0,<ID>,<R>,<G>,<B>. ID = 1,2,3,4 - light number.

Lights work! And the colors change as expected.

Possible Issues:

  • ID is actually 0,1,2,3 for the lights (order/labels match AWCC) i.e. light 0 is the Alien Head which is labeled as light # 1 in AWCC
  • Setting a light causes it to flash white, then set the correct color (even when setting the same color that already was set)
  • The first time one runs the set-one command, it sets all other lights to white and they remain that way until set to something else

translucentfocus avatar Sep 01 '22 03:09 translucentfocus

No. It's from 1 in my app for now, because it's a bitmask, in fact. Will fix it later. But the point about white make sense.

T-Troll avatar Sep 01 '22 03:09 T-Troll

Try this cli - alienfx-cli.zip

Warning: it can stop working or have other side effects, let me know.

I try to fix white flash here. Also, on/dim/off should work too, but here is an issue - it will always drop light colors to black for now (and dimming not stored into cli), so use dimming and set light colors after (into one command line!) for check.

T-Troll avatar Sep 01 '22 04:09 T-Troll

Command:

PS ~\alienfx-cli-comment-1233730236> .\alienfx-cli.exe status
alienfx-cli v7.1.0
Dell API not found, Low-level device 0 ready.
Device #0 - Unknown, #4107, Display, VID#6268, PID#4107, APIv6, 0 lights
Done.

Behavior: All lights turned off, no change if running with or without AWCC Service running.


Command:

PS ~\alienfx-cli-comment-1233730236> .\alienfx-cli.exe reset
alienfx-cli v7.1.0
Dell API not found, Low-level device 0 ready.
Done.

Behavior All lights turned off, no change if running with or without AWCC Service running.


Command:

PS ~\alienfx-cli-comment-1233730236> .\alienfx-cli.exe set-one=0,0,255,0,0 set-one=0,1,255,0,0 set-one=0,2,255,0,0 set-one=0,3,255,0,0
alienfx-cli v7.1.0
Dell API not found, Low-level device 0 ready.
Done.

Unexpected Behavior Lights 1, 2, & 4 all turned red. Light # 3 (the downlight) did not turn on at all. The same command run with other colors sets the colors correctly, but light # 3 still stays dark.


Command:

PS ~\alienfx-cli-comment-1233730236> .\alienfx-cli.exe set-one=0,4,255,0,0
alienfx-cli v7.1.0
Dell API not found, Low-level device 0 ready.
Done.

Unexpected Behavior All lights turned off; this probably shouldn't do anything, since set-one=0,4 doesn't exist


Command:

PS ~\alienfx-cli-comment-1233730236> .\alienfx-cli.exe set-all=0,255,0
alienfx-cli v7.1.0
Dell API not found, Low-level device 0 ready.
Done.

Unexpected Behavior If lights are on, they turn off. If the lights are already off, they remain off.


Command:

PS ~\alienfx-cli-comment-1233730236> .\alienfx-cli.exe set-power=0,3,255,0,0,0,255,0
alienfx-cli v7.1.0
Dell API not found, Low-level device 0 ready.
Done.

Behavior Power button turned to red and stayed that way. No white flash was observed after the first run of the command. Subsequent runs only caused the light to very quickly blink off and back on (barely noticeable.) Even restarting AWCC Service and setting lights in AlienFX and then running the commands did not cause a white flash.

translucentfocus avatar Sep 02 '22 01:09 translucentfocus

This version was for test only, it's not intended to work correctly. I just try other way to init device. And your device does not support hardware power button, so it's the same as set-one (hardware PB is for notebooks - with different color AC/Battery and charging/critlcal/sleep effects).

So... I need one more pcap. Effects, yes. Please run AWCC, set some lights to different effects (please remember colors for it), then share it for me.

PS: Try to play with release gui/cli - it should work with white flash, but stable.

T-Troll avatar Sep 03 '22 09:09 T-Troll

This version was for test only, it's not intended to work correctly. I just try other way to init device. And your device does not support hardware power button, so it's the same as set-one (hardware PB is for notebooks - with different color AC/Battery and charging/critlcal/sleep effects).

So... I need one more pcap. Effects, yes. Please run AWCC, set some lights to different effects (please remember colors for it), then share it for me.

PCAP process: Lights 1 through 4 (set in order, individually, via AlienFX) 1. Initial color: Blue (0,0,255) 2. Morph between red (255,0,0) and blue (0,0,255) 3. Pulse blue (0,0,255) 4. Breathing blue (0,0,255) 5. Repeated for each light

Change attachment to .pcap extension AlienFXCycles.txt

translucentfocus avatar Sep 05 '22 22:09 translucentfocus

PS: Try to play with release gui/cli - it should work with white flash, but stable.

Thank you for all the hard work on this! Gave AlienFX Control 7.1.0 a test.

image

I selected Not Listed which then causes the program to stop responding.

image

Pcap of behavior attached. Change the extension to .pcap.
AlienFX Control.txt

translucentfocus avatar Sep 05 '22 22:09 translucentfocus

Thank you for effect pcap, i don't need any other for now. But seems like it's a bug (again!) at clean configuration. I'll check.

PS: Do you really have x15/17, or it's a detection error?

T-Troll avatar Sep 06 '22 00:09 T-Troll

Can you please share your configuration for check - i can't reproduce it! Just open regedit and export HKCU/Software/AlienFX_SDK and HKCU/Software/Alienfxgui.

T-Troll avatar Sep 06 '22 00:09 T-Troll

Thank you for effect pcap, i don't need any other for now. But seems like it's a bug (again!) at clean configuration. I'll check.

PS: Do you really have x15/17, or it's a detection error?

No, a x15/17 is not connected. Only Alienware component being tested/is connected is the AW3423DW. It would appear it is a detection error.

Can you please share your configuration for check - i can't reproduce it! Just open regedit and export HKCU/Software/AlienFX_SDK and HKCU/Software/Alienfxgui.

Configs attached. As usual, will need to rename the extensions to .reg if you don't want to work with them as text.

AlienFX_SDK.txt Alienfxgui.txt

translucentfocus avatar Sep 06 '22 01:09 translucentfocus

No, a x15/17 is not connected. Only Alienware component being tested/is connected is the AW3423DW. It would appear it is a detection error.

It can be not error, but funny side effect. Check your keyboard VID/PID - is it 0D62/CABC?

T-Troll avatar Sep 06 '22 01:09 T-Troll

PS C:\Program Files\AlienFX Tools> .\alienfx-cli.exe probe alienfx-cli v7.2.0

AlienFX Control won't open at all and alienfx-clie.exe seems to hang completely now. I cleared the REG Keys for Alienfxgui and Alienfx_SDK and the keys are still empty.

PCAP attached. Change .txt to .pcap Alienfx-cli72.txt

translucentfocus avatar Sep 06 '22 01:09 translucentfocus

I don't need pcap anymore, issue is not there!

T-Troll avatar Sep 06 '22 02:09 T-Troll

Try this cli, it's debug - alienfx-cli.zip Please share the log.

T-Troll avatar Sep 06 '22 02:09 T-Troll

Please also check this gui - if this is not device init it should help. alienfx-tools.zip Also detection bug fixed.

T-Troll avatar Sep 06 '22 04:09 T-Troll

About effects: Seems like this - there are 4 types of command:

const byte colorSet[8]{0x92,0x37,0x0a,0x00,0x51,0x87,0xd0,0x04};
		//[3] - command length
		//[6] - command (87 - color, 88 - Pulse, 8c - morph/breath, 84 - timing?),
		//[8] - command type - 4 - color, 1 - morph, 2 - pulse, 3 - timing?
		//[9] - light mask,
		// 3,84 - [10] - Brightness, [11] - ???, [12] - checksum
		// 4,87 - [10,11,12] - RGB, [13] - Brightness (0..64), [14] - checksum
		// 2,88 - [10,11,12] - RGB, [13] - Brightness (0..64), [14] - Tempo?, [15] - checksum
		// 1,8c - [10,11,12] - RGB, [13,14,15] - RGB2, [16] - brightness, [17,18] - tempo, [19] - checksum

The only issue now, i can't calculate checksum correctly (i configure out there 8 come from before, but it doesn't work for other commands).

Can you please make another pcap from awcc with different colors and timings (length) -no matter what lights and kind?

T-Troll avatar Sep 06 '22 07:09 T-Troll

And another task. Can you please:

  • run USBPcap
  • THEN run AWCC
  • Stop pCap

I want to check how it init the device.

T-Troll avatar Sep 06 '22 21:09 T-Troll

Can you please make another pcap from awcc with different colors and timings (length) -no matter what lights and kind?

PCAP attached. (Change extension to .pcap) AWCCColorsTimeShifts.txt

Tempo was modified with this control: image

translucentfocus avatar Sep 06 '22 22:09 translucentfocus