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)
Post Reply
Bishi
Posts: 78
Joined: 20 Feb 2014, 17:23

Re: Firmware upgrade using Linux tool, requires no hardware

Post by Bishi » 07 May 2014, 11:42

pipomolo42 wrote:
ziConiCz wrote:When I write "sudo gedit /etc/apt/source.list" I get this error:

Code: Select all

(gedit:6363): Gtk-WARNING **: Calling Inhibit failed: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any service files
What can be the problem? :(
Does it prevent the gedit text editor from opening the file? If it's not the case, you can ignore this error.
The file was empty when it opened so I just did the GUI edit and it worked, but yes im a complete Linux noob so im sure there are better ways :D

User avatar
Chief Blur Buster
Site Admin
Posts: 12059
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: Firmware upgrade using Linux tool, requires no hardware

Post by Chief Blur Buster » 07 May 2014, 11:52

<Linux Scripting Geeks!>

WANTED: Easy Bash Script / Bootable ISO
(or perl, or python, or favourite rube goldberg machine)

What we need is a volunteer that creates a bootable Linux ISO (to burn to a CD or to USB thumbdrive) that automatically upgrades a BENQ Z-Series monitor.
Basically:
  1. Boot to a compatible Linux kernel, with AMD/NVIDIA/Intel video drivers with DDC/CI support
    .
  2. Automatically probe for all Z-series monitors connected.
    ### Simply load DDC caps string and grep for a regex "XL2[47][12][01]Z". You've found the Z-series monitor.
    ### Or choose a better probing method. Bonus if you support multimonitor (not essential; can also ask users to upgrade one screen at a time).
    ### Display error message if no Z-series monitors found.
    .
  3. Detect which firmware version the Z-series is
    ### You can probe for the existence or missing VCP commands 0x40 0x41 0x42 (DDC/CI MCCS commands). Make sure VCP 0x10 exists (brightness) but if 0x40-0x42 are missing, then it's definitely a Version 1 Z-series.
    ### You can probe the version string instead, if you prefer.
    .
  4. Verify the monitor is not currently being used as a display monitor
    ### Make sure monitor is not being used
    ### Pop up an error message (or severe warning message of bricking).
    .
  5. The monitor firmware upgrade files are available at http://gaming.benq.com/downloads
    ### You can either autodownload them (wget), or include them all on the .ISO image of the CD/thumbdrive.
    .
  6. Display a menu of what you want to do (1. upgrade, 2. verify, etc)
    .
  7. Displaying a STERN WARNING message (about bricking risks & about trying again via a different computer if things fails).
    You can also mention http://www.blurbusters.com/benq/diy-firmware-upgrade/ "if things go wrong".
    (this is placeholder; this URL will eventually be updated with your credit & Linux instructions, as well as a link to this forum thread)
    .
  8. Execute the firmware upgrade.
Have all of this on an ISO file, so that novice users and Linux noobs can download the ISO file and then upgrade their Z-series monitor easily, without needing to know how to operate Linux. Feel free to pop up your favourite thanks/credit screen in your ISO (non-obscene, of course). I'll give you credit on blurbusters.com as the author of the ISO, made downloadable from Blur Busters.

This will make LOTS of Linux noobs happy; a bootable ISO that upgrades a Z-series monitor mostly automagically.

</Linux Scripting Geeks!>
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on: BlueSky | Twitter | Facebook

Image
Forum Rules wrote:  1. Rule #1: Be Nice. This is published forum rule #1. Even To Newbies & People You Disagree With!
  2. Please report rule violations If you see a post that violates forum rules, then report the post.
  3. ALWAYS respect indie testers here. See how indies are bootstrapping Blur Busters research!

ziConiCz
Posts: 9
Joined: 05 May 2014, 08:29

Re: Firmware upgrade using Linux tool, requires no hardware

Post by ziConiCz » 07 May 2014, 12:08

When I try to run the ISP patch on your blog (pipomolo) it keeps saying unknown command on every command even though I installed all the packages and enabled the universe/multiverse repository :?

pipomolo42
Posts: 30
Joined: 24 Apr 2014, 06:08

Re: Firmware upgrade using Linux tool, requires no hardware

Post by pipomolo42 » 07 May 2014, 12:15

For extra safety, I added a noreset option to the patch available at http://boeglin.org/static/benq/0001-Add ... ocol.patch

You can enable it by adding ",noreset=1" to the command-lines, like this:

Code: Select all

sudo ./flashrom -p mstarddc_spi:dev=/dev/i2c-1:49,noreset=1 …
the noreset option is also automatically set to 1 in the event a read/write error is detected.

This will cause the flasher not to send the RESET command at the end of its operation. Since this command does more than just exiting the ISP mode (it seems to reset the whole screen, making it re-read its firmware), I think it's safer to disable it, and once the read/write finished without error, you can just start the flash detection command (by launching flashrom without the '-c, -r ,-w' options) without the noreset option, and it will finally reset the screen at the end.

This should make the whole procedure safer : as long as you don't unplug you screen's power or don't attach it to another output, it should not need to re-read its firmware.
Last edited by pipomolo42 on 07 May 2014, 12:17, edited 1 time in total.

Dignitas
Posts: 6
Joined: 10 Apr 2014, 02:55

Re: Firmware upgrade using Linux tool, requires no hardware

Post by Dignitas » 07 May 2014, 12:16

Bishi wrote:
pipomolo42 wrote:
ziConiCz wrote:When I write "sudo gedit /etc/apt/source.list" I get this error:

Code: Select all

(gedit:6363): Gtk-WARNING **: Calling Inhibit failed: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any service files
What can be the problem? :(
Does it prevent the gedit text editor from opening the file? If it's not the case, you can ignore this error.
The file was empty when it opened so I just did the GUI edit and it worked, but yes im a complete Linux noob so im sure there are better ways :D
You must write "sudo gedit /etc/apt/sources.list" ;)

ziConiCz
Posts: 9
Joined: 05 May 2014, 08:29

Re: Firmware upgrade using Linux tool, requires no hardware

Post by ziConiCz » 07 May 2014, 15:16

Hey everyone so far this is where I am

Code: Select all

ubuntu@ubuntu:~/flashrom$ sudo i2cdetect -l
i2c-0	i2c       	Radeon i2c bit bus 0x90         	I2C adapter
i2c-1	i2c       	Radeon i2c bit bus 0x91         	I2C adapter
i2c-2	i2c       	Radeon i2c bit bus 0x92         	I2C adapter
i2c-3	i2c       	Radeon i2c bit bus 0x93         	I2C adapter
i2c-4	i2c       	Radeon i2c bit bus 0x14         	I2C adapter
ubuntu@ubuntu:~/flashrom$ sudo i2cdetect 1
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c-1.
I will probe address range 0x03-0x77.
Continue? [Y/n] 
As you can see all the buses have equal names, unlike the procedures that I already seen, should I still probe?

pipomolo42
Posts: 30
Joined: 24 Apr 2014, 06:08

Re: Firmware upgrade using Linux tool, requires no hardware

Post by pipomolo42 » 07 May 2014, 15:29

ziConiCz wrote:As you can see all the buses have equal names, unlike the procedures that I already seen, should I still probe?
yes

ziConiCz
Posts: 9
Joined: 05 May 2014, 08:29

Re: Firmware upgrade using Linux tool, requires no hardware

Post by ziConiCz » 07 May 2014, 15:33

Code: Select all

ubuntu@ubuntu:~/flashrom$ sudo i2cdump -r 0-127 0 0x50
No size specified (using byte-data access)
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c-0, address 0x50, mode byte
Probe range limited to 0x00-0x7f.
Continue? [Y/n] y
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef
00: 00 ff ff ff ff ff ff 00 09 d1 28 7f 45 54 00 00    ........??(?ET..
10: 33 17 01 03 0e 3c 22 78 2e 14 d1 a5 58 52 a2 26    3????<"x.???XR?&
20: 0c 50 54 a5 6b 80 d1 c0 45 7c 61 7c 81 80 81 bc    ?PT?k???E|a|????
30: 95 3c 31 7c 01 01 02 3a 80 18 71 38 2d 40 58 2c    ?<1|???:??q8-@X,
40: 45 00 55 50 21 00 00 1e 00 00 00 ff 00 36 43 44    E.UP!..?.....6CD
50: 30 34 31 31 34 53 4c 30 0a 20 00 00 00 fd 00 18    04114SL0? ...?.?
60: 78 0f 87 15 00 0a 20 20 20 20 20 20 00 00 00 fc    x???.?      ...?
70: 00 42 65 6e 51 20 58 4c 32 37 32 30 5a 0a 00 c6    .BenQ XL2720Z?.?

ubuntu@ubuntu:~/flashrom$ sudo ./flashrom -p mstarddc_spi:dev=/dev/i2c-0:49
flashrom v0.9.7-r1787 on Linux 3.13.0-24-generic (i686)
flashrom is free software, get the source code at http://www.flashrom.org

Error: Unknown programmer "mstarddc_spi:dev=/dev/i2c-0:49". Valid choices are:
internal, dummy, nic3com, nicrealtek, gfxnvidia, drkaiser, satasii, serprog,
buspirate_spi, rayer_spi, pony_spi, nicintel, nicintel_spi, ogp_spi, satamv,
linux_spi.
Please run "flashrom --help" for usage info.
After identifying the flash chip I get this, what may be the issue?

pipomolo42
Posts: 30
Joined: 24 Apr 2014, 06:08

Re: Firmware upgrade using Linux tool, requires no hardware

Post by pipomolo42 » 07 May 2014, 17:08

Well, it seems the patch wasn't applied before flashrom was compiled. That's why the mstarddc_spi programmer isn't available.

Apocalypse
Posts: 6
Joined: 12 Mar 2014, 09:36

Re: Firmware upgrade using Linux tool, requires no hardware

Post by Apocalypse » 08 May 2014, 08:22

This does seem more interesting to purchase a 2411z or a 2420z now. Unfortunately, I don't really understand a lot of this terminology haha.

Post Reply