Firmware upgrade using Linux tool, requires no hardware

Adjusting BENQ Blur Reduction and DyAc (Dynamic Acceleration) including Blur Busters Strobe Utility. Supports most BenQ/Zowie Z-Series monitors (XL2411, XL2420, XL2720, XL2735, XL2540, XL2546)
hamc17
Posts: 7
Joined: 12 Jan 2018, 20:44

Re: Firmware upgrade using Linux tool, requires no hardware

Post by hamc17 » 13 Jan 2018, 13:24

Fonta wrote: Not sure what you mean by input adapter.
I’m using a live Ubuntu 16.04 usb stick startup the laptop of my work.
The monitor is standby and connected to the vga port.
I meant DVI or VGA;

Ok, try unplugging the monitor for about 5 minutes and plug it back in.
Then run
"sudo modprobe i2c-dev"

"sudo i2cdetect -l"

and then for each number in the list of detected i2c buses, run

"sudo i2cdetect BUS" where BUS is the number, e.g.
"sudo i2cdetect 0"
"sudo i2cdetect 1"
"sudo i2cdetect 2" etc.
If the output is slow, you can presume that one is not the correct bus and cancel the command with Ctrl + C
Eventually you should find one output that looks like this:

0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- 37 -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- 49 -- -- -- -- -- --
50: 50 -- -- -- -- -- -- -- -- 59 -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

or in my case after I bricked my monitor,

0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- 49 -- -- -- -- -- --
50: 50 -- -- -- -- -- -- -- -- 59 -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

Then run "sudo i2cdump -r 0-127 BUS 0x50" where BUS is again the bus you found the above output on.
In my case it was all the way down at bus 18 out of 21!

The output should have benq xl2720z in it on the last line.

Now you have identified the correct bus and know that the monitor is showing up.
Run the following command to see which flash chips are detected:
"sudo ./flashrom -p mstarddc_spi:dev=/dev/i2c-BUS:49" bus again, the bus found above.

The output will probably contain:
Found Macronix flash chip "MX25L1605" (2048 kB, SPI) on mstarddc_spi.
Found Macronix flash chip "MX25L1605A/MX25L1606E" (2048 kB, SPI) on mstarddc_spi.
Found Macronix flash chip "MX25L1605D/MX25L1608D/MX25L1673E" (2048 kB, SPI) on mstarddc_spi.

Now you have the correct bus and it's identifying the flash chip correctly.
Unplug the monitor and plug in back in after about 5 mins (the last command can reset the monitor and it won't read correctly some of the time).

Again run "sudo modprobe i2c-dev"
and "sudo i2cdetect BUS" and verify the output is the same as it was before;
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- 49 -- -- -- -- -- --
50: 50 -- -- -- -- -- -- -- -- 59 -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

as long as those 3 are there, you're good.

Now run the command:
"sudo ./flashrom -p mstarddc_spi:dev=/dev/i2c-BUS:49 -c "MX25L1605A/MX25L1606E" -w YOUR_FIRMWARE.bin"

with BUS being the bus you found and YOUR_FIRMWARE.bin your padded 2MB firmware v5.

All things going well, it will read, erase and write, then verify the flash chip.

If anything goes wrong, come back and let me know.
I tried 3 different computers and 6 different video inputs on them, both VGA and DVI before it eventually worked for me on my secondary Nvidia DVI input.
If it doesn't work immediately, you may have to try a different computer/video input

Best of luck!

Fonta
Posts: 6
Joined: 13 Jan 2018, 10:18

Re: Firmware upgrade using Linux tool, requires no hardware

Post by Fonta » 13 Jan 2018, 13:48

hamc17 wrote:
Fonta wrote: Not sure what you mean by input adapter.
I’m using a live Ubuntu 16.04 usb stick startup the laptop of my work.
The monitor is standby and connected to the vga port.
I meant DVI or VGA;

Ok, try unplugging the monitor for about 5 minutes and plug it back in.
Then run
"sudo modprobe i2c-dev"

"sudo i2cdetect -l"

and then for each number in the list of detected i2c buses, run

"sudo i2cdetect BUS" where BUS is the number, e.g.
"sudo i2cdetect 0"
"sudo i2cdetect 1"
"sudo i2cdetect 2" etc.
If the output is slow, you can presume that one is not the correct bus and cancel the command with Ctrl + C
Eventually you should find one output that looks like this:

0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- 37 -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- 49 -- -- -- -- -- --
50: 50 -- -- -- -- -- -- -- -- 59 -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

or in my case after I bricked my monitor,

0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- 49 -- -- -- -- -- --
50: 50 -- -- -- -- -- -- -- -- 59 -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

Then run "sudo i2cdump -r 0-127 BUS 0x50" where BUS is again the bus you found the above output on.
In my case it was all the way down at bus 18 out of 21!

The output should have benq xl2720z in it on the last line.

Now you have identified the correct bus and know that the monitor is showing up.
Run the following command to see which flash chips are detected:
"sudo ./flashrom -p mstarddc_spi:dev=/dev/i2c-BUS:49" bus again, the bus found above.

The output will probably contain:
Found Macronix flash chip "MX25L1605" (2048 kB, SPI) on mstarddc_spi.
Found Macronix flash chip "MX25L1605A/MX25L1606E" (2048 kB, SPI) on mstarddc_spi.
Found Macronix flash chip "MX25L1605D/MX25L1608D/MX25L1673E" (2048 kB, SPI) on mstarddc_spi.

Now you have the correct bus and it's identifying the flash chip correctly.
Unplug the monitor and plug in back in after about 5 mins (the last command can reset the monitor and it won't read correctly some of the time).

Again run "sudo modprobe i2c-dev"
and "sudo i2cdetect BUS" and verify the output is the same as it was before;
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- 49 -- -- -- -- -- --
50: 50 -- -- -- -- -- -- -- -- 59 -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

as long as those 3 are there, you're good.

Now run the command:
"sudo ./flashrom -p mstarddc_spi:dev=/dev/i2c-BUS:49 -c "MX25L1605A/MX25L1606E" -w YOUR_FIRMWARE.bin"

with BUS being the bus you found and YOUR_FIRMWARE.bin your padded 2MB firmware v5.

All things going well, it will read, erase and write, then verify the flash chip.

If anything goes wrong, come back and let me know.
I tried 3 different computers and 6 different video inputs on them, both VGA and DVI before it eventually worked for me on my secondary Nvidia DVI input.
If it doesn't work immediately, you may have to try a different computer/video input

Best of luck!
Thanks! Will try tomorrow to unplug the monitor. All of the responses I got until now were without 49 as you can see in my first post.
Will respond with result of unplugging.

hamc17
Posts: 7
Joined: 12 Jan 2018, 20:44

Re: Firmware upgrade using Linux tool, requires no hardware

Post by hamc17 » 13 Jan 2018, 14:33

Fonta wrote: Thanks! Will try tomorrow to unplug the monitor. All of the responses I got until now were without 49 as you can see in my first post.
Will respond with result of unplugging.
Oh ok, have you already attempted the flash?
If so, how far did it get?

If you've haven't attempted the flash yet and the monitor is still working, then you just haven't found the right bus yet :D

Fonta
Posts: 6
Joined: 13 Jan 2018, 10:18

Re: Firmware upgrade using Linux tool, requires no hardware

Post by Fonta » 13 Jan 2018, 14:37

hamc17 wrote:
Fonta wrote: Thanks! Will try tomorrow to unplug the monitor. All of the responses I got until now were without 49 as you can see in my first post.
Will respond with result of unplugging.
Oh ok, have you already attempted the flash?
If so, how far did it get?

If you've haven't attempted the flash yet and the monitor is still working, then you just haven't found the right bus yet :D
Haven’t tried flashing yet because I couldn’t determine the chip.
I’ve probed all busses, so don’t know where else to look.

hamc17
Posts: 7
Joined: 12 Jan 2018, 20:44

Re: Firmware upgrade using Linux tool, requires no hardware

Post by hamc17 » 13 Jan 2018, 15:21

Fonta wrote: Haven’t tried flashing yet because I couldn’t determine the chip.
I’ve probed all busses, so don’t know where else to look.
That is strange... Though my monitor didn't come up over VGA on my main computer, I could only see it through DVI.

Try unplugging the computer then querying all of the buses after modprobe and save the output in a text file.
Then plug it back in, wait a minute and try again, save the output again and compare the two text files to see if any of them are different.

Fonta
Posts: 6
Joined: 13 Jan 2018, 10:18

Re: Firmware upgrade using Linux tool, requires no hardware

Post by Fonta » 15 Jan 2018, 22:18

Tried another few times, and even though the monitor shows up with a couple of available addresses on bus 3, 4 and 5. The address 49 is not available. I think have that I'll have to use the DVI port, but the only pc in the house with a dvi-d port is my main pc and is located on a Nvidia 1080Ti.

I managed to boot my main pc with Ubuntu 14.04 (16.04 wouldn't boot because of acpi errors), after booting and installing the tools I have no i2c busses available though. I believe that's because not the Nvidia driver is used, but some opensource one. Changing the driver to Nvidia requires a restart, and because I'm using a live usb that won't help.

So now I have 2 choices: install ubuntu on one of the drives, or on a usb stick so it will become persistent.
Both options still won't give me the certainty I'll get the I2C busses available though.

=================================================
EDIT:
So I installed Ubuntu on one of the disks in my px, change the driver to Nvidia and was able to find the right bus on DVI.
However after flashing I get this verify error:

Code: Select all

fonta@WS:~/flashrom$ sudo ./flashrom -p mstarddc_spi:dev=/dev/i2c-2:49 -c "MX25L1605A/MX25L1606E" -w firmware.bin
flashrom v0.9.7-r1846 on Linux 4.13.0-25-generic (x86_64)
flashrom is free software, get the source code at http://www.flashrom.org

Calibrating delay loop... OK.
Info: Will try to use device /dev/i2c-2 and address 0x49.
Info: WILL reset the device at the end.
Found Macronix flash chip "MX25L1605A/MX25L1606E" (2048 kB, SPI) on mstarddc_spi.
Reading old flash chip contents... done.
Erasing and writing flash chip... Erase/write done.
Verifying flash... FAILED at 0x00000004! Expected=0x2c, Found=0x02, failed byte count from 0x00000000-0x001fffff: 0x90edb
Your flash chip is in an unknown state.
Please report this on IRC at chat.freenode.net (channel #flashrom) or
mail [email protected], thanks!
fonta@WS:~/flashrom$ 
The monitor seems to work just fine and also gives v005 in the service menu.
Should I be worried about this error?

hamc17
Posts: 7
Joined: 12 Jan 2018, 20:44

Re: Firmware upgrade using Linux tool, requires no hardware

Post by hamc17 » 16 Jan 2018, 13:40

Fonta wrote: The monitor seems to work just fine and also gives v005 in the service menu.
Should I be worried about this error?
If it appears to be working fine, I wouldn't worry too much.
It read and erased/wrote successfully which is the main part, I would test it for a few days and see how it goes.
Verification is nice but the writing of the new firmware is the most important part I would say.
If there are any hiccups you can always flash again!

Glad it worked out for you :D

How did you get the service menu up on the XL2720Z?
I couldn't get it to come up for me.

Fonta
Posts: 6
Joined: 13 Jan 2018, 10:18

Re: Firmware upgrade using Linux tool, requires no hardware

Post by Fonta » 16 Jan 2018, 13:45

hamc17 wrote:
Fonta wrote: The monitor seems to work just fine and also gives v005 in the service menu.
Should I be worried about this error?
If it appears to be working fine, I wouldn't worry too much.
It read and erased/wrote successfully which is the main part, I would test it for a few days and see how it goes.
Verification is nice but the writing of the new firmware is the most important part I would say.
If there are any hiccups you can always flash again!

Glad it worked out for you :D

How did you get the service menu up on the XL2720Z?
I couldn't get it to come up for me.
I just managed to fix my mbr, because Ubuntu screwed it up.
Partly my fault that I installed windows in bios-compatibility mode, because I was too lazy to set the bios setting correctly before installing windows.
Also just configured the strobe utility by following this guide: https://www.reddit.com/r/pcmasterrace/c ... onitor_to/
Simply did exactly what it told me, even with the 1350 pixels trick.

To enter the service menu:
1. power off the monitor
2. press and hold the 4th button from the top
3. keep holding it and press the power button once and release it again
4. keep holding the 4th button untill all lights blink
5. release the 4t button
6. the monitor should power on
7. press the 4th button once
8. you're in the service menu

hamc17
Posts: 7
Joined: 12 Jan 2018, 20:44

Re: Firmware upgrade using Linux tool, requires no hardware

Post by hamc17 » 16 Jan 2018, 14:44

Nice one, got it to work. Thanks!

keksnaps
Posts: 2
Joined: 28 Jan 2018, 17:30

Re: Firmware upgrade using Linux tool, requires no hardware

Post by keksnaps » 29 Jan 2018, 20:35

Hello!

Im recently started informing myself about the possibility of upgrading my XL2411Z so im really new into this. Im currently using the v2 and really want to upgrade to v4 but cant afford a MSTAR ISP upgrader so im looking into this way of upgrading. Did somebody in the past make a easier, noob friendly Tutorial on how to upgrade the Monitor? Maybe also in some sort of a Video Tutorial? The explanation linked in the first post didnt really make stuff clear for me. (again, im a pretty noob if it comes to monitors^^)

Thanks!

Post Reply