diff --git a/Changelog.md b/Changelog.md
index c4d09c9434..49157bc950 100644
--- a/Changelog.md
+++ b/Changelog.md
@@ -20,6 +20,7 @@ AppleALC Changelog
- Fix mute on Conxexant CX 20724 by Human7900
- Added ALC1220 layout-id 17 for Gigabyte Z490 Vision G manual SP/HP by NIBLIZE
- Added ALC255 layout-id 82 for minisforum U820 by daliansky
+- Added ALC282 layout-id 21 for TinyMonster ECO by DalianSky
#### v1.6.0
- Added `use-layout-id` property to use `layout-id` as is on Macs
diff --git a/Resources/ALC282/Info.plist b/Resources/ALC282/Info.plist
index 877559fa55..2728571fcb 100755
--- a/Resources/ALC282/Info.plist
+++ b/Resources/ALC282/Info.plist
@@ -36,6 +36,14 @@
Path
layout13.xml.zlib
+
+ Comment
+ ALC282 for TinyMonster ECO by DalianSky
+ Id
+ 21
+ Path
+ layout21.xml.zlib
+
Comment
Custom ALC282 lenovo y430p by loverto
@@ -143,6 +151,14 @@
Path
PlatformsID.xml.zlib
+
+ Comment
+ ALC282 for TinyMonster ECO by DalianSky
+ Id
+ 21
+ Path
+ Platforms21.xml.zlib
+
Comment
Custom ALC282 lenovo y430p by loverto
diff --git a/Resources/ALC282/Platforms21.xml b/Resources/ALC282/Platforms21.xml
new file mode 100755
index 0000000000..cd87b37083
--- /dev/null
+++ b/Resources/ALC282/Platforms21.xml
@@ -0,0 +1,165 @@
+
+ CommonPeripheralDSP
+
+
+ DeviceID
+ 0
+ DeviceType
+ Headphone
+
+
+ DeviceID
+ 0
+ DeviceType
+ Microphone
+
+
+ PathMaps
+
+
+ PathMap
+
+
+
+
+
+ Amp
+
+ Channels
+
+
+ Bind
+ 1
+ Channel
+ 1
+
+
+ Bind
+ 2
+ Channel
+ 2
+
+
+ MuteInputAmp
+
+ PublishMute
+
+ PublishVolume
+
+ VolumeInputAmp
+
+
+ NodeID
+ 8
+
+
+ Amp
+
+ Channels
+
+
+ Bind
+ 1
+ Channel
+ 1
+
+
+ Bind
+ 2
+ Channel
+ 2
+
+
+ MuteInputAmp
+
+ PublishMute
+
+ PublishVolume
+
+ VolumeInputAmp
+
+
+ NodeID
+ 35
+
+
+ Boost
+ 3
+ NodeID
+ 25
+
+
+
+
+
+
+
+
+ Amp
+
+ MuteInputAmp
+
+ PublishMute
+
+ PublishVolume
+
+ VolumeInputAmp
+
+
+ NodeID
+ 33
+
+
+ Amp
+
+ MuteInputAmp
+
+ PublishMute
+
+ PublishVolume
+
+ VolumeInputAmp
+
+
+ NodeID
+ 13
+
+
+ Amp
+
+ Channels
+
+
+ Bind
+ 1
+ Channel
+ 1
+
+
+ Bind
+ 2
+ Channel
+ 2
+
+
+ MuteInputAmp
+
+ PublishMute
+
+ PublishVolume
+
+ VolumeInputAmp
+
+
+ NodeID
+ 3
+
+
+
+
+
+ PathMapID
+ 282
+
+
+
diff --git a/Resources/ALC282/layout21.xml b/Resources/ALC282/layout21.xml
new file mode 100755
index 0000000000..2720958f86
--- /dev/null
+++ b/Resources/ALC282/layout21.xml
@@ -0,0 +1,833 @@
+
+ LayoutID
+ 21
+ PathMapRef
+
+
+ CodecID
+
+ 283902594
+
+ Headphone
+
+ Inputs
+
+ LineIn
+
+ IntSpeaker
+
+ LineIn
+
+ MuteGPIO
+ 1342242841
+ SignalProcessing
+
+ SoftwareDSP
+
+ DspFunction0
+
+ FunctionInfo
+
+ DspFuncInstance
+ 0
+ DspFuncName
+ DspNoiseReduction
+ DspFuncProcessingIndex
+ 0
+
+ ParameterInfo
+
+ 1
+ 0
+ 2
+ 1
+ 3
+ 0
+ 4
+ -1073029587
+ 5
+ UNiAwmgCb8KcoIHCjGeGwko3g8KLS3nClQV9wnr7hMLRp43CAIiSwlajlcLnK5jCHMuYwrl9lcJXm4/CBhmQwuJvlMKbxJTC7qyUwtjDl8KU+ZzCnCaewsmuncK/i5/CJtSewp8um8Lex5rC2QCdwq1lnsJ105zC9qmcwrMcnsLj/qDCZs2hwhtCocIFoZ/CCxOewrxwncIKiZrCyO+YwsmtmsID5p7CeNqfwhNMncKWIp3ChrycwiJcm8IkjJ3CsKqfwuByn8Iu8ZvCvyiWwhbdkcIEu4vCUfWLwoYrlcIy5J3Ci9ycwp0lnsK0QaDCOiygwnxdn8IztJ7Ciq2fwhFzosLIZaPCwUOjwo6TosIkR6LC6vehwtrwosIdtJ/CXLmbwlSZmcKDhJXCDFGRwnV6j8JTjY/CrqGQwgqYk8INzpjCuTufwrjlocKviKPC5YqlwgdmpcKZ2aXCGiumwq95osJOIJ/Cxl+ewtWGl8KmPJPC+sSawkdHo8JWB6LCskyhwqk7pcIth6nCh4Wswk+crcK9J6zCYJWqwmVJq8K8063C+1GuwiQAqMJjvZ/Cjo2hwsParsLRXrXCec63wr6IucLzD7rCuQy7wjs8vsKfJsLCxgrFwqVeyMIT6srCU+nMwv+M0MKaftbCpcjdwm+p5sL/CfHCHcT8wrp3A8PiJAzD
+
+ PatchbayInfo
+
+
+ DspFunction1
+
+ FunctionInfo
+
+ DspFuncInstance
+ 1
+ DspFuncName
+ DspEqualization32
+ DspFuncProcessingIndex
+ 1
+
+ ParameterInfo
+
+ 1
+ 0
+ 9
+ 0
+ Filter
+
+
+ 2
+ 2
+ 3
+ 0
+ 4
+ 0
+ 5
+ 1
+ 6
+ 1119939268
+ 7
+ 1060439283
+ 8
+ -1069504319
+
+
+ 2
+ 2
+ 3
+ 4
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1165674830
+ 7
+ 1106304591
+ 8
+ -1073964333
+
+
+ 2
+ 2
+ 3
+ 5
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1141348835
+ 7
+ 1084737706
+ 8
+ -1065063953
+
+
+ 2
+ 2
+ 3
+ 6
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1139052693
+ 7
+ 1080938866
+ 8
+ -1073319056
+
+
+ 2
+ 2
+ 3
+ 8
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1161958655
+ 7
+ 1099668786
+ 8
+ -1073319056
+
+
+ 2
+ 2
+ 3
+ 9
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1148922426
+ 7
+ 1086508776
+ 8
+ -1076100424
+
+
+ 2
+ 2
+ 3
+ 10
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1169908270
+ 7
+ 1106659062
+ 8
+ -1078236516
+
+
+ 2
+ 2
+ 3
+ 11
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1168889995
+ 7
+ 1103911084
+ 8
+ -1082886964
+
+
+ 2
+ 2
+ 3
+ 12
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1160729473
+ 7
+ 1095247586
+ 8
+ -1076100424
+
+
+ 2
+ 2
+ 3
+ 19
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1171440929
+ 7
+ 1103785747
+ 8
+ -1075032379
+
+
+ 2
+ 2
+ 3
+ 21
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1163187837
+ 7
+ 1102690138
+ 8
+ -1073319056
+
+
+ 2
+ 2
+ 3
+ 23
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1172459204
+ 7
+ 1098523915
+ 8
+ -1062927862
+
+
+ 2
+ 2
+ 3
+ 24
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1175303133
+ 7
+ 1102375714
+ 8
+ -1061058782
+
+
+ 2
+ 2
+ 3
+ 25
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1179874390
+ 7
+ 1097945441
+ 8
+ -1054338996
+
+
+ 2
+ 2
+ 3
+ 26
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1167504019
+ 7
+ 1102555367
+ 8
+ -1044515201
+
+
+ 2
+ 2
+ 3
+ 27
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1177335863
+ 7
+ 1102845396
+ 8
+ -1054739513
+
+
+ 2
+ 2
+ 3
+ 31
+ 4
+ 0
+ 5
+ 0
+ 6
+ 1184146588
+ 7
+ 1060439283
+ 8
+ -1069504319
+
+
+
+ PatchbayInfo
+
+ InputPort0
+
+ PortInstance
+ 0
+ PortWidth
+ 1
+ SourceFuncInstance
+ 0
+ SourcePortIndex
+ 0
+
+ InputPort1
+
+ PortInstance
+ 1
+ PortWidth
+ 1
+ SourceFuncInstance
+ 0
+ SourcePortIndex
+ 1
+
+
+
+ DspFunction2
+
+ FunctionInfo
+
+ DspFuncInstance
+ 2
+ DspFuncName
+ DspGainStage
+ DspFuncProcessingIndex
+ 2
+
+ ParameterInfo
+
+ 1
+ 0
+ 2
+ 1065353216
+ 3
+ 1065353216
+
+ PatchbayInfo
+
+ InputPort0
+
+ PortInstance
+ 0
+ PortWidth
+ 1
+ SourceFuncInstance
+ 1
+ SourcePortIndex
+ 0
+
+ InputPort1
+
+ PortInstance
+ 1
+ PortWidth
+ 1
+ SourceFuncInstance
+ 1
+ SourcePortIndex
+ 1
+
+
+
+
+
+
+ Mic
+
+ MuteGPIO
+ 0
+ SignalProcessing
+
+ SoftwareDSP
+
+ DspFunction0
+
+ FunctionInfo
+
+ DspFuncInstance
+ 0
+ DspFuncName
+ DspNoiseReduction
+ DspFuncProcessingIndex
+ 0
+
+ ParameterInfo
+
+ 1
+ 0
+ 2
+ 1
+ 3
+ 0
+ 4
+ -1073029587
+ 5
+ UNiAwmgCb8KcoIHCjGeGwko3g8KLS3nClQV9wnr7hMLRp43CAIiSwlajlcLnK5jCHMuYwrl9lcJXm4/CBhmQwuJvlMKbxJTC7qyUwtjDl8KU+ZzCnCaewsmuncK/i5/CJtSewp8um8Lex5rC2QCdwq1lnsJ105zC9qmcwrMcnsLj/qDCZs2hwhtCocIFoZ/CCxOewrxwncIKiZrCyO+YwsmtmsID5p7CeNqfwhNMncKWIp3ChrycwiJcm8IkjJ3CsKqfwuByn8Iu8ZvCvyiWwhbdkcIEu4vCUfWLwoYrlcIy5J3Ci9ycwp0lnsK0QaDCOiygwnxdn8IztJ7Ciq2fwhFzosLIZaPCwUOjwo6TosIkR6LC6vehwtrwosIdtJ/CXLmbwlSZmcKDhJXCDFGRwnV6j8JTjY/CrqGQwgqYk8INzpjCuTufwrjlocKviKPC5YqlwgdmpcKZ2aXCGiumwq95osJOIJ/Cxl+ewtWGl8KmPJPC+sSawkdHo8JWB6LCskyhwqk7pcIth6nCh4Wswk+crcK9J6zCYJWqwmVJq8K8063C+1GuwiQAqMJjvZ/Cjo2hwsParsLRXrXCec63wr6IucLzD7rCuQy7wjs8vsKfJsLCxgrFwqVeyMIT6srCU+nMwv+M0MKaftbCpcjdwm+p5sL/CfHCHcT8wrp3A8PiJAzD
+
+ PatchbayInfo
+
+
+ DspFunction1
+
+ FunctionInfo
+
+ DspFuncInstance
+ 1
+ DspFuncName
+ DspEqualization32
+ DspFuncProcessingIndex
+ 1
+
+ ParameterInfo
+
+ 1
+ 0
+ 9
+ 0
+ Filter
+
+
+ 2
+ 2
+ 3
+ 0
+ 4
+ 0
+ 5
+ 1
+ 6
+ 1119939268
+ 7
+ 1060439283
+ 8
+ -1069504319
+
+
+ 2
+ 2
+ 3
+ 4
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1165674830
+ 7
+ 1106304591
+ 8
+ -1073964333
+
+
+ 2
+ 2
+ 3
+ 5
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1141348835
+ 7
+ 1084737706
+ 8
+ -1065063953
+
+
+ 2
+ 2
+ 3
+ 6
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1139052693
+ 7
+ 1080938866
+ 8
+ -1073319056
+
+
+ 2
+ 2
+ 3
+ 8
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1161958655
+ 7
+ 1099668786
+ 8
+ -1073319056
+
+
+ 2
+ 2
+ 3
+ 9
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1148922426
+ 7
+ 1086508776
+ 8
+ -1076100424
+
+
+ 2
+ 2
+ 3
+ 10
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1169908270
+ 7
+ 1106659062
+ 8
+ -1078236516
+
+
+ 2
+ 2
+ 3
+ 11
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1168889995
+ 7
+ 1103911084
+ 8
+ -1082886964
+
+
+ 2
+ 2
+ 3
+ 12
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1160729473
+ 7
+ 1095247586
+ 8
+ -1076100424
+
+
+ 2
+ 2
+ 3
+ 19
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1171440929
+ 7
+ 1103785747
+ 8
+ -1075032379
+
+
+ 2
+ 2
+ 3
+ 21
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1163187837
+ 7
+ 1102690138
+ 8
+ -1073319056
+
+
+ 2
+ 2
+ 3
+ 23
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1172459204
+ 7
+ 1098523915
+ 8
+ -1062927862
+
+
+ 2
+ 2
+ 3
+ 24
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1175303133
+ 7
+ 1102375714
+ 8
+ -1061058782
+
+
+ 2
+ 2
+ 3
+ 25
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1179874390
+ 7
+ 1097945441
+ 8
+ -1054338996
+
+
+ 2
+ 2
+ 3
+ 26
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1167504019
+ 7
+ 1102555367
+ 8
+ -1044515201
+
+
+ 2
+ 2
+ 3
+ 27
+ 4
+ 0
+ 5
+ 4
+ 6
+ 1177335863
+ 7
+ 1102845396
+ 8
+ -1054739513
+
+
+ 2
+ 2
+ 3
+ 31
+ 4
+ 0
+ 5
+ 0
+ 6
+ 1184146588
+ 7
+ 1060439283
+ 8
+ -1069504319
+
+
+
+ PatchbayInfo
+
+ InputPort0
+
+ PortInstance
+ 0
+ PortWidth
+ 1
+ SourceFuncInstance
+ 0
+ SourcePortIndex
+ 0
+
+ InputPort1
+
+ PortInstance
+ 1
+ PortWidth
+ 1
+ SourceFuncInstance
+ 0
+ SourcePortIndex
+ 1
+
+
+
+ DspFunction2
+
+ FunctionInfo
+
+ DspFuncInstance
+ 2
+ DspFuncName
+ DspGainStage
+ DspFuncProcessingIndex
+ 2
+
+ ParameterInfo
+
+ 1
+ 0
+ 2
+ 1065353216
+ 3
+ 1065353216
+
+ PatchbayInfo
+
+ InputPort0
+
+ PortInstance
+ 0
+ PortWidth
+ 1
+ SourceFuncInstance
+ 1
+ SourcePortIndex
+ 0
+
+ InputPort1
+
+ PortInstance
+ 1
+ PortWidth
+ 1
+ SourceFuncInstance
+ 1
+ SourcePortIndex
+ 1
+
+
+
+
+
+
+ Outputs
+
+ Headphone
+
+ PathMapID
+ 282
+
+
+
diff --git a/Resources/PinConfigs.kext/Contents/Info.plist b/Resources/PinConfigs.kext/Contents/Info.plist
index 456aff3bbb..c3db3954c5 100644
--- a/Resources/PinConfigs.kext/Contents/Info.plist
+++ b/Resources/PinConfigs.kext/Contents/Info.plist
@@ -3498,6 +3498,24 @@
WakeVerbReinit
+
+ AFGLowPowerState
+ AwAAAA==
+ CodecID
+ 283902594
+ Comment
+ ALC282 for TinyMonster ECO by DalianSky
+ ConfigData
+ AScc8AEnHQABJx4AAScfQAFHHPABRx0AAUceAAFHH0ABlxwwAZcdAQGXHqcBlx+QAdccUAHXHZAB1x5GAdcfQAIXHCACFx0QAhceIQIXHwACFwwC
+ FuncGroup
+ 1
+ LayoutID
+ 21
+ WakeConfigData
+ AZcHJA==
+ WakeVerbReinit
+
+
AFGLowPowerState
AwAAAA==