diff --git a/drivers/tmp006/tmp006.c b/drivers/tmp006/tmp006.c
index 03171541ff3e7a255834c1d44927a4f71828b71d..350cd2c5740be162d8bcdd3b2038cc02fcf73ff5 100644
--- a/drivers/tmp006/tmp006.c
+++ b/drivers/tmp006/tmp006.c
@@ -70,7 +70,7 @@ int tmp006_init(tmp006_t *dev, const tmp006_params_t *params)
     uint16_t tmp;
 
     /* initialize the device descriptor */
-    memcpy(&dev->p, params, sizeof(tmp006_params_t));
+    dev->p = *params;
 
     if (dev->p.rate > TMP006_CONFIG_CR_AS16) {
         LOG_ERROR("tmp006_init: invalid conversion rate!\n");