diff --git a/src/modules/vmount/output.cpp b/src/modules/vmount/output.cpp
index cddf1b756f36a4065ddeb97bccf4857c5bb55cd2..450b7166c99de6149431d62c56123d5bd66bc68f 100644
--- a/src/modules/vmount/output.cpp
+++ b/src/modules/vmount/output.cpp
@@ -51,6 +51,8 @@
 #include <mathlib/mathlib.h>
 #include <matrix/math.hpp>
 
+using matrix::wrap_pi;
+
 namespace vmount
 {
 
@@ -197,6 +199,8 @@ void OutputBase::_handle_position_update(bool force_update)
 	_angle_setpoints[1] += _cur_control_data->type_data.lonlat.pitch_angle_offset;
 	_angle_setpoints[2] += _cur_control_data->type_data.lonlat.yaw_angle_offset;
 
+	// make sure yaw is wrapped correctly for the output
+	_angle_setpoints[2] = wrap_pi(_angle_setpoints[2]);
 }
 
 void OutputBase::_calculate_output_angles(const hrt_abstime &t)