diff --git a/person_detection/base_camera.py b/person_detection/base_camera.py
index b8fa47c..e0018f5 100644
--- a/person_detection/base_camera.py
+++ b/person_detection/base_camera.py
@@ -6,7 +6,7 @@
 import logging as log
 from multiprocessing import Process, Queue, Value, Array, Lock
 
-import roc
+from roc import Roc
 import config
 
 
@@ -17,14 +17,14 @@
     cameras = Array('i', [0]*len(config.cameras))
     lock = Lock()
 
-    def __init__(self, device, key, mbrlow, mbrhigh, devicegroup, noroc):
+    def __init__(self, device, user, password, mbrlow, mbrhigh, devicegroup, noroc):
         self.mqttBroker = "localhost"
         self.device = device
-        self.key = key
         self.mbrlow = mbrlow
         self.mbrhigh = mbrhigh
         self.devicegroup = devicegroup
         self.noroc = noroc
+        self.roc = Roc(user, password)
 
         """Start the background camera process if it isn't running yet."""
         if BaseCamera.cameras[int(self.device)] == 0:
@@ -67,7 +67,7 @@
             BaseCamera.lock.release()
             self.set_resolution_high()
             if not self.noroc:
-                roc.set_mbr(self.key, self.devicegroup, self.mbrhigh)
+                self.roc.set_mbr(self.devicegroup, self.mbrhigh)
             self.detected = True
             self.start_timer()
 
@@ -80,7 +80,7 @@
             BaseCamera.activity_counter.value = 0
             self.set_resolution_low()
             if not self.noroc:
-                roc.set_mbr(self.key, self.devicegroup, self.mbrlow)
+                self.roc.set_mbr(self.devicegroup, self.mbrlow)
         BaseCamera.lock.release()
 
 
@@ -110,7 +110,7 @@
     def timer_expiry(self):
         now = time.time()
         diff = now - self.last_detected
-        log.info("timer_expiry() - now:{}, last_detected:{}".format(now, self.last_detected))
+        log.debug("timer_expiry() - now:{}, last_detected:{}".format(now, self.last_detected))
         if diff > 5.0:
             self.no_person_detected()
         else:
