diff --git a/CHANGELOG.md b/CHANGELOG.md
index 7079e9738d872fdae3ca3ecae4937b8ebaa71c92..341f812ad0288553ed4c70cef0933f3649eb9ae4 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -6,6 +6,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
 
 ## [Unreleased]
 
+### Fixed
+- Fix compatibility issue with NumPy 2.x on Windows ([#492](https://github.com/stack-of-tasks/eigenpy/pull/492))
+
 ## [3.8.0] - 2024-08-14
 
 ### Added
diff --git a/cmake b/cmake
index 88d3cb561d1f9faa3c6281da7b2b8d6aa76b04d5..b3c2af1b68686dc9d5f459fb617647e37a15a76d 160000
--- a/cmake
+++ b/cmake
@@ -1 +1 @@
-Subproject commit 88d3cb561d1f9faa3c6281da7b2b8d6aa76b04d5
+Subproject commit b3c2af1b68686dc9d5f459fb617647e37a15a76d
diff --git a/src/numpy.cpp b/src/numpy.cpp
index e758ed02dff52c691c303705b0f6746de9198b2b..0621edc8b9d79f7756e68892cbd02faa08b834e4 100644
--- a/src/numpy.cpp
+++ b/src/numpy.cpp
@@ -57,7 +57,7 @@ void call_PyArray_InitArrFuncs(PyArray_ArrFuncs* funcs) {
   PyArray_InitArrFuncs(funcs);
 }
 
-int call_PyArray_RegisterDataType(PyArray_Descr* dtype) {
+int call_PyArray_RegisterDataType(PyArray_DescrProto* dtype) {
   return PyArray_RegisterDataType(dtype);
 }