docs: def start(self, func=None):
          """Start the roaster control process.
  
          This function will kick off the processing thread for the Hottop and
          register any user-defined callback function. By default, it will not
          begin collecting any reading information or saving it. In order to do
          that users, must issue the monitor/record bit via `set_monitor`.
  
          :param func: Callback function for Hottop stream data
          :type func: function
          :returns: None
          """
          self._user_callback = func
          if not self._simulate:
              self._process = ControlProcess(self._conn, self._config, self._q,
                                             self._log, callback=self._callback)
          else:
              self._process = MockProcess(self._config, self._q,
                                          self._log, callback=self._callback)
          self._process.start()
          self._roasting = True