[GH-ISSUE #823] REQUEST: Razer Blade 15 (RTX 2060, mid 2019) #718

Closed
opened 2026-02-26 00:33:25 +03:00 by kerem · 12 comments
Owner

Originally created by @marcinciarka on GitHub (Jan 20, 2020).
Original GitHub issue: https://github.com/hirschmann/nbfc/issues/823

I need help finding out the right config for my blade (the fans are killing me, they spin with no load when the external monitor is plugged in).

Originally created by @marcinciarka on GitHub (Jan 20, 2020). Original GitHub issue: https://github.com/hirschmann/nbfc/issues/823 I need help finding out the right config for my blade (the fans are killing me, they spin with no load when the external monitor is plugged in).
kerem 2026-02-26 00:33:25 +03:00
  • closed this issue
  • added the
    Stale
    label
Author
Owner

@marcinciarka commented on GitHub (Jan 20, 2020):

I ran some ec-dump:

0x56: 2E,29                  ,2B,29   ,2D,2A,29      ,28         ,27         ,26                     ,25,26
0x58: 2A                              ,2B,2C,00
0x59: 32                                    ,33   ,34      ,33   ,32         ,31            ,30
0x5A: 2B                                       ,2A      ,29   ,28         ,27      ,26            ,25
0x5B: 2A                                                ,29,28,27   ,26      ,25            ,24
0xA8: C7,C6                                 ,C7,C6,C7,C6,C8            ,C6                           ,C7,C6

About halfway the fans slowed down significantly.

<!-- gh-comment-id:576345309 --> @marcinciarka commented on GitHub (Jan 20, 2020): I ran some ec-dump: ``` 0x56: 2E,29 ,2B,29 ,2D,2A,29 ,28 ,27 ,26 ,25,26 0x58: 2A ,2B,2C,00 0x59: 32 ,33 ,34 ,33 ,32 ,31 ,30 0x5A: 2B ,2A ,29 ,28 ,27 ,26 ,25 0x5B: 2A ,29,28,27 ,26 ,25 ,24 0xA8: C7,C6 ,C7,C6,C7,C6,C8 ,C6 ,C7,C6 ``` About halfway the fans slowed down significantly.
Author
Owner

@marcinciarka commented on GitHub (Jan 21, 2020):

I've got some new stuff, I managed to find the EmbeddedControl in the DSDT:


OperationRegion(ERAM, EmbeddedControl, Zero, 0xFF)
Field(ERAM, ByteAcc, NoLock, Preserve)
{
    RTYR, 8,
    RTMH, 8,
    RTDY, 8,
    RTHR, 8,
    RTME, 8,
    NDTT, 8,
    Offset(0x10),	//Offset(16),
    BADN, 128,
    ECVR, 32,
    Offset(0x28),	//Offset(40),
    BDID, 8,
    Offset(0x56),	//Offset(86),
    CPUT, 8,
    CP2T, 8,
    GPUT, 8,
    Offset(0x5D),	//Offset(93),
    VOLT, 8,
    PCHT, 8,
    TMMD, 8,
    ECCM, 256,
    Offset(0x90),	//Offset(144),
    BIF0, 16,
    BIF1, 16,
    BIF2, 16,
    BIF3, 16,
    BIF4, 16,
    BIF5, 16,
    BIF6, 16,
    BIF7, 16,
    BIF8, 16,
    BST0, 16,
    BST1, 16,
    BST2, 16,
    BST3, 16,
    PSTA, 8,
    ECN0, 8,
    Offset(0xE1),	//Offset(225),
    ECE1, 8,
    Offset(0xE5),	//Offset(229),
    ECE2, 8,
    Offset(0xE9),	//Offset(233),
    DGPS, 8,
    , 8,
    ACTP, 8,
    CORP, 8,
    SKID, 8,
    Offset(0xF8),	//Offset(248),
    ECMD, 8,
    ECAD, 8,
    ECDT, 8,
}
Method(_Q13, 0, NotSerialized)
{
    Store(0x13, DBG8)
    Notify(PR00, 0x80)
    Notify(BAT0, 0x80)
    Notify(BAT0, 0x81)
    Notify(AC0, 0x80)
    If(LEqual(DPTF, One))
    {
        If(LEqual(PWRE, One))
        {
            Notify(TPWR, 0x81)
        }
        Notify(IETM, 0x86)
        If(LEqual(CHGE, One))
        {
            Notify(CHRG, 0x80)
        }
    }
}
Method(_Q14, 0, NotSerialized)
{
    Store(0x14, DBG8)
    And(PSTA, 0x04, Local0)
    Store(Zero, LIDS)
    If(Local0)
    {
        Store(One, LIDS)
    }
    If(IGDS)
    {
        If(LEqual(LIDS, One))
        {
            Store(0x03, ^^^GFX0.CLID)
        }
        Else
        {
            Store(Zero, ^^^GFX0.CLID)
        }
    }
    Notify(LID0, 0x80)
}
Method(_Q15, 0, NotSerialized)
{
    If(LEqual(DPTF, One))
    {
        If(LEqual(PWRE, One))
        {
            Notify(TPWR, 0x86)
        }
        Notify(IETM, 0x86)
        If(LEqual(CHGE, One))
        {
            Notify(CHRG, 0x80)
        }
    }
}
Method(_Q16, 0, NotSerialized)
{
    If(LAnd(LEqual(DPTF, One), LEqual(PWRE, One)))
    {
        Notify(TPWR, 0x80)
    }
}
Method(_Q17, 0, NotSerialized)
{
    If(LAnd(LEqual(DPTF, One), LEqual(PWRE, One)))
    {
        Notify(TPWR, 0x80)
    }
}
Method(_Q21, 0, NotSerialized)
{
    Store(0x21, DBG8)
    Store(ECE1, DBG8)
    Store(ECE1, CPPC)
    PNOT()
}
Method(_Q22, 0, NotSerialized)
{
    Store(0x22, DBG8)
    ^^^B0D4.SPUR(CORP)
}
Method(_Q23, 0, NotSerialized)
{
}
Method(_Q30, 0, NotSerialized)
{
    Store(0x30, DBG8)
    If(LEqual(DPTF, One))
    {
        Store(TMMD, ODV0)
        Notify(IETM, 0x88)
    }
    If(LAnd(LEqual(SKID, One), LEqual(TMMD, One)))
    {
        Store(One, ^^^PEG0.PEGP.CTGP)
    }
    Else
    {
        Store(Zero, ^^^PEG0.PEGP.CTGP)
    }
    Notify(^^^PEG0.PEGP, 0xC0)
}
Method(_Q32, 0, NotSerialized)
{
    Store(One, ECUP)
    If(LEqual(DPTF, One))
    {
        Store(Zero, DPTF)
        Notify(IETM, 0x08)
        Notify(IETM, 0xA0)
        Notify(IETM, One)
    }
}
Method(_QD1, 0, NotSerialized)
{
    Notify(^^^PEG0.PEGP, 0xD1)
    Sleep(0x32)
    Store(0xD1, DGPS)
    Store(0xD1, DBG8)
}
Method(_QD2, 0, NotSerialized)
{
    Notify(^^^PEG0.PEGP, 0xD2)
    Sleep(0x32)
    Store(0xD2, DGPS)
    Store(0xD2, DBG8)
}
Method(_QD3, 0, NotSerialized)
{
    Notify(^^^PEG0.PEGP, 0xD3)
    Sleep(0x32)
    Store(0xD3, DGPS)
    Store(0xD3, DBG8)
}
Method(_QD4, 0, NotSerialized)
{
    Notify(^^^PEG0.PEGP, 0xD4)
    Sleep(0x32)
    Store(0xD4, DGPS)
    Store(0xD4, DBG8)
}
Method(_QD5, 0, NotSerialized)
{
    Notify(^^^PEG0.PEGP, 0xD5)
    Sleep(0x32)
    Store(0xD5, DGPS)
    Store(0xD5, DBG8)
}
Device(LID0)
{
    Name(_HID, EISAID("PNP0C0D"))
    Method(_STA, 0, NotSerialized)
    {
        Return(0x0F)
    }
    Method(_LID, 0, NotSerialized)
    {
        Return(LIDS)
    }
}

Full file:
DSDT.txt

<!-- gh-comment-id:576924001 --> @marcinciarka commented on GitHub (Jan 21, 2020): I've got some new stuff, I managed to find the _EmbeddedControl_ in the DSDT: ``` OperationRegion(ERAM, EmbeddedControl, Zero, 0xFF) Field(ERAM, ByteAcc, NoLock, Preserve) { RTYR, 8, RTMH, 8, RTDY, 8, RTHR, 8, RTME, 8, NDTT, 8, Offset(0x10), //Offset(16), BADN, 128, ECVR, 32, Offset(0x28), //Offset(40), BDID, 8, Offset(0x56), //Offset(86), CPUT, 8, CP2T, 8, GPUT, 8, Offset(0x5D), //Offset(93), VOLT, 8, PCHT, 8, TMMD, 8, ECCM, 256, Offset(0x90), //Offset(144), BIF0, 16, BIF1, 16, BIF2, 16, BIF3, 16, BIF4, 16, BIF5, 16, BIF6, 16, BIF7, 16, BIF8, 16, BST0, 16, BST1, 16, BST2, 16, BST3, 16, PSTA, 8, ECN0, 8, Offset(0xE1), //Offset(225), ECE1, 8, Offset(0xE5), //Offset(229), ECE2, 8, Offset(0xE9), //Offset(233), DGPS, 8, , 8, ACTP, 8, CORP, 8, SKID, 8, Offset(0xF8), //Offset(248), ECMD, 8, ECAD, 8, ECDT, 8, } Method(_Q13, 0, NotSerialized) { Store(0x13, DBG8) Notify(PR00, 0x80) Notify(BAT0, 0x80) Notify(BAT0, 0x81) Notify(AC0, 0x80) If(LEqual(DPTF, One)) { If(LEqual(PWRE, One)) { Notify(TPWR, 0x81) } Notify(IETM, 0x86) If(LEqual(CHGE, One)) { Notify(CHRG, 0x80) } } } Method(_Q14, 0, NotSerialized) { Store(0x14, DBG8) And(PSTA, 0x04, Local0) Store(Zero, LIDS) If(Local0) { Store(One, LIDS) } If(IGDS) { If(LEqual(LIDS, One)) { Store(0x03, ^^^GFX0.CLID) } Else { Store(Zero, ^^^GFX0.CLID) } } Notify(LID0, 0x80) } Method(_Q15, 0, NotSerialized) { If(LEqual(DPTF, One)) { If(LEqual(PWRE, One)) { Notify(TPWR, 0x86) } Notify(IETM, 0x86) If(LEqual(CHGE, One)) { Notify(CHRG, 0x80) } } } Method(_Q16, 0, NotSerialized) { If(LAnd(LEqual(DPTF, One), LEqual(PWRE, One))) { Notify(TPWR, 0x80) } } Method(_Q17, 0, NotSerialized) { If(LAnd(LEqual(DPTF, One), LEqual(PWRE, One))) { Notify(TPWR, 0x80) } } Method(_Q21, 0, NotSerialized) { Store(0x21, DBG8) Store(ECE1, DBG8) Store(ECE1, CPPC) PNOT() } Method(_Q22, 0, NotSerialized) { Store(0x22, DBG8) ^^^B0D4.SPUR(CORP) } Method(_Q23, 0, NotSerialized) { } Method(_Q30, 0, NotSerialized) { Store(0x30, DBG8) If(LEqual(DPTF, One)) { Store(TMMD, ODV0) Notify(IETM, 0x88) } If(LAnd(LEqual(SKID, One), LEqual(TMMD, One))) { Store(One, ^^^PEG0.PEGP.CTGP) } Else { Store(Zero, ^^^PEG0.PEGP.CTGP) } Notify(^^^PEG0.PEGP, 0xC0) } Method(_Q32, 0, NotSerialized) { Store(One, ECUP) If(LEqual(DPTF, One)) { Store(Zero, DPTF) Notify(IETM, 0x08) Notify(IETM, 0xA0) Notify(IETM, One) } } Method(_QD1, 0, NotSerialized) { Notify(^^^PEG0.PEGP, 0xD1) Sleep(0x32) Store(0xD1, DGPS) Store(0xD1, DBG8) } Method(_QD2, 0, NotSerialized) { Notify(^^^PEG0.PEGP, 0xD2) Sleep(0x32) Store(0xD2, DGPS) Store(0xD2, DBG8) } Method(_QD3, 0, NotSerialized) { Notify(^^^PEG0.PEGP, 0xD3) Sleep(0x32) Store(0xD3, DGPS) Store(0xD3, DBG8) } Method(_QD4, 0, NotSerialized) { Notify(^^^PEG0.PEGP, 0xD4) Sleep(0x32) Store(0xD4, DGPS) Store(0xD4, DBG8) } Method(_QD5, 0, NotSerialized) { Notify(^^^PEG0.PEGP, 0xD5) Sleep(0x32) Store(0xD5, DGPS) Store(0xD5, DBG8) } Device(LID0) { Name(_HID, EISAID("PNP0C0D")) Method(_STA, 0, NotSerialized) { Return(0x0F) } Method(_LID, 0, NotSerialized) { Return(LIDS) } } ``` Full file: [DSDT.txt](https://github.com/hirschmann/nbfc/files/4094179/DSDT.txt)
Author
Owner

@cosemo1996 commented on GitHub (Jan 26, 2020):

Hi, I have the Razer Blade Mid 2019 too.. Same problems.. ThrottleStop (undervolting -130mV) help a lot but a config for NBFC would be better for the fan noise :/

<!-- gh-comment-id:578455977 --> @cosemo1996 commented on GitHub (Jan 26, 2020): Hi, I have the Razer Blade Mid 2019 too.. Same problems.. ThrottleStop (undervolting -130mV) help a lot but a config for NBFC would be better for the fan noise :/
Author
Owner

@cosemo1996 commented on GitHub (Jan 30, 2020):

Do you have a config for the Razer Blade 15 Mid 19 ? Du you need help ?

<!-- gh-comment-id:580200911 --> @cosemo1996 commented on GitHub (Jan 30, 2020): Do you have a config for the Razer Blade 15 Mid 19 ? Du you need help ?
Author
Owner

@marcinciarka commented on GitHub (Jan 30, 2020):

I haven't figured out out yet, and yes, I need help.

<!-- gh-comment-id:580204895 --> @marcinciarka commented on GitHub (Jan 30, 2020): I haven't figured out out yet, and yes, I need help.
Author
Owner

@cosemo1996 commented on GitHub (Jan 30, 2020):

Ok, I am reading the "How to create a NBFC config".. What can I do?

<!-- gh-comment-id:580213712 --> @cosemo1996 commented on GitHub (Jan 30, 2020): Ok, I am reading the "How to create a NBFC config".. What can I do?
Author
Owner

@dsuth1 commented on GitHub (Apr 16, 2020):

Upvoting this. Anyway I can assist @dreszczyk ? This tool is new to me but I'm a software engineer and own the same model, looking for the same fix.

<!-- gh-comment-id:614881638 --> @dsuth1 commented on GitHub (Apr 16, 2020): Upvoting this. Anyway I can assist @dreszczyk ? This tool is new to me but I'm a software engineer and own the same model, looking for the same fix.
Author
Owner

@marcinciarka commented on GitHub (Apr 16, 2020):

Upvoting this. Anyway I can assist @dreszczyk ? This tool is new to me but I'm a software engineer and own the same model, looking for the same fix.

Well, we're on the same boat. I cannot figure out how to map the config properly, one time I ended up with 255% battery charge 🤔

We need to wait for Synapse update (not likely) or someone to create a config (not likely too).

<!-- gh-comment-id:614883540 --> @marcinciarka commented on GitHub (Apr 16, 2020): > Upvoting this. Anyway I can assist @dreszczyk ? This tool is new to me but I'm a software engineer and own the same model, looking for the same fix. Well, we're on the same boat. I cannot figure out how to map the config properly, one time I ended up with 255% battery charge 🤔 We need to wait for Synapse update (not likely) or someone to create a config (not likely too).
Author
Owner

@l0f3n commented on GitHub (Aug 20, 2020):

You have managed to make any progress?

<!-- gh-comment-id:677533883 --> @l0f3n commented on GitHub (Aug 20, 2020): You have managed to make any progress?
Author
Owner

@kirankunigiri commented on GitHub (Jan 8, 2021):

Any updates on this? I really, really need it for my Razer Blade to be silent when I record audio! I am going to have to return this if I can't find a way to turn off the fans in a week :(

<!-- gh-comment-id:756648805 --> @kirankunigiri commented on GitHub (Jan 8, 2021): Any updates on this? I really, really need it for my Razer Blade to be silent when I record audio! I am going to have to return this if I can't find a way to turn off the fans in a week :(
Author
Owner

@kinglouie commented on GitHub (Jan 8, 2021):

@kirankunigiri I would suggest you return it. I did the same with my 15" Blade 2019 :( This laptop has really nice specs but the fans are just horrible.

<!-- gh-comment-id:756655646 --> @kinglouie commented on GitHub (Jan 8, 2021): @kirankunigiri I would suggest you return it. I did the same with my 15" Blade 2019 :( This laptop has really nice specs but the fans are just horrible.
Author
Owner

@github-actions[bot] commented on GitHub (Jul 9, 2021):

This issue is stale because it has been open more than 180 days with no activity. If nobody comments within 7 days, this issue will be closed

<!-- gh-comment-id:876817090 --> @github-actions[bot] commented on GitHub (Jul 9, 2021): This issue is stale because it has been open more than 180 days with no activity. If nobody comments within 7 days, this issue will be closed
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/nbfc-hirschmann#718
No description provided.