  
      for (auto &t : threads) t.join();
    }
  
    // we have exited, clean up pandas
    for (Panda *panda : pandas) {
      delete panda;
    }
  }
 
</s> remove     threads.emplace_back(panda_state_thread, &pm, pandas, getenv("STARTED") != nullptr);
    threads.emplace_back(peripheral_control_thread, peripheral_panda, getenv("NO_FAN_CONTROL") != nullptr);
 </s> add     threads.emplace_back(panda_state_thread, pandas, getenv("STARTED") != nullptr);
    threads.emplace_back(peripheral_control_thread, pandas[0], getenv("NO_FAN_CONTROL") != nullptr); </s> remove     //Dont send if older than 1 second
 </s> add     // Don't send if older than 1 second </s> remove     // exit if no pandas are connected
 </s> add  </s> remove   #endif
 </s> add 
  
      for (auto &t : threads) t.join();
    }
  

    for (Panda *panda : pandas) {
      delete panda;
    }
  }
keep keep keep keep replace keep keep keep keep
 boardd: misc cleanup (#28969)

* boardd cleanup

* no more front frame

* faster connect loop

* fix that on mac 
selfdrive/boardd/boardd.cc