* hardware abstraction class
* De Morgan
* Rename pc hardware class
* Fix sound card in controlsd
* Pc get sim info
* fix hardware in test
* two more
* No more random imei on android
* no randomness on android
* Need to return something that looks like imei for registration to work
* Return proper network strength
* Unused import
* Bug fixes + gpsd is only android
old-commit-hash: c7152d5419
* start on panda abstraction layer
* handle bulk transfer in library
* Safety model abstraction
* Abstract hw type into library
* Handle disconnect
* RTC stuff
* Fan control
* Health
* Panda fw version
* Read serial
* Power saving
* Power mode
* Cleanup pigeon thread init
* Rename safety setter variable name
* Remove comment
* Unused global cleanup
* malloc -> new
* whitespace
* Use std::thread
* Use std::thread for safety setter
* Cleanup igntion_last global
* Heartbeat
* logd
* More global cleanup
* Put back sleep
* ir pwr
* Always broadcast health
* init struct with zeroes
* Fix eon build
* fix race condition
* fix Adeebs comments
* abstract can send and receive
old-commit-hash: 80acb32825
* start boardd loopback test
* let's try this in CI
* fix jenkinsfile
* remove old
* rename
* check msgs
* should be reliable now
* send more
old-commit-hash: 3ab0b49656