diff --git a/scripts/nfc-poll-wrapper.sh b/scripts/nfc-poll-wrapper.sh
new file mode 100644
index 0000000000000000000000000000000000000000..4e2abf80bbca65e25399684338e5d41471f88693
--- /dev/null
+++ b/scripts/nfc-poll-wrapper.sh
@@ -0,0 +1,14 @@
+#!/bin/bash
+
+while :
+do
+  res=$(nfc-poll | grep "UID " | cut -d: -f2 | sed 's/ //g' | xargs)
+  if [[ ! -z "$res" ]]
+  then
+    echo $res
+    sudo /hermod_bin/statusRGB.py 11ff11 -t 0.2 &
+  else
+    sudo /hermod_bin/statusRGB.py ff1111 -t 0.2 &
+  fi
+  sleep 1
+done
diff --git a/server/badge.js b/server/badge.js
index 89a468444bb8f561c68ad2459d86874ded73e10b..dbae5c5c98e44b702c6acad7db150da9ca03929b 100644
--- a/server/badge.js
+++ b/server/badge.js
@@ -1,6 +1,6 @@
 const { spawn } = require('child_process');
 
-const child = spawn('/bin/bash', ['-c', 'nfc-poll | grep "UID " | cut -d: -f2 | sed "s/  / /g"']);
+const child = spawn('scripts/nfc-poll-wrapper.sh');
 
 child.on('exit', (code, signal) => {
   console.log(`child process exited with code ${code} and signal ${signal}`);