UnhandledPromiseRejectionWarning
### Expected Behavior

No errors logged

### Current Behavior
Seeing the following error message logged multiple times:
```
(node:26877) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 342)
(node:26877) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'log' of undefined
    at logRejection (/homebridge/node_modules/homebridge-tplink-smarthome/lib/homekit-device/index.js:102:14)
    at runMicrotasks (<anonymous>:null:null)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
```
### Steps to Reproduce (for bugs)
The only thing of note is that this occurs for a device that is currently turned off (smart plug, not plugged in)

### Versions
<!-- Please run commands and include versions below. -->
- **Node**: 14.15.0
- **Homebridge**: 1.3.4
- **OS**: Alpine Linux (3.12.1)

### Configuration
<!-- Please include the TplinkSmarthome platform section of your config.json file.
Paste between the the two ``` lines below.
-->
```json
{
    "platform": "TplinkSmarthome",
    "name": "TplinkSmarthome"
}
```
