diff --git a/tools/update.sh b/tools/update.sh
index d84cca8..d096163 100755
--- a/tools/update.sh
+++ b/tools/update.sh
@@ -14,6 +14,7 @@
 BASE_USER=$(whoami)
 TITLE="crowsnest - A Webcam Daemon for Raspberry Pi OS"
 
+
 ### Non root
 if [ ${UID} == '0' ]; then
     echo -e "DO NOT RUN THIS SCRIPT AS ROOT!\nExiting..."
@@ -240,9 +241,6 @@ function uninstall_rtsp2webrtc {
         echo -e "Removing RTSPtoWebRTC ..."
         sudo rm -rf "${HOME}/crowsnest/bin/RTSPtoWebRTC"
         echo -e "Removing RTSPtoWebRTC ... [OK]"
-    else
-        echo -e "Removing RTSPtoWebRTC ... [SKIPPED]"
-        echo -e "RTSPtoWebRTC not installed ..."
     fi
 }
 
@@ -271,10 +269,47 @@ function build_apps {
         make all
         popd > /dev/null || exit 1
     else
-        echo -e "All Apps are present ... [skipped]"
+        echo -e "All Apps are present ... [OK]"
+        update_ustreamer
+        update_rtsp
     fi
 }
 
+function update_ustreamer {
+    local sm_version us_version
+    sm_version="$(cd bin/ustreamer && git describe --always --tags | sed 's/^v//')"
+    us_version="$(bin/ustreamer/ustreamer -v)"
+    echo -en "Checking ustreamer Version ${sm_version} ... \r"
+    if [ "${sm_version}" == "${us_version}" ]; then
+        echo -e "Checking ustreamer Version ${us_version} ... [SKIPPED]"
+        echo -e "\t==> Version match, no update needed."
+    else
+        echo -e "Checking ustreamer Version ${sm_version} ... [UPDATE]"
+        echo -e "\t==> Version (${us_version}) mismatch, update needed."
+        pushd bin/ &> /dev/null || exit 1
+        make ustreamer
+        popd &> /dev/null || exit 1
+        echo -e "Ustreamer Update ... [OK]"
+    fi
+}
+
+function update_rtsp {
+    local dl_version rtsp_version
+    dl_version="$(cat bin/rtsp-simple-server/version)"
+    rtsp_version="$(bin/rtsp-simple-server/rtsp-simple-server --version)"
+    echo -en "Checking rtsp-simple-server Version ... \r"
+    if [ "${dl_version}" == "${rtsp_version}" ]; then
+        echo -e "Checking rtsp-simple-server Version ${dl_version} ... [SKIPPED]"
+        echo -e "\t==> Version match, no update needed."
+    else
+        echo -e "Checking rtsp-simple-server Version ... [UPDATE]"
+        echo -e "\t==> Version (${rtsp_version}) mismatch, update needed."
+        pushd bin/ &> /dev/null || exit 1
+        make rtsp
+        popd &> /dev/null || exit 1
+        echo -e "rtsp-simple-server Update ... [OK]"
+    fi
+}
 
 
 #### MAIN