The Notebook Review forums were hosted by TechTarget, who shut down them down on January 31, 2022. This static read-only archive was pulled by NBR forum users between January 20 and January 31, 2022, in an effort to make sure that the valuable technical information that had been posted on the forums is preserved. For current discussions, many NBR forum users moved over to NotebookTalk.net after the shutdown.
Problems? See this thread at archive.org.
← Previous pageNext page →

    w550s/t550 LCD screen replacement - brightness set at max.

    Discussion in 'Lenovo' started by giggidy, Apr 5, 2015.

  1. arvest

    arvest Notebook Enthusiast

    Reputations:
    5
    Messages:
    16
    Likes Received:
    7
    Trophy Points:
    6
    I now remember that probably I didn't connect the write pin to the arduino to control it, but just shorted it to GND for write enable. It is better that way, so it wont get loaded with 5V from the Arduino. In the default state is already connected to Vcc through a pull up resistor.
     
  2. Scy|la

    Scy|la Newbie

    Reputations:
    0
    Messages:
    4
    Likes Received:
    0
    Trophy Points:
    5
    @arvest so the part in your arduino code that sets the pin to low or high doesn't actually do anything?
     
  3. KnielsenDK

    KnielsenDK Notebook Enthusiast

    Reputations:
    5
    Messages:
    18
    Likes Received:
    5
    Trophy Points:
    6
    Great work, arvest!

    The pins for The eeprom on the AOU looks much different and will probably require some petit work to shorten and connect.

    But if you are able to hard-unprotect it without the Audrino, vant you then use some of the previous soft-methods for flashene the EDID?

     
  4. arvest

    arvest Notebook Enthusiast

    Reputations:
    5
    Messages:
    16
    Likes Received:
    7
    Trophy Points:
    6
    @Scy|la yes, it will do nothing then. You can ignore it or remove it from code.

    @KnielsenDC i have tried that, but it seems something else is preventing the chip from being written when connected normally to the laptop. I noticed that the i2c adress of the EEPROM in my case changed from 0x54 (connected directly, and in accordance with datasheet) to 0x50 (connected to laptop). I suspect a intermediate control chip is passing i2c messages and blocking write requests.

    This could be verified with proper tools, but might be different for different screens, so it might work in your case.
     
  5. KnielsenDK

    KnielsenDK Notebook Enthusiast

    Reputations:
    5
    Messages:
    18
    Likes Received:
    5
    Trophy Points:
    6
    I hope someone finds out where the eeprom on the AUOs is located. Its hard to find and surely the connectors as well!

    A friend of mine also suggested to change the eeproms on the two displays? Whats your take on that regarding probability of working, given that is is successfully installed? (he has a lab and professional tools for that kind of operation, so I more asking regarding the risk of changing the eeprom between the two AUO displays; the HD+ and the FHD)

    .. and then, I dont know whether to be happy or sad, but it seems as my brightness is stuck somwhere in between max and min? That is a bit odd. Having actually wanting to live with the max brightness until time to do something more radical to make it work.
     
    Last edited: Jun 5, 2016
  6. arvest

    arvest Notebook Enthusiast

    Reputations:
    5
    Messages:
    16
    Likes Received:
    7
    Trophy Points:
    6
    Did you take a good look at the PCB of the screen under the black protective tape? It should look like a 8 pins small micro chip, like the one on one of the photos in the pdf.

    that won't work. The EEPROM on the screen should contain a Lenovo approved ID with characteristics similar to the screen that is actually used. If the EDID tells the laptop it supports only up to 1600x900, but it is actually a FHD screen, I don't know exactly what will happen, but it won't be nice.

    So if you have a HD+ screen, with 60Hz refresh rate, etc etc, (information which you can get from the original EDID from the screen), you should find a Lenovo equivalent EDID, and flash that one. @t456 posted a file a while back with a bunch of Lenovo EDIDs.
     
  7. arvest

    arvest Notebook Enthusiast

    Reputations:
    5
    Messages:
    16
    Likes Received:
    7
    Trophy Points:
    6
    edit: double post
     
  8. t456

    t456 1977-09-05, 12:56:00 UTC

    Reputations:
    1,959
    Messages:
    2,588
    Likes Received:
    2,048
    Trophy Points:
    181
    The effect will be something like this. Can't do much harm, but it isn't very useful either. After all, if the leds aren't physically there then there's nothing the firmware can do to change that.

    Something else; MrFox linked to a tool that might do as a mindbogglingly simple alternative; DimScreen. It works as a hotkey-controlled, semi-transparent overlay. That also makes it a good option for people sensitive to pwm-flicker, since you can leave pwm at 100% and yet still have the same effect as normal pwm-dim.

    [​IMG]
     
    damnation333 likes this.
  9. KnielsenDK

    KnielsenDK Notebook Enthusiast

    Reputations:
    5
    Messages:
    18
    Likes Received:
    5
    Trophy Points:
    6
    I peeled off the black tape again and took some pictures to fully document it and so your are able to investigate it as well, if you like.
    (I found out that the black tape is very effective in limiting light from the LEDs - which means, if there are some tiny bubble/dents when you re-apply the tape again, it will look like the panel is bleeding. However almost only visible when the brightness is at max (which for me is only in bios, in windows it is dimm?!? No one in the same situation?)

    For the pictures and my findings:
    The panel I use is a B140HAN1.2
    [​IMG]

    The front side of the controlboard
    @arvest , I think I have found out the it is the chip with the red box around it. That one is with "GT 45A ...." printed on it, and i possibly a Giant Tech GT24C32A-UDLI-TR (see http://www.giantec-semi.com/upload/datasheet/GT24C32A_DS_Adv.pdf)

    I have located some connectors - but would like a second opinion regarding both the place to connect the audrino to and the right "version" as it is not straight-forward... I have highlighted my guess - and it is purely a guess.
    F1.jpg
    Write Protect: #1
    VCC: #5 or #6 ?? (whether it is XVCC or YVCC)
    SDA: #4 or #2 ?? (whether it is CSDA or MSDA)
    SCL: #3 or #7 ?? (whether it is CSCL or MSCL)
    Ground: [Don't know]??

    The back side of the control board
    B1.jpg

    What's your take on it?
     
    Last edited: Jun 5, 2016
  10. arvest

    arvest Notebook Enthusiast

    Reputations:
    5
    Messages:
    16
    Likes Received:
    7
    Trophy Points:
    6
    interesting, I don't know. Normal case I've heard is full brightness in windows, and controllable everywhere else (bios, linux, macOS).

    Regarding the pin-out, it definitely is the EEPROM. Sadly, I don't see any easy accessable connectors, so it would be a little more complex. Check with a multimeter which pins you can access from where. If you follow the pin-out from the datasheet you have there, everything should work out.
     
  11. KnielsenDK

    KnielsenDK Notebook Enthusiast

    Reputations:
    5
    Messages:
    18
    Likes Received:
    5
    Trophy Points:
    6
    True, I will try that when I come home from the country-side to my workshop. Otherwise I will get a new more fine solder-tip and just solder wires from the arduino directly to the pins.

    Dammit the-Lenovo-guy-who-probably-got-a-raise-for-closing-the-option-of-using-different-spare-parts-on-all-new-models! I hope I could tale some day off our of town with my good friend who knows a thing or two about micro-eletronics, and come back home with a whole new computer experience.

    But thanks again @arvest for showing the path.

    The new EDID-data in your codes, does it contain the complete white-list?
     
  12. arvest

    arvest Notebook Enthusiast

    Reputations:
    5
    Messages:
    16
    Likes Received:
    7
    Trophy Points:
    6
    No. Lenovo's white list is a list of accepted EDIDs, and is located somewhere in the BIOS. It makes sure that the Intel driver in windows only accepts devices that report back an EDID that is on that list. The white-list doesn't just include a screen's model-name, but the full EDID, so just changing the screen's name is not enough.

    @t456 posted somewhere in this thread a zipfile with about 10 accepted EDIDs of 14" Lenovo screen. Find the EDID in that list the one that almost perfectly matches the EDID currently in your screen, and flash that one. I found "AW EDID Editor" to be a great program to compare EDIDs, and you can use "MonInfo" to check if a EDID has a valid checksum before uploading it.

    Maybe @t456 could be so friendly to post these EDIDs again, because I cannot find them anymore...
     
  13. t456

    t456 1977-09-05, 12:56:00 UTC

    Reputations:
    1,959
    Messages:
    2,588
    Likes Received:
    2,048
    Trophy Points:
    181
    Last edited: Jun 7, 2016
    miomi and KnielsenDK like this.
  14. KnielsenDK

    KnielsenDK Notebook Enthusiast

    Reputations:
    5
    Messages:
    18
    Likes Received:
    5
    Trophy Points:
    6
    Thanks @t456 - however, it seems to be 15,6" EDIDs..?

    Regarding (in general) white-listed edids from earlier BIOS' (e.g. 1.09 and 1.10) - I currently have a BIOS version 1.22 (JBET57WW) but i suppose they don't withdraw EDIDs in the whitelists in bios updates!?
    .. meaning that the former bios whitelist edids would be just as valid in more recent BIOS versions..?

    ..And speaking of BIOS'. @t456 - any news on the BIOS-mod path?
     
    Last edited: Jun 7, 2016
  15. t456

    t456 1977-09-05, 12:56:00 UTC

    Reputations:
    1,959
    Messages:
    2,588
    Likes Received:
    2,048
    Trophy Points:
    181
    Oopsie, good catch; edited and re-linked both the 14.0 and 15.6" models.

    And yes, they wouldn't drop support, otherwise existing customers couldn't update their bios without losing brightness control. Also checked more recent bioses, but don't recall any of the later ones had additional white-list edids, hence the '1.09' and '1.10'.

    Have some time this weekend, so will try to make a comprehensive set of all bios mods. If they can be flashed (bypassing the new blocks) it'll have to go by the way of the modified flasher, so will add that to the bioses.
     
    KnielsenDK likes this.
  16. Scy|la

    Scy|la Newbie

    Reputations:
    0
    Messages:
    4
    Likes Received:
    0
    Trophy Points:
    5
    Hey guys, got a question that i didn't find the answer to on the internet: would it be possible to replace a t450s' touchscreen with a matte non touch screen?
     
  17. t30power

    t30power Notebook Deity

    Reputations:
    190
    Messages:
    778
    Likes Received:
    0
    Trophy Points:
    30
    T456, so you can make a custom BIOS to make brightness work but we have to submit the exact dump EDID of the screen we have?
     
  18. t456

    t456 1977-09-05, 12:56:00 UTC

    Reputations:
    1,959
    Messages:
    2,588
    Likes Received:
    2,048
    Trophy Points:
    181
    That's the theory, but we haven't actually confirmed it works yet since no one has managed to flash a modified bios yet (it's a bit trickier than with older systems). DodoBenz did flash one over a programmer, but this did not do the job, unfortunately. Hopefully a 'regular' flash fares better, we'll see ...

    And yes, please submit your panel's edid, but check a few pages back before doing so as it may already be listed. If not, then I'll include it in the mod; the more, the merrier.
    Sure, a touchscreen is a separate device, so touch->non-touch is always possible, though that may not apply to the reversed situation (requiring a connector to plug into).

    Would you like any matte (cheapest) or prefer to hunt down a good one? Remember that a matte will have shallower blacks and colours will look faded vis-à-vis a same-series glossy. Saving some money; you might also remove the touch from the lcd itself, but it's probably glued, so needs a hair dryer or such to melt that. It'd leave a 'bare' display, possibly even without a hardness coating. A glossy at any rate, so it needs an antiglare filter applied post-operation. You might also apply that filter right over the touchscreen of course, but the result will not be as good (distortion due to increased distance filter to lcd).
     
  19. jim22

    jim22 Newbie

    Reputations:
    0
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    5
    Thanks for the writeup arvest. I managed to flash the eeprom on my Panel - a Samsung LTN140HL02, but unfortunately it didn't work for me. I still don't have brightness control on my T450.

    I used an Arduino + Sparkfun level converter as my eeprom is 1.8V. I had to change the code slightly as it didn't work for me:

    In readEEPROM change wire.write(eeaddress); as follows.

    Code:
    byte readEEPROM(int deviceaddress, unsigned int eeaddress)
    {
      byte rdata =0x00;
    
      Wire.beginTransmission(deviceaddress);
      //Wire.write(eeaddress);
      Wire.write((int)(eeaddress >> 8 ));
      Wire.write((int)(eeaddress & 0xFF ));
      Wire.endTransmission();
    
      Wire.requestFrom(deviceaddress,1);
      if(Wire.available()) rdata = Wire.read();
    
      return rdata;
    }
    and in the writeEEPROM the same is needed

    Code:
      void writeEEPROM(int deviceaddress, unsigned int eeaddress, byte data )
      {
      Wire.beginTransmission(deviceaddress);
      //Wire.write(eeaddress);
    
      Wire.write((int)(eeaddress >> 8 ));
      Wire.write((int)(eeaddress & 0xFF ));
    
      Wire.write(data);
      Wire.endTransmission();
      delay(5);
      }
    
    
    Plus before the output to Pin 4, I needed to set the pin Mode;
    pinMode(WP_PIN,OUTPUT);
    digitalWrite(WP_PIN, LOW);

    --

    I verified that the data read out from the eeprom matches what is read from Linux using get-edid and also what is in the registry in Windows.
    Flashed the new eeprom data from the whitelisted LTN140HL05 panel, power cycled the panel and read the eeprom back this matched what was flashed.

    Unfortunately the laptop still only 'sees' the old edid data when read from Linux and in Windows, there is an IC between the eeprom and the edp connector on the panel and I suspect for some reason it's not passing on the updated EDID data from the eeprom.

    I guess for me the only solution is an updated BIOS with my EDID included. @t456 I have attached this hoping that you can make an updated BIOS for the T450 with additional whitelisted EDID's

    Code:
    00 FF FF FF FF FF FF 00 4C 83 48 4C 00 00 00 00
    00 17 01 04 95 1F 11 78 0A 36 25 93 56 55 93 29
    1D 50 54 00 00 00 01 01 01 01 01 01 01 01 01 01
    01 01 01 01 01 01 60 39 80 DC 70 38 40 40 30 20
    25 00 35 AE 10 00 00 1A E7 2D 80 DC 70 38 40 40
    30 20 25 00 35 AE 10 00 00 1A 00 00 00 FE 00 47
    54 4B 44 59 80 31 34 30 48 4C 0A 20 00 00 00 00
    00 00 41 21 94 00 10 00 00 02 01 0A 20 20 00 BA
    
    Thanks.
     
  20. DodoBenz

    DodoBenz Newbie

    Reputations:
    0
    Messages:
    8
    Likes Received:
    2
    Trophy Points:
    6
    I come back here with good news. Eventually got brightness control but using the long way around. Here goes the tale, previously we had tried adding EDIDs to the two t450 modules with the hope that the system would read our modified tables but all in vain. Then i tried to check other models with the problem and didn't find any talk of our issue with the X1 carbon, and found this thread https://www.bios-mods.com/forum/Thread-Guide-Whitelist-remove-for-2014-Lenovo-thinkpad where kimipm transfers a module from a t450s to his X1 carbon gen 3. So i dived in, downloaded the latest x1 carbon gen 3 bios, ran the fl1 file through uefitool and extracted our two modules as ffs files. Used HXD to inject/replace my edid in the modules. Then i used uefitool to 'replace as is' in my t450 bios the same modules. I then got out my flash clip and flashed the final patched bios, 10 beeps twice with reboots, disconnect cmos battery. System then rebooted and in windows, it reinstalled the intel graphics driver and my screen DIMMED, restart and osd and brightness buttons work. Thanks to this thread and biosmod for the invaluable information and t456 for getting me interested in modifying the bios myself. I hope that's clear enough. Basically it seems the t450 has code to skip the edid table entirely even after adding our edid (that the x1 doesn't have) or something else that is out of the scope of my conjecture and knowledge. Hoping this helps you all.
     
    BulletMan and t456 like this.
  21. t30power

    t30power Notebook Deity

    Reputations:
    190
    Messages:
    778
    Likes Received:
    0
    Trophy Points:
    30
    Good news DodoBenz,

    I have a T450 laying around unused since I ordered a T460 with the FHD panel so that is encouraging, maybe a side project.
     
  22. DodoBenz

    DodoBenz Newbie

    Reputations:
    0
    Messages:
    8
    Likes Received:
    2
    Trophy Points:
    6
    Went on further with the tinkering today, and streamlined the method a little bit. The donating bios for the module can be from a T440. This way you retain code for nvidia graphics if you have it. Only the CC71B... module (lenovoVideoInitDxe) needs to be change, but i put my edid in both the modules. And that worked as well. Just felt the t440 is closer to home :)
     
  23. t456

    t456 1977-09-05, 12:56:00 UTC

    Reputations:
    1,959
    Messages:
    2,588
    Likes Received:
    2,048
    Trophy Points:
    181
    Nice job! Do wonder why the earlier replace action didn't work ... perhaps T450's security measures have been ramped up vis-à-vis the T440's? Or it might simply have to do with using a non-standard flashing method? Made a compare before with 1:1 binary flash using programmer and regular DOS flash, the result differed in more than just nvar/bootup options ...

    Let's try using the default bioses first, if that fails we can always revert to using their predecessor's bioses. Anyway, assembled a bunch of modded bioses and modules. Left out replacing the ' LenovoIgdCustomize' module, too, since DodoBenz didn't need that to get it working. We can always replace it after all, if turns out to be necessary.

    Lenovo T450, T450s, T550 and W550s - edid whitelist mod v1.7z
    Code:
    model············bios version··edid pnp··panel···········checksum edid··
    ········································································
    T450 and T450s ··bios v1.18····AUO103D···B140HANxx.x·····60·············
    ·················bios v1.19····AUO113D···B140HAN01.1·····A5·············
    ·················bios v1.20····AUO123D···B140HAN01.2·····85·············
    ·················bios v1.21····AUO133D···B140HANxx.x·····71·············
    ·················bios v1.22····CMN14B1···N140HCE-EAA·····A2·············
    ·······························LGD0446···LP140WF3-SPL1···A8·············
    ·······························SDC4C48···LTN140HL02-201··BA·············
    ········································································
    T550 and W550s···bios v1.07····AUO12ED···B156HAN01.2·····22·············
    ·················bios v1.09····LGD044F···LP156WF4-SPL1···13·············
    ·················bios v1.10····LGD046F···LP156WF6-SPxx···92·············
    ·················bios v1.14·············································
    [​IMG]

    Which bios you have doesn't matter when it concerns supported edids; all have the same, modified list. Do check your edid's checksum beforehand; even if the pnp id and panel nr. are identical, the edid version has to match too. Use MonInfo to find out, the checksum being the last hex value of the edid:

    [​IMG]

    As for flashing a modified bios or module (if this is possible);
    • At your own risk.
    • Flash the same version bios or module, don't use these files to flash a newer version. If current bios version isn't in the list then run a regular upgrade first.
    Now, haven't got a Lenovo myself, so can't test these things unfortunately, but there's something of interest that may or may not work and would be much safer than a regular flash; the ' /mod:' option:

    [​IMG]
    So ... does that mean:
    1. You flash only a specific module (the included ffs files), overwriting the current module in the active bios?
    2. Does it update a local bios image (.fd file) with a separate, newer module (.ffs file)?
    3. Does it find a specific module ('LenovoVideoInitDxe') inside the bios image and flash only that module to the active bios?
    It's probably the option #2, but #1 and #3 would be very neat, so it'd be best if anyone attempting to flash these would use the following options in this sequence:
    Code:
    test 1, attempt module flash only:
    WinFlash.exe /sadc /sa /ss /MOD:LenovoVideoInitDxe_XYZ.ffs
    
    test 2, update stock bios with module:
    WinFlash.exe /sadc /sa /ss /MOD:LenovoVideoInitDxe_XYZ.ffs XYZ_stock.fd
    
    test 3, flash module only, using embedded name ('LenovoVideoInitDxe'):
    WinFlash.exe /sadc /sa /ss /MOD:LenovoVideoInitDxe.ffs XYZ_mod.fd
    
    test 4, flash normally:
    WinFlash.exe /sadc /sa /ss XYZ_mod.fd
    
    test 5, force flash:
    WinFlash.exe /sadc /sa /ss /force XYZ_mod.fd
    Not sure about the last option, regarding the ' /force' switch; read this post first to make sure you don't inadvertently overwrite your embedded OEM Windows license key.
     
  24. KnielsenDK

    KnielsenDK Notebook Enthusiast

    Reputations:
    5
    Messages:
    18
    Likes Received:
    5
    Trophy Points:
    6
    @jim22 I am sorry to hear that it didn't work for you, but thanks for sharing.

    When I find time to take the deep dive to go through it all based on yours and the write-up (and other posts) from @arvest . I will post my finding when I get to it, but will keep me updated here meanwhile.
     
  25. jim22

    jim22 Newbie

    Reputations:
    0
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    5
    Thanks for your work on this @t456.

    Tried options 1-4 on a T450, with BIOS JBET55WW 1.20 with the following results (BIOS Flash protection is off in the BIOS - doesn't require supervisor password);

    1.
    WinFlash.exe /sadc /sa /ss /MOD:LenovoVideoInitDxe_T450_T450s_v120.ffs
    BSOD, PAGE_FAULT_IN_NONPAGED_AREA winflash64.sys

    2.
    WinFlash.exe /sadc /sa /ss /MOD:LenovoVideoInitDxe_T450_T450s_v120.ffs T450T450s_v120_stock.fd
    Error - Capsule update not support logo/mod/raw options

    3.
    WinFlash.exe /sadc /sa /ss /MOD:LenovoVideoInitDxe.ffs T450T450s_v120.fd
    Error as above

    4.
    WinFlash.exe /sadc /sa /ss T450T450s_v120.fd
    Please close all applications, capsule is preparing to load into memory. Click ok
    Then
    Error Driver fail while loading SMM Service.
     
  26. jim22

    jim22 Newbie

    Reputations:
    0
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    5
    Thanks for your work on this @t456.

    Tried options 1-4 on a T450, with BIOS JBET55WW 1.20 with the following results (BIOS Flash protection is off in the BIOS - doesn't require supervisor password);

    1.
    WinFlash.exe /sadc /sa /ss /MOD:LenovoVideoInitDxe_T450_T450s_v120.ffs
    BSOD, PAGE_FAULT_IN_NONPAGED_AREA winflash64.sys

    2.
    WinFlash.exe /sadc /sa /ss /MOD:LenovoVideoInitDxe_T450_T450s_v120.ffs T450T450s_v120_stock.fd
    Error - Capsule update not support logo/mod/raw options

    3.
    WinFlash.exe /sadc /sa /ss /MOD:LenovoVideoInitDxe.ffs T450T450s_v120.fd
    Error as above

    4.
    WinFlash.exe /sadc /sa /ss T450T450s_v120.fd
    Please close all
     
  27. t456

    t456 1977-09-05, 12:56:00 UTC

    Reputations:
    1,959
    Messages:
    2,588
    Likes Received:
    2,048
    Trophy Points:
    181
    Ok, a few things to check off:
    1. Not sure if length of filename is too long; original were 8 characters or less, so try renaming them.
    2. See if the (renamed) non-modded version does flash, at least.
    3. Supposedly the modified dll (environment.dll) is key to flash a modded bios, but perhaps this winflash version is simply too old to flash these bioses ... try the original dll and see if it complains about 'security-something-something'.
    4. Last thing is to use the orginal dll and bios, then work from there and see at what point it fails; modified dll and/or bios?
     
  28. jim22

    jim22 Newbie

    Reputations:
    0
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    5
    I've tested these and..
    1. Making the files shorter than 8 characters makes no difference
    2. No, the stock BIOS doesn't flash error about SMM Service as above.
    3. Stock environment.dll and modified BIOS doesn't flash, error about SMM Service
    4. Stock environment.dll and stock BIOS (renamed to t450_12.fd) file doesn't flash, error about SMM Service.

    Thanks.
     
  29. t456

    t456 1977-09-05, 12:56:00 UTC

    Reputations:
    1,959
    Messages:
    2,588
    Likes Received:
    2,048
    Trophy Points:
    181
    And thanks for not yet giving up ... one further step backwards:

    T450 and T450s, bios v1.20 - jbuj55ww_test.7z

    [​IMG]

    There's also the 'winuptp.exe' and 'winuptp64.exe', these can be run directly as in a normal update. See what happens when pointing to the stock FL1 and the modded version. Perhaps it'll yield a useful error string.

    SMM = System Management Mode, btw. There's an interesting article on SMM as it relates to bios security which uses the T450 v1.10 bios as an example. Don't think Intel Boot Guard applies to these systems, but just to be sure; which Intel CPU and chipset do you have on this T450? Both have to support that security measure for it be effective, but if they are then it could explain DodoBenz's unsuccessful, first direct-flash attempt:
    Perhaps the difference with the X1 Carbon bios is that it doesn't support the feature or, as DodoBenz already suggested, it simply does not use edid white-listing at all, even though it does have the modules for it. If so then merely flashing an un-modified X1 bios ought to work, but that too would require a force-flash (or soldering and programmer, of course).
     
  30. jim22

    jim22 Newbie

    Reputations:
    0
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    5
    Running the supplied winuptp64.exe with either the stock or the modded FL1 file gives the error:
    Flash Module cannot be found.
    The utility process has not completed.

    Log file has:

    [2016/6/19 20:40:21]
    OS = Windows 10 64bit
    Flash module cannot be found.

    I still have the BIOS update on disk from when I updated to 1.20 so I have ran this with stock and get;
    BIOS image is the same as BIOS ROM.
    An update is not necessary at this time.

    Log;
    [2016/6/19 20:42:39]
    OS = Windows 10 64bit
    Driver Loading....Done
    System BIOS Version -> JBET55WW
    Applying BIOS Version -> JBET55WW
    System EC Version -> JBHT15WW
    Applying EC Version -> JBHT15WW

    With the Modded FL1 file, get:
    BIOS image is the same as BIOS ROM.
    An update is not necessary at this time.

    Log;
    [2016/6/19 20:46:46]
    OS = Windows 10 64bit
    Driver Loading....Done
    System BIOS Version -> JBET55WW
    Applying BIOS Version -> JBET55WW
    System EC Version -> JBHT15WW
    Applying EC Version -> JBHT15WW

    I also tried reinstalling the stock Flash utility and replacing the FL1 file with the modded one, same message: BIOS Image is the same as BIOS ROM.

    Laptop has an Intel i5 5300u (with vPro) , for chipset the datasheet just says;
    Intel SoC (System on Chip) platform

    Thanks.
     
  31. jim22

    jim22 Newbie

    Reputations:
    0
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    5
    Tried a downgrade to 1.19 using stock BIOS - success.
    Tried an upgrade to the modded BIOS using stock utils, fails to flash:
    [2016/6/20 19:20:22]
    OS = Windows 10 64bit
    Driver Loading....Done
    System BIOS Version -> JBET54WW
    Applying BIOS Version -> JBET55WW
    System EC Version -> JBHT15WW
    Applying EC Version -> JBHT15WW
    AC adapter/Battery check....OK.

    BIOS Flashing....
    The number of retries of BIOS update = 1
    The number of retries of BIOS update = 2
    The number of retries of BIOS update = 3
    Failed.
    Error : Failed to verify Secure Flash image.

    Error code = 234
     
  32. t456

    t456 1977-09-05, 12:56:00 UTC

    Reputations:
    1,959
    Messages:
    2,588
    Likes Received:
    2,048
    Trophy Points:
    181
    Ok, found an X220 modified bios + modified flasher which appears to be the latest 'normal' flash kit that still worked (without needing a soldering iron and programmer, that is). The instructions use nothing more than 'WINUPTP.EXE -s', so ... nothing about specifying which files are the bios and ec file or where it's located (name of folder). There's a few T450(s) bioses that all have the exact same flash util files (binary compare), yet a different folder name where the '$0AJB000.FL1' and '$0AJB000.FL2' files are located in. Conclusion; name of subfolder doesn't matter, but the bios+ec have to be named identically?

    So ... let's try the X220 flasher with the modified FL1 and stock FL2 (EC version identical to the v1.19):

    ThinkPad T450, T450s - bios v1.20 mod v2.7z

    Renamed a few files to '_bak' since they seemed out-of-place with this system. In theory, running 'FLASH.BAT' ought to be all it takes, but the legible strings inside 'OemSlp20.efi' and 'Slp20.pfae' aren't too encouraging. Perhaps these need to be side-tracked as well.

    Ah, and since this is a vPro system; see if there are shenanigans like TPM and any other suspicious 'security' feature in the bios menu. It's unlikely any of those options are non-hidden, but what the hey ... if the result's still the same then we need to look into either signing the modded bios (would think impossible without access to Lenovo's tool) or disabling the blocks. Some of them can be tackled relatively easily, it seems, so we could try that next. Last resort is several potential Secure Boot hacks (last post), but these entail a fair bit of work ... to say the least.
     
  33. jim22

    jim22 Newbie

    Reputations:
    0
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    5
    Running flash.bat doesn't appear to do very much. Checking the log file produced it has:
    OS = Windows 7 32bit
    Driver Loading....Failed.
    The Utility does not support this system or this OS version.

    (I also originally tried under Windows 10 64bit and the result was the same other than the OS reported in the log file)

    I have already disabled anything to do with secure boot and TPM in the BIOS.

    I have also tried the @DodoBenz's method (thanks for this), with a HW Programmer (using a hex edited ffs file from a T440) and it works - I have brightness in Windows, unfortunately on every cold boot and resume from hibernate I have 5 beeps followed by 5 beeps. The system does boot and work fine, after this fairly long delay. Disabling the TPM chip makes no difference.

    Using any modified BIOS, e.g. with original LenovoVideoInitDxe.ffs file hex edited with EDID, or the one that you provided @t456 produces the same beeping, but no brightness control.

    HW Flashing the backed up stock BIOS image removes the beeping at startup.

    I tested modifying BIOS 1.20 and 1.17, to see if there was any difference in an older version (1.17 is the first one with win10 support) - which there isn't.

    I also tried the following to unlock the Advanced Menu
    https://www.bios-mods.com/forum/archive/index.php?thread-21640.html

    This works, I got the advanced menu but haven't managed to disable the beeping, there is a lot of new options, but I believe I did try the obvious ones relating to security. I did manage to make the OS unbootable at one stage with an ACPI error using this menu, so if anyone tries this be careful and remember what you've changed.

    On the link you found @t456 about the T220 BIOS it mentions:

    BIOS with unlocked memory speed, recalculated SHA-1 checksums, RSA signature and replaced RSA public key (no beeping when security chip is enabled)

    I think the RSA signature may be the issue, but no information on how this is done - any ideas where to start with this?

    Thanks.
     
  34. jim22

    jim22 Newbie

    Reputations:
    0
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    5
    Further update;
    T450 BIOS using a hex edited LenoVideoInitDxe.ffs from a T440, only works up to BIOS version 1.20, with 1.23 or 1.24 there is no brightness control.

    Went back to what @DodoBenz first did and used the X1 Carbon 3rd Gen LenovoVideoInitDxe Module, hex edited - brightness now works with BIOS version 1.24.

    Still have the beeping, haven't yet found a solution.
     
    Last edited: Jun 29, 2016
  35. DodoBenz

    DodoBenz Newbie

    Reputations:
    0
    Messages:
    8
    Likes Received:
    2
    Trophy Points:
    6
    I also used to get the beeping after flashing any modded bios, but this seemed to go away if i disconnected cmos battery after flash for some seconds and then on boot i would enter bios settings and save any changes on exit then set time in windows. I can't remember which order i did these but seemed to work each time. Someone on lenovo forums also talked about disabling TPM in bios as a possible remedy
     
  36. mtlfact

    mtlfact Notebook Enthusiast

    Reputations:
    0
    Messages:
    11
    Likes Received:
    0
    Trophy Points:
    5
    So is this, for now, the only working way to enable brightness control? I just purchased the SOIC8 CLIP and CH341A tools from ebay. Is that all I would need hardware-wise for my T450? I reallyyyyyy want to get brightness control working on my machine no matter what it takes.
     
  37. t30power

    t30power Notebook Deity

    Reputations:
    190
    Messages:
    778
    Likes Received:
    0
    Trophy Points:
    30
    Has anyone tried disabling the TPM to get rid of the beeps? I haven't had a go with a spare T450 I had with the crappy HD panel.
     
  38. likot

    likot Newbie

    Reputations:
    0
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    5
    Hi Brighteners,

    I would be grateful for your help according to topic in this thread.
    Just like the majority of you I've replaced crappy TN panel with FHD panel. In my case FHD display is AUO B140HAN01.3 and it works on my T450 with UEFI BIOS v 1.14.

    I've tried to look through all pages in this thread but there are multiple solutions depend on BIOS version and type of display and laptop.

    Does it make sence to update BIOS with the newest one - v.1.24 ? I wonder if it solve brightness set problem ? Is there any other 'easy' solution how can I control brightness on my laptop without buying SOIC8 CLIP and other CH341A tools ?

    I'm not a programmer and it would be hard for me to edit BIOS, is there any way to solve this problem.

    Your advice would be highly appreciated. @t456 also your suggestion would be more than welcome :)

    Thanks in advance ;)
     
  39. t456

    t456 1977-09-05, 12:56:00 UTC

    Reputations:
    1,959
    Messages:
    2,588
    Likes Received:
    2,048
    Trophy Points:
    181
    Well ... no; flashing the bios to a later version will not help (unless it's a Lenovo-branded AUO that wasn't supported in an earlier bios version).

    At this point a programmer is it; either for the lcd's eeprom or the bios eeprom. The lcd's is actually easier, even if the chip is puny. Benefit is that there'll be no beeping or other complaints from the security measures implemented in the bios.

    Modded bios would've been by far the easiest, also since it's possible to remove the whitelist entirely; decompile the white-list check and make it point to ' valid' in both instances, whatever edid is detected (iirc, that's how the wlan mod works as well). Unfortunately, it's way beyond my capabilities to wrap the modded version back to something that'll be swallowed by the system without a hitch. Afaik, this particular bios security version remains uncompromised ... at least, haven't found a single successful example, unlike Lenovo bioses from earlier systems.

    There's one other option for a permanent fix; bypass the lcd's edid entirely and feed the system with a Lenovo-approved edid on a secondary eeprom. Think I hadn't mentioned this before since not a single eDP panel specification sheet listed edid connection pins (unlike LVDS) and presumed they were piggy-backing on the data pins. However, ran into a sole data sheet that didn't say " NC", " No Connection", " Reserved" and/or " For testing" (out of almost fifty; it's like a conspiracy :confused: ). This specific beta version actually said ' edid clock' and ' edid data' for pins #24 and #25 (can't recall which was which; the beta sheet is on a different laptop):

    [​IMG]

    That happens to be the B140HAN01.3, but any 30-pin, 2-lane eDP has the same pin-out (and the 1-lane simply has a few pins disused). Drawback is that it still requires snipping two wires (#24 and #25) and splicing an extra wire on two other pins (#12/#13 and #15/#16). Also, the eeprom adapter is rather large (at least, presuming you want to fit it behind the bezel). Good news is that it's perfectly feasible to make a tiny pcb with a male and female 30-pin eDP connector. That'd fit right in-between the lcd connector and the lcd cable, making any panel id as a Lenovo-stickered panel. A plug 'n play solution; no soldering, cable-cutting, programmer or bios-hacks required.

    What we'd need is someone who can write/draw a blueprint for this 'eeprom interceptor' and send it to some manufacturers for a quote. Cost isn't much, mainly the eDP connectors, so at $10-20 or so it's probably make a decent profit.

    Btw, as a quick/interim fix, there's also the software filter option (pseudo-brightness control).
     
  40. BulletMan

    BulletMan Newbie

    Reputations:
    0
    Messages:
    3
    Likes Received:
    3
    Trophy Points:
    6
    I owe you a beer! I replaced my crappy HD+ screen with a supposed B140HAN01.2 (I actually received a glossy screen titled "B140HAN01.3" but with an EDID identifying it as the mythical B140HAN02.0...). Ran moninfo on the new screen, saved the edid, grabbed the latest X1 carbon BIOS .exe installer, and followed your instructions to extract my bios (1.24, the latest t450s BIOS), as well as the two modules of interest from the X1 carbon .fl1 file, replaced one of the EDID entries in both modules with my new screen's EDID, then replaced the existing modules with my modified ones, and finally flashed the finished product to the EEPROM. Got the usual 2 sets of 10 beeps, and voila! Brightness controls are back. Thank you guys so much!
     
    Last edited: Jul 12, 2016
  41. mtlfact

    mtlfact Notebook Enthusiast

    Reputations:
    0
    Messages:
    11
    Likes Received:
    0
    Trophy Points:
    5
    I guess bios programmer it is for me! Wish me luck. Ordered from eBay so it will take a few weeks.
     
  42. t30power

    t30power Notebook Deity

    Reputations:
    190
    Messages:
    778
    Likes Received:
    0
    Trophy Points:
    30
    Hey BulletMan, could you post the whole process?
     
  43. BulletMan

    BulletMan Newbie

    Reputations:
    0
    Messages:
    3
    Likes Received:
    3
    Trophy Points:
    6
    Sure. I used the following:

    CH341A USB Programmer
    SOIC 8-pin test clips
    Spare PC/Laptop to work on
    Flash drive to transfer files to spare PC
    B140HAN02.0 replacement LCD
    Thinkpad t450s with garbage B140RTN0.3 screen

    And followed these steps:
    1. Replace the LCD with your new one, and boot into Windows. You won't likely have brightness controls yet.
    2. Open moninfo and extract your EDID (highlight the selected display and hit Save As... )
    3. Download the latest X1 Carbon bios installer (I got the executable), and extract the .fl1 file from it with winrar, 7zip, etc... (thanks to DodoBenz for thinking of this)
    4. Open the .fl1 file in UEFItool and extract as-is the two modules of interest and save them somewhere (search GUIDs 81334616-86CE-49C2-B6F9-1804E61C73F6 and CC71B046-CF07-4DAE-AEAD-7046845BCD8A)
    5. Open up HxD and edit the two modules you saved. You'll want to replace an EDID entry with the EDID of your new display (just grab any block that looks like 00 FF FF FF FF FF...20 0A 00 XX). I replaced the same entry in both modules.
    6. Send both of the modified modules to your secondary PC.
    7. Disable the internal battery, unplug the CMOS battery, power your thinkpad off and, use the CH341A programmer and test clips to extract the BIOS. Save that on your second PC.
    8. Open up the dumped BIOS in UEFITool, and locate the two modules once more. This time, replace as-is each of your modded modules, then save your new BIOS as a .bin file
    9. Finally, write your new BIOS to your thinkpad with the programmer.
    10. Plug the CMOS battery back in, and put the laptop back together. Power it on and you should hear the usual two sets of ten beeps. Then you should be able to boot into Windows with brightness controls (hopefully) enabled!
     
    Last edited: Jul 17, 2016
    Faruk, mtlfact and t456 like this.
  44. t30power

    t30power Notebook Deity

    Reputations:
    190
    Messages:
    778
    Likes Received:
    0
    Trophy Points:
    30
    Alright, thank you for the instructions.

    So I need to tinker with the hardware to get the BIOS, I thought the process was easier by simply patching the BIOS.
    Anyways, I already bought a B140HAN01.2 for a unused T450, I'll decide if all this trouble is worth just to keep using Windows, maybe installing Ubuntu on it will suffice
     
  45. mtlfact

    mtlfact Notebook Enthusiast

    Reputations:
    0
    Messages:
    11
    Likes Received:
    0
    Trophy Points:
    5
    Any way you can explain where the bios chip is located on the Mobo (for a t450)? Either through pictures or an explanation.
     
  46. DodoBenz

    DodoBenz Newbie

    Reputations:
    0
    Messages:
    8
    Likes Received:
    2
    Trophy Points:
    6
    Next to right Ram slot under silver heat tape, just remove the tape gently and you'll see the 8 pin chip with a round indent on one corner
     
  47. mtlfact

    mtlfact Notebook Enthusiast

    Reputations:
    0
    Messages:
    11
    Likes Received:
    0
    Trophy Points:
    5
    I followed your instructions to a tee and....I have brightness control! Thanks a lot !! :D :D :D
     
  48. jerzmacow

    jerzmacow Newbie

    Reputations:
    0
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    5
  49. mtlfact

    mtlfact Notebook Enthusiast

    Reputations:
    0
    Messages:
    11
    Likes Received:
    0
    Trophy Points:
    5
  50. grosmar

    grosmar Notebook Enthusiast

    Reputations:
    0
    Messages:
    31
    Likes Received:
    1
    Trophy Points:
    16
    Guys,

    I've ordered the programmer and everything, but i'm really not familiar with these things. Maybe someone who get through on these steps could give me some help if I need when I will do it? I think in 1-2 weeks it should arrive.
     
← Previous pageNext page →