Closed norpol closed 3 years ago
Does your monitor implement feature xCA - OSB button control?
If your VCP version is 2.2 (quite possible since curved monitors are recent) it's a bit more complicated than this, but basically the values are:
If this doesn't solve your problem, please run "ddcutil probe" for the monitor and send the output as an attachment.
Thank you for your response.
If I'm running, I receive this error below.
ddcutil setvcp 0xCA x01
# Verification failed for feature ca
Probe output lists
VCP code 0xca (OSD ): OSD Enabled (sl=0x02)
Attached are both ddcutil probe
and ddccontrol -p -c -d
outputs.
I'm using ddcutil setvcp 0xD6 "01"
, ddcutil setvcp 0xD6 "04"
and ddcutil setvcp 0x10 "10"
in my scripts.
First, an apology, which I'm afraid confused things. The values for feature xCA are
In the probe output, the capabilities string does not include feature xCA. Yet probe of xCA (i.e. getvcp) reports the sensible value of x02 (enabled). It does not set the unsupported feature bit in the reply. Interestingly, trying to setvcp feature xCA to x01 is rejected, so maybe feature xCA is half-supported, i.e. it can be read but not changed.
Bottom line: the monitor is reporting that OSD is enabled.
I have no idea why changing the value of feature xD6 between x01 and x04 (twiddling DPM on/off) should affect whether the OSD is enabled. All I can say as a vague generality is that changing the value of one feature can affect others. Such interactions are not documented. I've only been interested in the interactions of colour related features.
I'm assuming that when you say you've tried resetting factory defaults, you set feature x04 to a non-zero value.
I'm afraid that all I can suggest at this point is unplugging the monitor and let it sit for a bit. This is the first instance I've ever heard of/experienced where changing VCP values puts the monitor into an unrecoverable state.
Hey, thank you for your quick reply again. I did not experience these issues immediately but just after the next day, given your reply I can only assume that the sudden OSD functionality being gone does not relate to VCP control values but perhaps some faulty unit.
I'll try your suggestion over night and hope for the best.
I'm closing this now, perhaps if someone will encounter a similar issue they will find this conversation as a reference.
If I can contribute with any other helpful values for development please let me know.
Update: Disconnecting from power & display port over night didn't resolve the issue.
What precisely is your monitor model? It's unclear from the EDID. I'd like to take a look at the manual.
On 11/19/20 7:12 PM, Phi|eas |ebada wrote:
Hey, thank you for your quick reply again. I did not experience these issues immediately but just after the next day, given your reply I can only assume that the sudden OSD functionality being gone does not relate to VCP control values but perhaps some faulty unit.
I'll try your suggestion over night and hope for the best.
I'm closing this now, perhaps if someone will encounter a similar issue they will find this issue anyway.
If I can contribute with any other helpful values for development please let me know.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/rockowitz/ddcutil/issues/153#issuecomment-730716381, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADMGY3TD4I3JMQB7SILFML3SQWX6LANCNFSM4T3PSOHA.
Oh, sorry I missed your response. Xiaomi only call the screen "Mi Curved Gaming Monitor 34", I guess from the manual PDF filename it's XMMNTWQ34
.
The manual mi_xmmntwq34.pdf is just about build up and some basic firmware features.
didn't find a solution?
I have had a similar issue after attempting to use the power mode to turn the monitor off - no access to osd, buttons only turn the monitor black for a second.
No vcp setting brings the osd back or restores button functionality. I have left it off for many days, attempted turning on while holding all of the button combos, no luck.
For anyone finding this issue, I would strongly recommend not using any ddc/ci commands with this monitor. If you have, the monitor still works but you will not have access to the so won't be able to change the input or any settings. If it's in warranty period, return it.
I've successfully returned it back then - I assumed it was an unrelated issue, I've been using ddcutil for many years on many screens and never encountered this bug before. Sorry about your problem. Maybe we can update ddcutil to block certain monitors/actions?
@norpol I'm not sure about blocking, but as a first step I've implemented a monitor quirk table that causes detect to append a warning message for problematic monitors. Its initial member is the Xiaomi monitor. The implementation is in the current ddcutil development branch, 1.2.3-dev.
Note that detection entails reading feature values x00 (which provides useful information even though the feature should not exist) and feature xDF (VCP version). If there are monitors for which reading any value can be fatal the check would have to be implemented differently.
I don't have a copy of the EDID for this monitor, so I may not have the model name exactly correct. Can someone with this monitor send me the output of ddcutil detect --verbose so I can be sure of the Xiaomi monitor identifiers to use in the table? Or at least confirm that ddcutil detect --verbose warns about the monitor.
Display 2 I2C bus: /dev/i2c-8 Driver: nvidia I2C address 0x50 (EDID) responsive: true Is eDP device: false Is LVDS device: false /sys/bus/i2c/devices/i2c-8/name NVIDIA i2c adapter 8 at 2d:00.0 PCI device path: /sys/devices/pci0000:00/0000:00:03.1/0000:2d:00.0/i2c-8 EDID synopsis: Mfg id: XMI - UNK Model: Mi Monitor Product code: 13380 (0x3444) Serial number: Binary serial number: 0 (0x00000000) Manufacture year: 2020, Week: 16 EDID version: 1.4 Extra descriptor: Video input definition: 0xb5 - Digital Input (DisplayPort), Bit depth: 10 Supported features: DPMS active-off Digital display type: RGB 4:4:4 + YCrCb 4:2:2 Standard sRGB color space: True White x,y: 0.313, 0.329 Red x,y: 0.677, 0.314 Green x,y: 0.286, 0.637 Blue x,y: 0.136, 0.077 Extension blocks: 2 EDID source: I2C EDID hex dump: +0 +4 +8 +c 0 4 8 c +0000 00 ff ff ff ff ff ff 00 61 a9 44 34 00 00 00 00 ........a.D4.... +0010 10 1e 01 04 b5 50 21 78 3b 64 f5 ad 50 49 a3 22 .....P!x;d..PI." +0020 13 50 54 ad cf 00 71 4f 81 c0 81 40 81 80 95 00 .PT...qO...@.... +0030 a9 c0 b3 00 d1 c0 22 68 70 a0 d0 a0 29 50 30 20 ......"hp...)P0 +0040 35 00 1d 4e 31 00 00 1a 20 fd 70 a0 d0 a0 3c 50 5..N1... .p...<P +0050 30 20 35 00 1d 4e 31 00 00 1e 00 00 00 fd 00 30 0 5..N1........0 +0060 90 a0 a0 3c 01 0a 20 20 20 20 20 20 00 00 00 fc ...<.. .... +0070 00 4d 69 20 4d 6f 6e 69 74 6f 72 0a 20 20 02 ac .Mi Monitor. .. VCP version: 2.1 Controller mfg: Mstar Firmware version: 0.0 Monitor returns DDC Null Response for unsupported features: false WARNING: Setting feature values has been reported to permanently cripple this monitor!
@norpol Can you describe for @Diegohead what you did to recover your monitor?
@rockowitz and @Diegohead I'm very sorry but I simply returned the screen as it showed up in the first few days.
Hello. I'm having same issues, may be someone have some kind of remedy for this issue?
@HeckfyCU First, let's make sure this is the same monitor as previously discussed on this thread. Please execute ddcutil detect --verbose and ddcutil environment --verbose and submit the output as attachments. There will undoubtedly be lots of errors, but the output will still be useful.
@rockowitz I would like to, but I don't have linux installed, only windows and Mac OS. But I used similar tools to control my display through ddc ci like https://www.nirsoft.net/utils/control_my_monitor.html and https://github.com/chrismah/ClickMonitorDDC7.2 and now i also can't turn on osd. The only thing I managed to do is reset language options, so now display enters energy saving using Chinese language.
Also info from other people:
_https://stackoverflow.com/questions/64369071/monitor-buttons-acting-totally-incorrectly-trying-to-switch-input-source-inste https://www.reddit.com/r/ultrawidemasterrace/comments/ll2a36/cant_access_osd_anymore_on_xiaomi_mi_curved/ https://superuser.com/questions/1615554/monitor-buttons-stop-working-after-ddc-ci-control_
If it's of any use here are reports generated by this apps
VCP-codes export:
(prot(monitor)type(lcd)MStarcmds(01 02 03 07 0C E3 F3)vcp(02 04 05 08 10 12 14(05 08 0B 0C) 16 18 1A 52 60( 11 12 0F 10) AA(01 02) AC AE B2 B6 C6 C8 C9 D6(01 04 05) DC(00 02 03 05 ) DF FD)mccs_ver(2.1)mswhql(1))
Monitors deliver a capability string that defines supported VCP codes, but often the string is partially incorrect, some VCP-codes are not working, and some other working VCP-codes are missing. A few monitors do not deliver a capability string, but nevertheless some VCP-codes are working. Some monitors support only very few VCP-codes or are ignoring MCCS (VCP-codes) totally. ClickMonitorDDC automatically deals with these problems, so you should close this window.
Export from logs
<set mUID0="XMI3444#5&2338f071&0&UID33029"/>
<set mname0="MiMonitor"/>
One more app
softMCCS Report - 15.01.2021
**************************************
Platform
OS version and build................ 10.0 Build 22621
Physical memory..................... 33476,53MB
Virtual memory...................... 24436,16MB
Screen resolution................... 3440x1440
Device data......................... 0x220810DE.00.01.01
Program version..................... 2.5.0.1087
Basic display information
Product name........................ XMI Mi Monitor
Product ID.......................... XMI3444
Serial number....................... n/a
Manufactured........................ 2019 ISO week 40
Preferred timing.................... 3440x1440 at 50Hz
DDC/CI.............................. Supported
MCCS version........................ 2.1
Device controller................... Mstar 86, Level 0
EDID information
Version............................. 1.4
Extension blocks.................... 2
Raw data............................
00: 00FFFFFFFFFFFF00 61A9443400000000
10: 281D0104B5502178 3B64F5AD5049A322
20: 135054ADCF00714F 81C0814081809500
30: A9C0B300D1C02268 70A0D0A029503020
40: 35001D4E3100001A 20FD70A0D0A03C50
50: 302035001D4E3100 001E000000FD0030
60: 90A0A03C010A2020 20202020000000FC
70: 004D69204D6F6E69 746F720A20200295
MCCS capabilities string
Parsing errors...................... 0
Recoverable errors.................. n/a
Capabilities string.................
(prot(monitor)type(lcd)mstarcmds(01 02 03
07 0c e3 f3)vcp(02 04 05 08 10 12 14(05 08
0b 0c) 16 18 1a 52 60( 11 12 0f 10) aa(01
02) ac ae b2 b6 c6 c8 c9 d6(01 04 05) dc(00
02 03 05 ) df fd)mccs_ver(2.1)mswhql(1))
DDC/CI communication speed
Address switching................... n/a
Capabilities acquisition............ n/a
VCP table update.................... 2265 ms.
Mandatory tests for MCCS Version 2 compliance
Null message response............... n/a
Capabilities string................. Confirmed Ok
prot() field...................... Supported
type() field...................... Supported
mode() field...................... Not supported
cmds() field...................... Supported
vcp() field....................... Supported
mccs_ver() field.................. Supported
VCP version......................... Verified
Display controller ID............... Verified
New control value................... Supported, but ineffective
Timing report (recommended)......... Supported
Preset and auto-setup function tests
Restore factory defaults............ Verified
Restore luminance/contrast defaults. Untested
Restore color defaults.............. Untested
Enumerated control codes
Non-continuous controls............. Unconfirmed
Continuous controls................. Confirmed Ok
0x02 Max=0x0002 Current=0x0001 RW NC New control value
0x04 Max=0x00FF Current=0x0001 WO NC Restore factory defaults
0x05 Max=0x0001 Current=0x0000 WO NC Restore luminance/contrast defaults
0x08 Max=0x00FF Current=0x0000 WO NC Restore color defaults
0x10 Max=0x0064 Current=0x004F RW C Luminance
0x12 Max=0x0064 Current=0x004B RW C Contrast
0x14 Max=0x000C Current=0x0005 RW NC Select color preset {05 08 0B 0C}
0x16 Max=0x0064 Current=0x0032 RW C Red video gain
0x18 Max=0x0064 Current=0x002F RW C Green video gain
0x1A Max=0x0064 Current=0x0032 RW C Blue video gain
0x52 Max=0x00FF Current=0x0000 RO NC Active control
0x60 Max=0x000E Current=0x0007 RW NC Input source {11 12 0F 10}
0xAA Max=0x00FF Current=0x0001 RO NC Screen orientation {01 02}
0xAC Max=0x0003 Current=0x451C RO C Horizontal frequency
0xAE Max=0x0000 Current=0x37CF RO C Vertical frequency
0xB2 Max=0x0008 Current=0x0001 RO NC Panel sub-pixel layout
0xB6 Max=0x0005 Current=0x0003 RO NC Display technology type
0xC6 Max=0xFFFF Current=0x0050 RO NC Application enable key
0xC8 Max=0x0000 Current=0x5605 RO NC Display controller type
0xC9 Max=0xFFFF Current=0x0000 RO C Display firmware level
0xD6 Max=0x00FF Current=0x0001 RW NC Power mode {01 04 05}
0xDC Max=0x00FF Current=0x0000 RW NC Display application {00 02 03 05}
0xDF Max=0x00FF Current=0x0201 RO NC VCP version
0xFD Max=0xFFFF Current=0x0074 TBD TBD Manufacturer specific - 0xFD
VCP-codes from another app:
VCP Code | VCP Code Name | Read-Write | Current Value | Maximum Value | Possible Values -- | -- | -- | -- | -- | -- 02 | New Control Value | Read+Write | 1 | 2 | 04 | Restore Factory Defaults | Write Only | | 255 | 05 | Restore Factory Luminance/ Contrast | Write Only | | 1 | 08 | Restore Factory Color Defaults | Write Only | | 255 | 10 | Brightness | Read+Write | 80 | 100 | 12 | Contrast | Read+Write | 75 | 100 | 14 | Select Color Preset | Read+Write | 5 | 12 | 5, 8, 11, 12 16 | Video Gain (Drive): Red | Read+Write | 47 | 100 | 18 | Video Gain (Drive): Green | Read+Write | 47 | 100 | 1A | Video Gain (Drive): Blue | Read+Write | 50 | 100 | 52 | Active Control | Read Only | 0 | | 60 | Input Select | Read+Write | 7 | 14 | 0, 17, 18, 15, 16 AA | Screen Orientation | Read Only | 1 | | 1, 2 AC | Horizontal Frequency | Read Only | 17692 | | AE | Vertical Frequency | Read Only | 14287 | | B2 | Flat Panel Sub-Pixel Layout | Read Only | 1 | | B6 | Display Technology Type | Read Only | 3 | | C6 | Application Enable Key | Read Only | 17868 | | C8 | Display Controller ID | Read+Write | 22021 | 0 | C9 | Display Firmware Level | Read Only | 0 | | D6 | Power Mode | Read+Write | 1 | 255 | 1, 4, 5 DC | Display Application | Read+Write | 0 | 255 | 0, 2, 3, 5 DF | VCP Version | Read Only | 513 | | FD | Manufacturer Specific | | 116 | 65535 |I also came here after reading the other pieces of information available on the internet and bricking my osd.
Someone wrote that it might be an issue with the inputs:
What I noticed is that the VCP code for the input is currently 7 (listed as "S-Video1" , which is obviously wrong), but the possible value are 15, 16, 17 and 18. So I tried to connect my PC to other ports and the value changed to 5, 6 and 8. So there is a sort of offset of 10 from the actual values that it should take.
Maybe that's a point from where one could start investigating. Maybe there's some way to reset those values to something sane?
I just tried setting all the values from 0x0 to 0xff, nothing changes the monitor always stays at 0x07.
XMI3446 monitor has the same issue
Same monitor, same problems, to fix them I have to unplug it sometimes and do an hard reset when the OSD is willing to appear.
@RichardFevrier can you describe your procedure? I'd really like to have a fully working monitor again :)
How do you do the hard reset?
Probably not what you want to hear @supermar1010 but I ended up by uninstalling ddcutil. Then unpluged the power cord and after that the OSD was finally back.
Well if it brings my osd back, that's absolutely fine, will tra that soon, j hope I have success, having no osd really sucks. I kinda accepted the monitor as half bricked tbh
Hmm that did not work unfortunately, still got the same problem. Uninstalled all ddc stuff, rebooted computer and monitor, when pressing any of the buttons the monitor just blacks out for a few seconds, but no osd
When you say rebooted monitor, have you unplugged the power cord? This was the trick for me
Yes I unplugged for some time. But it did not help unfortunately
Sorry to hear that.
Was trying to play with ddcutil
until noticing the ddcutil detect
warning text, thanks to everyone who has helped on this issue.
any update on this. i still have no OSD
any update on this. i still have no OSD
I believe the one should have any update would be XiaoMi, which shipped the buggy display firmware.
Unfortunately that will probably never happen.
@RichardFevrier
Unfortunately that will probably never happen.
That's also true, let's vote with our wallet when the next purchase comes.
Also, you may want to file a complaint via XiaoMi's official support channels and spread the issue so that everyone will know they are selling crappy displays.
Hey, after playing with power modes and brightness via ddcutil I can't access the OSD of my monitor anymore.
Previously I would push the "menu" button and I would be presented with an OSD where I can do the monitor settings from hand.
Setting the "Restore Factory Defaults" value didn't help. I couldn't find any information on possible resetting the monitor preferences via button-key combination.
Do you have any idea or hints how I can recover from such a situation?