diff --git a/smartmontools/ChangeLog b/smartmontools/ChangeLog
index cca69f75c1eab957fe171780cdcf916ad199f3b5..dde6f58c1957cd7b96e1ff31418183ba6335cd10 100644
--- a/smartmontools/ChangeLog
+++ b/smartmontools/ChangeLog
@@ -1,5 +1,15 @@
 $Id$
 
+2024-04-06  Christian Franke  <franke@computer.org>
+
+	drivedb.h:
+	- Western Digital Ultrastar (He10/12): move WD40EZAZ to Blue (SMR).
+	- Western Digital Blue (CMR): rename, add *EAZZ (#1576, GH issue/192) and other.
+	- Western Digital Blue (SMR): 3TB, *BX variant.
+	- Western Digital Red (CMR): rename, add 3TB, move *EF[ABFG]X* to Red Plus.
+	- Western Digital Red Plus (#1675, #1704, GH pull/79).
+	- Western Digital Red Pro: 12TB (#1676), 14TB, 20TB and attribute 90 (#1731).
+
 2024-04-02 Gabriele Pohl  <contact@dipohl.de>
 
 	drivedb.h:
diff --git a/smartmontools/drivedb.h b/smartmontools/drivedb.h
index 5e3b146dae28a5ed90a630c242649854cd15508f..223727ef3fb2bc2c6ade93ca6bc4ad4f9bc57c7d 100644
--- a/smartmontools/drivedb.h
+++ b/smartmontools/drivedb.h
@@ -3790,7 +3790,7 @@ const drive_settings builtin_knowndrives[] = {
       // WDC WD140EDGZ-11B2DA2/85.00A85, WDC WD140EDGZ-11B1PA0/85.00A85
       // WDC WD120EDAZ-11F3RA0/81.00A81, WDC WD80EDAZ-11TA3A0/81.00A81
       // WDC WD40EDAZ-11SLVB0/80.00A80
-    "WDC WD(40|80|100|120|140)E([MZ]A|DA|DF|DG)Z-.*",
+    "WDC WD(40EDA|(80|100|120|140)E([MZ]A|DA|DF|DG))Z-.*",
     "", "",
     "-v 22,raw48,Helium_Level" // not: WD80EDAZ, WD40EDAZ
   },
@@ -4974,14 +4974,15 @@ const drive_settings builtin_knowndrives[] = {
     "WDC WD((16|20|25|32|40|50|64|75)00AAKS|1602ABKS|10EALS)-.*",
     "", "", ""
   },
-  { "Western Digital Blue", // tested with WDC WD5000AZLX-00K4KA0/80.00A80,
-      // WDC WD10EZEX-00RKKA0/80.00A80, WDC WD10EZEX-75M2NA0/01.01A01, WDC WD40EZRZ-00WN9B0/80.00A80,
+  { "Western Digital Blue (CMR)", // tested with WDC WD5000AZLX-00K4KA0/80.00A80,
+      // WDC WD10EZEX-00RKKA0/80.00A80, WDC WD10EZEX-75M2NA0/01.01A01,
+      // WDC WD40EZRZ-00WN9B0/80.00A80, WDC WD80EAZZ-00BKLB0/80.00A80,
       // APPLE HDD WDC WD10EALX-408EA0/07.01D03
-    "(APPLE HDD )?WDC WD((25|32|50)00AAKX|5000AZ(LX|RZ)|7500A(AL|ZE)X|10E(AL|ZE)X|[1-6]0EZRZ)-.*",
+    "(APPLE HDD )?WDC WD((25|32|50)00AAKX|5000AZ(LX|RZ)|7500A(AL|ZE)X|[123468]0E(ALX|A[ARZ]Z|Z[AE]X|ZRZ))-.*",
     "", "", ""
   },
   { "Western Digital Blue (SMR)", // tested with WDC WD40EZAZ-00SF3B0/80.00A80 (TRIM: zeroed)
-    "WDC WD(20|40|60)EZAZ-.*",
+    "WDC WD[2346]0EZ(AZ|BX)-.*",
     "", "", ""
   },
   { "Western Digital RE Serial ATA",
@@ -5133,18 +5134,17 @@ const drive_settings builtin_knowndrives[] = {
     "WDC WD(50|75)00BPKT-.*",
     "", "", ""
   },
-  { "Western Digital Red", // tested with WDC WD10EFRX-68JCSN0/01.01A01,
-      // WDC WD10JFCX-68N6GN0/01.01A01, WDC WD30EFRX-68EUZN0/82.00A82,
-      // WDC WD40EFRX-68WT0N0/80.00A80, WDC WD40EFPX-68C6CN0/81.00A81,
+  { "Western Digital Red (CMR)", // tested with WDC WD10EFRX-68JCSN0/01.01A01,
+      // WDC WD10JFCX-68N6GN0/01.01A01, WDC WD20EFZX-68AWUN0/81.00B81,
+      // WDC WD30EFRX-68EUZN0/82.00A82, WDC WD30EFZX-68AWUN0/81.00B81,
+      // WDC WD40EFPX-68C6CN0/81.00A81, WDC WD40EFRX-68WT0N0/80.00A80,
+      // WDC WD40EFZX-68AWUN0/81.00B81,
       // WDC WD60EFRX-68MYMN1/82.00A82, WDC WD60EFPX-68C5ZN0/81.00A81,
-      // WDC WD80EFAX-68LHPN0/83.H0A83, WDC WD80EFZX-68UW8N0/83.H0A83,
+      // WDC WD80EFZX-68UW8N0/83.H0A83,
       // WDC WD80EZZX-11CSGA0/83.H0A03 (My Book 0x1058:0x25ee),
-      // WDC WD100EFAX-68LHPN0/83.H0A83, WDC WD120EFBX-68B0EN0/85.00A85
       // WDC WD120EMFZ-11A6JA0/81.00A81 (Easystore 0x1058:0x25fb)
-      // WDC WD160EMFZ-11AFXA0/81.00A81
-      // WDC WD40EFZX-68AWUN0/81.00B81, WDC WD20EFZX-68AWUN0/81.00B81
-      // WDC WD140EFFX-68VBXN0/81.00A81
-    "WDC WD(7500BFCX|10JFCX|[1-6]0EFRX|1(20|01)EFBX|[2-8]0EFPX|[2468]0E[FZ]ZX|80EFZZ|(8|10)0EFAX|1[26]0EMFZ|140E(FF|FG)X)-.*",
+      // WDC WD160EMFZ-11AFXA0/81.00A81,
+    "WDC WD(7500BFCX|10JFCX|[1-6]0EFRX|[2-8]0EFPX|[23468]0E[FZ]ZX|80EFZZ|1[26]0EMFZ)-.*",
     "", "",
     "-v 22,raw48,Helium_Level" // WD80EFAX, WD80EFZX, WD100EFAX, WD120EMFZ, WD160EMFZ
   },
@@ -5152,13 +5152,25 @@ const drive_settings builtin_knowndrives[] = {
     "WDC WD[2346]0EFAX-.*",
     "", "", ""
   },
+  { "Western Digital Red Plus", // tested with WDC WD80EFAX-68LHPN0/83.H0A83.
+      // WDC WD80EFBX-68AZZN0/85.00A85, WDC WD101EFAX-68LDBN0/81.00A81,
+      // WDC WD101EFBX-68B0AN0/85.00A85, WDC WD100EFAX-68LHPN0/83.H0A83,
+      // WDC WD120EFAX-68UNTN0/81.00A81, WDC WD120EFBX-68B0EN0/85.00A85,
+      // WDC WD140EFFX-68VBXN0/81.00A81
+    "WDC WD(80|10[01]|1[24]0|1[68]1)(JFC|EF[ABFR])X-.*",
+    "", "",
+    "-v 22,raw48,Helium_Level" // >= 12TB
+  },
   { "Western Digital Red Pro", // tested with WDC WD2001FFSX-68JNUN0/81.00A81,
       // WDC WD6002FFWX-68TZ4N0/83.H0A83, WDC WD101KFBX-68R56N0/83.H0A03,
-      // WDC WD102KFBX-68M95N0/83.00A83, WDC WD161KFGX-68AFPN0/83.00A83
-      // WD181KFGX-68AFPN0/83.00A83
-    "WDC WD([2-68]00[123]FF[BSW]|10[12]KFB|1[68]1KFG)X-.*",
+      // WDC WD102KFBX-68M95N0/83.00A83, WDC WD121KFBX-68EF5N0/83.00A83,
+      // WDC WD141KFGX-68FH9N0/83.00A83, WDC WD142KFGX-68AFPN0/83.00A83,
+      // WDC WD161KFGX-68AFPN0/83.00A83, WDC WD181KFGX-68AFPN0/83.00A83,
+      // WDC WD201KFGX-68BKJN0/83.00A83
+    "WDC WD([2-68]00[123]FF[BSW]|1[02][12]KFB|(1[468]|20)[12]KFG)X-.*",
     "", "",
-    "-v 22,raw48,Helium_Level" // not WD102KFBX
+    "-v 22,raw48,Helium_Level " // not WD102KFBX
+    "-v 90,hex48,NAND_Master" // WD201KFGX
   },
   { "Western Digital Purple (Pro)", // tested with WDC WD40PURX-64GVNY0/80.00A80,
       // WDC WD40PURZ-85TTDY0/80.00A80