diff --git a/html/images/os/tplink.png b/html/images/os/tplink.png
new file mode 100644
index 0000000000..d9a93d9dcf
Binary files /dev/null and b/html/images/os/tplink.png differ
diff --git a/includes/definitions.inc.php b/includes/definitions.inc.php
index d8a4a12f01..fa0ed1287f 100644
--- a/includes/definitions.inc.php
+++ b/includes/definitions.inc.php
@@ -776,6 +776,14 @@ $config['os'][$os]['text'] = 'D-Link Access Point';
$config['os'][$os]['type'] = 'wireless';
$config['os'][$os]['icon'] = 'dlink';
+// TP-Link
+$os = 'tplink';
+$config['os'][$os]['text'] = 'TP-Link Switch';
+$config['os'][$os]['type'] = 'network';
+$config['os'][$os]['icon'] = 'tplink';
+$config['os'][$os]['over'][0]['graph'] = 'device_bits';
+$config['os'][$os]['over'][0]['text'] = 'Device Traffic';
+
$os = 'axiscam';
$config['os'][$os]['text'] = 'AXIS Network Camera';
$config['os'][$os]['icon'] = 'axis';
diff --git a/includes/discovery/os/tplink.inc.php b/includes/discovery/os/tplink.inc.php
new file mode 100644
index 0000000000..58db944cbc
--- /dev/null
+++ b/includes/discovery/os/tplink.inc.php
@@ -0,0 +1,7 @@
+