diff --git a/README.md b/README.md index 10f502db..b837c1d9 100644 --- a/README.md +++ b/README.md @@ -41,7 +41,7 @@ The following fields may **optionally** be declared: > :test_tube: **Example**: `part_number: D109-C3` - `u_height`: The height of the device type in rack units. Increments of 0.5U are supported. (**Default: 1**) - Type: number (minimum of `0`, multiple of `0.5`) -> :test_tube: **Example**: `u_height: 12.5` +> :test_tube: **Example**: `u_height: 12.5` - `is_full_depth`: A boolean which indicates whether the device type consumes both the front and rear rack faces. (**Default: true**) - Type: Boolean > :test_tube: **Example**: `is_full_depth: false` @@ -87,6 +87,9 @@ The following fields may **optionally** be declared: >weight: 12.21 >weight_unit: lb >``` +- `is_powered`: A boolean which indicates whether the device type does not take power. This is mainly used as a workaround for validation testing on non-devices (i.e. rackmount kits for mounting desktop devices) (**Default: True**) + - Type: Boolean +> :test_tube: **Example**: `is_powered: false` For further detail on these attributes and those listed below, please reference the [schema definitions](schema/) and the [Component Definitions](#component-definitions) below. @@ -114,6 +117,7 @@ The available fields for each type of component are listed below. - `name`: Name - `label`: Label - `type`: Port type slug (Array) +- `poe`: Does this port access/provide POE? (Boolean) #### Console Server Ports @@ -158,6 +162,7 @@ The available fields for each type of component are listed below. - `label`: Label - `type`: Port type slug (Array) - `positions`: The number of front ports that can map to this rear port (default: 1) +- `poe`: Does this port access/provide POE? (Boolean) #### Module Bays diff --git a/device-types/APC/AR8425A.yaml b/device-types/APC/AR8425A.yaml deleted file mode 100644 index 2ee11409..00000000 --- a/device-types/APC/AR8425A.yaml +++ /dev/null @@ -1,8 +0,0 @@ ---- -manufacturer: APC -model: AR8425A -slug: apc-ar8425a -part_number: AR8425A -u_height: 1 -is_full_depth: false -airflow: passive diff --git a/device-types/APC/BN450M.yaml b/device-types/APC/BN450M.yaml index 44d80ec7..d38bb2dc 100644 --- a/device-types/APC/BN450M.yaml +++ b/device-types/APC/BN450M.yaml @@ -5,6 +5,9 @@ slug: apc-bn450m u_height: 3 is_full_depth: false comments: '[APC BN450M Datasheet](https://www.se.com/ww/en/product/download-pdf/BN450M)' +power-ports: + - name: Input + type: nema-5-15p power-outlets: - name: Batery + Surge - Outlet 1 type: nema-5-15r diff --git a/device-types/APC/SMX120BP.yaml b/device-types/APC/SMX120BP.yaml index 58c1000a..98ae5924 100644 --- a/device-types/APC/SMX120BP.yaml +++ b/device-types/APC/SMX120BP.yaml @@ -6,3 +6,6 @@ part_number: SMX120BP comments: APC Smart-UPS X 120V External Battery Pack Rack/Tower u_height: 4 is_full_depth: true +power-ports: + - name: UPS Input + type: other diff --git a/device-types/APC/SRT5KRMXLI.yaml b/device-types/APC/SRT5KRMXLI.yaml index bfe094bb..25b20543 100644 --- a/device-types/APC/SRT5KRMXLI.yaml +++ b/device-types/APC/SRT5KRMXLI.yaml @@ -9,6 +9,9 @@ comments: Hard wire 3-wire (1P + N + E) power port console-ports: - name: Serial type: rj-45 +power-ports: + - name: UPS Input + type: hardwired power-outlets: - name: Group 1 Outlet 1 type: iec-60320-c13 diff --git a/device-types/APC/SRT5KRMXLW-HW.yaml b/device-types/APC/SRT5KRMXLW-HW.yaml index 2abb2a7e..078d7793 100644 --- a/device-types/APC/SRT5KRMXLW-HW.yaml +++ b/device-types/APC/SRT5KRMXLW-HW.yaml @@ -9,6 +9,9 @@ comments: All power ports and outlets are hardwired console-ports: - name: Serial type: rj-45 +power-ports: + - name: UPS Input + type: hardwired interfaces: - name: Ethernet type: 100base-tx diff --git a/device-types/APC/SRT6KRMXLI.yaml b/device-types/APC/SRT6KRMXLI.yaml index 444a23ad..ea20cb91 100644 --- a/device-types/APC/SRT6KRMXLI.yaml +++ b/device-types/APC/SRT6KRMXLI.yaml @@ -9,6 +9,9 @@ comments: Hard wire 3-wire (1P + N + E) power port console-ports: - name: Serial type: rj-45 +power-ports: + - name: UPS Input + type: hardwired power-outlets: - name: Group 1 Outlet 1 type: iec-60320-c13 diff --git a/device-types/APC/SRT8KRMXLT.yaml b/device-types/APC/SRT8KRMXLT.yaml index 0589f2dc..b1c83632 100644 --- a/device-types/APC/SRT8KRMXLT.yaml +++ b/device-types/APC/SRT8KRMXLT.yaml @@ -9,6 +9,9 @@ comments: Hard wire 3-wire (2P + E) power port console-ports: - name: Serial type: rj-45 +power-ports: + - name: UPS Input + type: hardwired power-outlets: - name: Group 1 Outlet 1 type: nema-l6-20r diff --git a/device-types/Apple/A1427.yaml b/device-types/Apple/A1427.yaml index 54b0ea7f..50cb8db8 100644 --- a/device-types/Apple/A1427.yaml +++ b/device-types/Apple/A1427.yaml @@ -6,6 +6,9 @@ part_number: A1427 is_full_depth: false comments: "- Order Number: MD199LL/A\r\n- Model Number: A1427\r\n- EMC: 2633\r\n- Edition: 3th Gen\r\n- Processor Speed: 1 GHz\r\n- Processor Type: Apple\ \ A5\r\n- Processors (Cores): 1\r\n- Hard Drive: 8 GB NAND flash\r\n- RAM: 512 MB\r\n- Input: Apple Remote (aluminum)\r\n- Release Date: March 7, 2012" +power-ports: + - name: Power + type: nema-1-15p interfaces: - name: eth type: 100base-tx diff --git a/device-types/Apple/A1469.yaml b/device-types/Apple/A1469.yaml index d65c5f63..86ce4b63 100644 --- a/device-types/Apple/A1469.yaml +++ b/device-types/Apple/A1469.yaml @@ -6,6 +6,9 @@ part_number: A1469 is_full_depth: false comments: "- Order Number: MD199LL/A\r\n- Model Number: A1469\r\n- EMC: 2633\r\n- Edition: 3th Gen\r\n- Processor Speed: 1 GHz\r\n- Processor Type: Apple\ \ A5\r\n- Processors (Cores): 1\r\n- Hard Drive: 8 GB NAND flash\r\n- RAM: 512 MB\r\n- Input: Apple Remote (aluminum)\r\n- Release Date: March 7, 2012" +power-ports: + - name: Power + type: nema-1-15p interfaces: - name: eth type: 100base-tx diff --git a/device-types/Apple/A1625.yaml b/device-types/Apple/A1625.yaml index d53c61ba..1507e257 100644 --- a/device-types/Apple/A1625.yaml +++ b/device-types/Apple/A1625.yaml @@ -7,6 +7,9 @@ is_full_depth: false u_height: 0 comments: "- Order Number: MGY52LL/A\r\n- Model Number: A1625\r\n- EMC: 2907\r\n- Edition: 4th Gen\r\n- Processor Speed: 1.4GHz\r\n- Processor Type: Apple\ \ A8\r\n- Processors (Cores): 1\r\n- Hard Drive: 32GB\r\n- RAM: 2GB\r\n- Input: Siri Remote\r\n- Release Date: September 9th 2015" +power-ports: + - name: Power + type: nema-1-15p interfaces: - name: eth type: 1000base-t diff --git a/device-types/Apple/A1842.yaml b/device-types/Apple/A1842.yaml index a96727fd..40e513c7 100644 --- a/device-types/Apple/A1842.yaml +++ b/device-types/Apple/A1842.yaml @@ -7,6 +7,9 @@ is_full_depth: false u_height: 0 comments: "- Order Number: \tMQD22LL/A\r\n- Model Number: A1842\r\n- EMC: 2907\r\n- Edition: 4K\r\n- Processor Speed: 2.3 GHz\r\n- Processor Type: A10X\ \ Fusion\r\n- Processors (Cores): 1\r\n- Hard Drive: \t32, 64 GB\r\n- RAM: 3GB\r\n- Input: Black Siri Remote\r\n- Release Date: September 12, 2017" +power-ports: + - name: Power + type: nema-1-15p interfaces: - name: eth type: 1000base-t diff --git a/device-types/Apple/A2169.yaml b/device-types/Apple/A2169.yaml index 7a51af8d..15f9b284 100644 --- a/device-types/Apple/A2169.yaml +++ b/device-types/Apple/A2169.yaml @@ -7,6 +7,9 @@ is_full_depth: false u_height: 0 comments: "- Order Number: \tMXGY2LL/A\r\n- Model Number: A2169\r\n- EMC: 3111\r\n- Edition: 4K (2nd Gen)\r\n- Processor Speed: 2.49 GHz\r\n- Processor\ \ Type: A12 Bionic\r\n- Processors (Cores): 1\r\n- Hard Drive: \t32, 64 GB\r\n- RAM: 3GB\r\n- Input: Silver Siri Remote\r\n- Release Date: April 20, 2021" +power-ports: + - name: Power + type: nema-1-15p interfaces: - name: eth type: 1000base-t diff --git a/device-types/Avocent/DSRIQ-PS2.yaml b/device-types/Avocent/DSRIQ-PS2.yaml index 2a8abd1d..3695ff49 100644 --- a/device-types/Avocent/DSRIQ-PS2.yaml +++ b/device-types/Avocent/DSRIQ-PS2.yaml @@ -7,6 +7,7 @@ is_full_depth: false console-ports: - name: DSR type: rj-45 + poe: true console-server-ports: - name: VGA type: other diff --git a/device-types/Avocent/DSRIQ-USB.yaml b/device-types/Avocent/DSRIQ-USB.yaml index e25f06be..ed0b8008 100644 --- a/device-types/Avocent/DSRIQ-USB.yaml +++ b/device-types/Avocent/DSRIQ-USB.yaml @@ -7,6 +7,7 @@ is_full_depth: false console-ports: - name: DSR type: rj-45 + poe: true console-server-ports: - name: VGA type: other diff --git a/device-types/Avocent/DSRIQ-VSN.yaml b/device-types/Avocent/DSRIQ-VSN.yaml index 12e6b86f..7637b769 100644 --- a/device-types/Avocent/DSRIQ-VSN.yaml +++ b/device-types/Avocent/DSRIQ-VSN.yaml @@ -7,6 +7,7 @@ is_full_depth: false console-ports: - name: DSR type: rj-45 + poe: true console-server-ports: - name: VGA type: other diff --git a/device-types/Avocent/MPUIQ-SRL.yaml b/device-types/Avocent/MPUIQ-SRL.yaml index 52f07021..1f43a9e3 100644 --- a/device-types/Avocent/MPUIQ-SRL.yaml +++ b/device-types/Avocent/MPUIQ-SRL.yaml @@ -10,6 +10,7 @@ comments: MPU IQ Serial Adapter console-ports: - name: KVM type: rj-45 + poe: true console-server-ports: - name: con0 type: rj-45 diff --git a/device-types/Avocent/MPUIQ-VMCHS.yaml b/device-types/Avocent/MPUIQ-VMCHS.yaml index 7debaa9e..b88e2100 100644 --- a/device-types/Avocent/MPUIQ-VMCHS.yaml +++ b/device-types/Avocent/MPUIQ-VMCHS.yaml @@ -10,6 +10,7 @@ comments: MPU IQ Serial Adapter console-ports: - name: KVM type: rj-45 + poe: true console-server-ports: - name: vga0 type: other diff --git a/device-types/Check Point/CPAC-1500-3600-3800-RM-DUAL.yaml b/device-types/Check Point/CPAC-1500-3600-3800-RM-DUAL.yaml index 0de9c99d..643abd5d 100644 --- a/device-types/Check Point/CPAC-1500-3600-3800-RM-DUAL.yaml +++ b/device-types/Check Point/CPAC-1500-3600-3800-RM-DUAL.yaml @@ -5,6 +5,7 @@ slug: check-point-cpac-1500-3600-3800-rm-dual part_number: CPAC-1500/3600/3800-RM-DUAL u_height: 1 is_full_depth: false +is_powered: false comments: Rack Mount shelf for Single/Dual for 1500/ 3600/ 3800 desktop appliances subdevice_role: parent device-bays: diff --git a/device-types/Cisco/AIR-AP1562D-B-K9.yaml b/device-types/Cisco/AIR-AP1562D-B-K9.yaml index 3c0f5c97..cbf75b3e 100644 --- a/device-types/Cisco/AIR-AP1562D-B-K9.yaml +++ b/device-types/Cisco/AIR-AP1562D-B-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-AP1562D-B-K9 u_height: 0 is_full_depth: false interfaces: + - name: WAN + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11ac diff --git a/device-types/Cisco/AIR-AP1562I-B-K9.yaml b/device-types/Cisco/AIR-AP1562I-B-K9.yaml index 788425c4..9143a62d 100644 --- a/device-types/Cisco/AIR-AP1562I-B-K9.yaml +++ b/device-types/Cisco/AIR-AP1562I-B-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-AP1562I-B-K9 u_height: 0 is_full_depth: false interfaces: + - name: WAN + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11ac diff --git a/device-types/Cisco/AIR-AP1572EAC-B-K9.yaml b/device-types/Cisco/AIR-AP1572EAC-B-K9.yaml index 75628bb1..61a878a8 100644 --- a/device-types/Cisco/AIR-AP1572EAC-B-K9.yaml +++ b/device-types/Cisco/AIR-AP1572EAC-B-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-AP1572EAC-B-K9 u_height: 0 is_full_depth: false interfaces: + - name: WAN + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11ac diff --git a/device-types/Cisco/AIR-AP2802E-B-K9.yaml b/device-types/Cisco/AIR-AP2802E-B-K9.yaml index b7148d82..6cc775ab 100644 --- a/device-types/Cisco/AIR-AP2802E-B-K9.yaml +++ b/device-types/Cisco/AIR-AP2802E-B-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-AP2802E-B-K9 u_height: 0 is_full_depth: false interfaces: + - name: WAN + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11ac diff --git a/device-types/Cisco/AIR-AP2802I-B-K9.yaml b/device-types/Cisco/AIR-AP2802I-B-K9.yaml index b74cbf2b..cab521ed 100644 --- a/device-types/Cisco/AIR-AP2802I-B-K9.yaml +++ b/device-types/Cisco/AIR-AP2802I-B-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-AP2802I-B-K9 u_height: 0 is_full_depth: false interfaces: + - name: WAN + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11ac diff --git a/device-types/Cisco/AIR-AP3802E-B-K9.yaml b/device-types/Cisco/AIR-AP3802E-B-K9.yaml index 5e402b3f..9eddc49a 100644 --- a/device-types/Cisco/AIR-AP3802E-B-K9.yaml +++ b/device-types/Cisco/AIR-AP3802E-B-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-AP3802E-B-K9 u_height: 0 is_full_depth: false interfaces: + - name: WAN + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11ac diff --git a/device-types/Cisco/AIR-AP3802I-B-K9.yaml b/device-types/Cisco/AIR-AP3802I-B-K9.yaml index fe37a620..0ac6a0e2 100644 --- a/device-types/Cisco/AIR-AP3802I-B-K9.yaml +++ b/device-types/Cisco/AIR-AP3802I-B-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-AP3802I-B-K9 u_height: 0 is_full_depth: false interfaces: + - name: WAN + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11ac diff --git a/device-types/Cisco/AIR-BR1310G-A-K9-R.yaml b/device-types/Cisco/AIR-BR1310G-A-K9-R.yaml index 33cde11e..7da0990f 100644 --- a/device-types/Cisco/AIR-BR1310G-A-K9-R.yaml +++ b/device-types/Cisco/AIR-BR1310G-A-K9-R.yaml @@ -6,5 +6,8 @@ part_number: AIR-BR1310G-A-K9-R u_height: 0 is_full_depth: false interfaces: + - name: WAN + type: 100base-tx + poe_mode: pd - name: WiFi type: ieee802.11g diff --git a/device-types/Cisco/AIR-BR1410A-A-K9-N.yaml b/device-types/Cisco/AIR-BR1410A-A-K9-N.yaml deleted file mode 100644 index 226391d5..00000000 --- a/device-types/Cisco/AIR-BR1410A-A-K9-N.yaml +++ /dev/null @@ -1,7 +0,0 @@ ---- -manufacturer: Cisco -model: Aironet BR1410A-A -slug: cisco-air-br1410a-a-k9-n -part_number: AIR-BR1410A-A-K9-N -u_height: 0 -is_full_depth: false diff --git a/device-types/Cisco/AIR-CAP1532E-A-K9.yaml b/device-types/Cisco/AIR-CAP1532E-A-K9.yaml index 4fd45efe..b253337f 100644 --- a/device-types/Cisco/AIR-CAP1532E-A-K9.yaml +++ b/device-types/Cisco/AIR-CAP1532E-A-K9.yaml @@ -11,6 +11,7 @@ console-ports: interfaces: - name: Port 1 type: 1000base-t + poe_mode: pd - name: Port 2 type: 1000base-t - name: WiFi diff --git a/device-types/Cisco/AIR-CAP1552H-A-K9.yaml b/device-types/Cisco/AIR-CAP1552H-A-K9.yaml index bd02d70a..53cd4582 100644 --- a/device-types/Cisco/AIR-CAP1552H-A-K9.yaml +++ b/device-types/Cisco/AIR-CAP1552H-A-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-CAP1552H-A-K9 u_height: 0 is_full_depth: false interfaces: + - name: Port 1 + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11n diff --git a/device-types/Cisco/AIR-CAP1552H-B-K9.yaml b/device-types/Cisco/AIR-CAP1552H-B-K9.yaml index b0bcef50..7606a5b2 100644 --- a/device-types/Cisco/AIR-CAP1552H-B-K9.yaml +++ b/device-types/Cisco/AIR-CAP1552H-B-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-CAP1552H-B-K9 u_height: 0 is_full_depth: false interfaces: + - name: Port 1 + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11n diff --git a/device-types/Cisco/AIR-CAP2602E-A-K9.yaml b/device-types/Cisco/AIR-CAP2602E-A-K9.yaml index aaa016d2..2ef4ada9 100644 --- a/device-types/Cisco/AIR-CAP2602E-A-K9.yaml +++ b/device-types/Cisco/AIR-CAP2602E-A-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-CAP2602E-A-K9 u_height: 0 is_full_depth: false interfaces: + - name: Port 1 + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11n diff --git a/device-types/Cisco/AIR-CAP2602I-A-K9.yaml b/device-types/Cisco/AIR-CAP2602I-A-K9.yaml index a8890aba..8c30b37b 100644 --- a/device-types/Cisco/AIR-CAP2602I-A-K9.yaml +++ b/device-types/Cisco/AIR-CAP2602I-A-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-CAP2602I-A-K9 u_height: 0 is_full_depth: false interfaces: + - name: Port 1 + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11n diff --git a/device-types/Cisco/AIR-CAP2602I-B-K9.yaml b/device-types/Cisco/AIR-CAP2602I-B-K9.yaml index dbb8a97f..4bcec6a3 100644 --- a/device-types/Cisco/AIR-CAP2602I-B-K9.yaml +++ b/device-types/Cisco/AIR-CAP2602I-B-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-CAP2602I-B-K9 u_height: 0 is_full_depth: false interfaces: + - name: Port 1 + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11n diff --git a/device-types/Cisco/AIR-CAP3502E-A-K9.yaml b/device-types/Cisco/AIR-CAP3502E-A-K9.yaml index 36564000..36ee2e5c 100644 --- a/device-types/Cisco/AIR-CAP3502E-A-K9.yaml +++ b/device-types/Cisco/AIR-CAP3502E-A-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-CAP3502E-A-K9 u_height: 0 is_full_depth: false interfaces: + - name: Port 1 + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11n diff --git a/device-types/Cisco/AIR-CAP3602E-A-K9.yaml b/device-types/Cisco/AIR-CAP3602E-A-K9.yaml index 0686b72a..66cc0bbc 100644 --- a/device-types/Cisco/AIR-CAP3602E-A-K9.yaml +++ b/device-types/Cisco/AIR-CAP3602E-A-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-CAP3602E-A-K9 u_height: 0 is_full_depth: false interfaces: + - name: Port 1 + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11n diff --git a/device-types/Cisco/AIR-CAP3602I-A-K9.yaml b/device-types/Cisco/AIR-CAP3602I-A-K9.yaml index 60e8452d..c2709c7c 100644 --- a/device-types/Cisco/AIR-CAP3602I-A-K9.yaml +++ b/device-types/Cisco/AIR-CAP3602I-A-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-CAP3602I-A-K9 u_height: 0 is_full_depth: false interfaces: + - name: Port 1 + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11n diff --git a/device-types/Cisco/AIR-CAP3602I-B-K9.yaml b/device-types/Cisco/AIR-CAP3602I-B-K9.yaml index ee5d1745..bfc96b29 100644 --- a/device-types/Cisco/AIR-CAP3602I-B-K9.yaml +++ b/device-types/Cisco/AIR-CAP3602I-B-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-CAP3602I-B-K9 u_height: 0 is_full_depth: false interfaces: + - name: Port 1 + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11n diff --git a/device-types/Cisco/AIR-CAP3702E-A-K9.yaml b/device-types/Cisco/AIR-CAP3702E-A-K9.yaml index d740cb67..845caf44 100644 --- a/device-types/Cisco/AIR-CAP3702E-A-K9.yaml +++ b/device-types/Cisco/AIR-CAP3702E-A-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-CAP3702E-A-K9 u_height: 0 is_full_depth: false interfaces: + - name: WAN + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11ac diff --git a/device-types/Cisco/AIR-CAP3702E-B-K9.yaml b/device-types/Cisco/AIR-CAP3702E-B-K9.yaml index eca7e985..21febe8e 100644 --- a/device-types/Cisco/AIR-CAP3702E-B-K9.yaml +++ b/device-types/Cisco/AIR-CAP3702E-B-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-CAP3702E-B-K9 u_height: 0 is_full_depth: false interfaces: + - name: WAN + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11ac diff --git a/device-types/Cisco/AIR-CAP3702I-A-K9.yaml b/device-types/Cisco/AIR-CAP3702I-A-K9.yaml index c90cc484..70fddc5a 100644 --- a/device-types/Cisco/AIR-CAP3702I-A-K9.yaml +++ b/device-types/Cisco/AIR-CAP3702I-A-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-CAP3702I-A-K9 u_height: 0 is_full_depth: false interfaces: + - name: WAN + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11ac diff --git a/device-types/Cisco/AIR-CAP3702I-B-K9.yaml b/device-types/Cisco/AIR-CAP3702I-B-K9.yaml index 51cd72f2..cb9ab906 100644 --- a/device-types/Cisco/AIR-CAP3702I-B-K9.yaml +++ b/device-types/Cisco/AIR-CAP3702I-B-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-CAP3702I-B-K9 u_height: 0 is_full_depth: false interfaces: + - name: WAN + type: 1000base-t + poe_mode: pd - name: WiFi type: ieee802.11ac diff --git a/device-types/Cisco/AIR-LAP1242AG-A-K9.yaml b/device-types/Cisco/AIR-LAP1242AG-A-K9.yaml index c0e3492f..15e00646 100644 --- a/device-types/Cisco/AIR-LAP1242AG-A-K9.yaml +++ b/device-types/Cisco/AIR-LAP1242AG-A-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-LAP1242AG-A-K9 u_height: 0 is_full_depth: false interfaces: + - name: WAN + type: 100base-tx + poe_mode: pd - name: WiFi type: ieee802.11g diff --git a/device-types/Cisco/AIR-LAP1522HZ-A-K9.yaml b/device-types/Cisco/AIR-LAP1522HZ-A-K9.yaml index 7355d530..a0dac39a 100644 --- a/device-types/Cisco/AIR-LAP1522HZ-A-K9.yaml +++ b/device-types/Cisco/AIR-LAP1522HZ-A-K9.yaml @@ -6,5 +6,8 @@ part_number: AIR-LAP1522HZ-A-K9 u_height: 0 is_full_depth: false interfaces: + - name: WAN + type: 100base-tx + poe_mode: pd - name: WiFi type: ieee802.11g diff --git a/device-types/Cisco/C9120AXI-E.yaml b/device-types/Cisco/C9120AXI-E.yaml index 88da246f..6a401a69 100644 --- a/device-types/Cisco/C9120AXI-E.yaml +++ b/device-types/Cisco/C9120AXI-E.yaml @@ -10,6 +10,7 @@ interfaces: type: ieee802.11ax - name: GigabitEthernet0 type: 2.5gbase-t + poe_mode: pd console-ports: - name: console type: rj-45 diff --git a/device-types/Cisco/C9130AXI-B.yaml b/device-types/Cisco/C9130AXI-B.yaml index eea0e543..a8ca940a 100644 --- a/device-types/Cisco/C9130AXI-B.yaml +++ b/device-types/Cisco/C9130AXI-B.yaml @@ -10,6 +10,7 @@ interfaces: type: ieee802.11ax - name: GigabitEthernet0 type: 5gbase-t + poe_mode: pd console-ports: - name: console type: rj-45 diff --git a/device-types/Cisco/C9130AXI-E.yaml b/device-types/Cisco/C9130AXI-E.yaml index 2938cbd4..4580bbea 100644 --- a/device-types/Cisco/C9130AXI-E.yaml +++ b/device-types/Cisco/C9130AXI-E.yaml @@ -10,6 +10,7 @@ interfaces: type: ieee802.11ax - name: GigabitEthernet0 type: 5gbase-t + poe_mode: pd console-ports: - name: console type: rj-45 diff --git a/device-types/Cisco/IE-2000-16PTC-G-E.yaml b/device-types/Cisco/IE-2000-16PTC-G-E.yaml index 1b5a68f1..953da381 100644 --- a/device-types/Cisco/IE-2000-16PTC-G-E.yaml +++ b/device-types/Cisco/IE-2000-16PTC-G-E.yaml @@ -5,6 +5,16 @@ part_number: IE-2000-16PTC-G-E slug: cisco-ie-2000-16ptc-g-e u_height: 3 is_full_depth: false +console-ports: + - name: con 0 + type: rj-45 + - name: usb + type: usb-mini-b +power-ports: + - name: DC-A + type: dc-terminal + - name: DC-B + type: dc-terminal interfaces: - name: FastEthernet1/1 type: 100base-tx @@ -42,8 +52,3 @@ interfaces: type: 1000base-t - name: GigabitEthernet1/2 type: 1000base-t -console-ports: - - name: con 0 - type: rj-45 - - name: usb - type: usb-mini-b diff --git a/device-types/Cisco/IE-2000-16PTC-G-NX.yaml b/device-types/Cisco/IE-2000-16PTC-G-NX.yaml index d57d85ca..c19932d7 100644 --- a/device-types/Cisco/IE-2000-16PTC-G-NX.yaml +++ b/device-types/Cisco/IE-2000-16PTC-G-NX.yaml @@ -5,6 +5,16 @@ part_number: IE-2000-16PTC-G-NX slug: cisco-ie-2000-16ptc-g-nx u_height: 3 is_full_depth: false +console-ports: + - name: con 0 + type: rj-45 + - name: usb + type: usb-mini-b +power-ports: + - name: DC-A + type: dc-terminal + - name: DC-B + type: dc-terminal interfaces: - name: FastEthernet1/1 type: 100base-tx @@ -42,8 +52,3 @@ interfaces: type: 1000base-t - name: GigabitEthernet1/2 type: 1000base-t -console-ports: - - name: con 0 - type: rj-45 - - name: usb - type: usb-mini-b diff --git a/device-types/Cisco/IE-2000-4TS-G-B.yaml b/device-types/Cisco/IE-2000-4TS-G-B.yaml index 4761876d..1d8ecdbf 100644 --- a/device-types/Cisco/IE-2000-4TS-G-B.yaml +++ b/device-types/Cisco/IE-2000-4TS-G-B.yaml @@ -5,6 +5,16 @@ part_number: IE-2000-4TS-G-B slug: cisco-ie-2000-4ts-g-b u_height: 3 is_full_depth: false +console-ports: + - name: con 0 + type: rj-45 + - name: usb + type: usb-mini-b +power-ports: + - name: DC-A + type: dc-terminal + - name: DC-B + type: dc-terminal interfaces: - name: FastEthernet1/1 type: 100base-tx @@ -18,8 +28,3 @@ interfaces: type: 1000base-t - name: GigabitEthernet1/2 type: 1000base-t -console-ports: - - name: con 0 - type: rj-45 - - name: usb - type: usb-mini-b diff --git a/device-types/Cisco/IE-4000-4GC4GP4G-E.yaml b/device-types/Cisco/IE-4000-4GC4GP4G-E.yaml index a6947ca8..10c7a5ce 100644 --- a/device-types/Cisco/IE-4000-4GC4GP4G-E.yaml +++ b/device-types/Cisco/IE-4000-4GC4GP4G-E.yaml @@ -11,6 +11,11 @@ console-ports: type: usb-mini-b - name: console port type: rj-45 +power-ports: + - name: DC-A + type: dc-terminal + - name: DC-B + type: dc-terminal interfaces: - name: GigabitEthernet1/1 type: 1000base-t diff --git a/device-types/Cisco/IE-4000-8GT8GP4G-E.yaml b/device-types/Cisco/IE-4000-8GT8GP4G-E.yaml index 32e86f72..76e161bc 100644 --- a/device-types/Cisco/IE-4000-8GT8GP4G-E.yaml +++ b/device-types/Cisco/IE-4000-8GT8GP4G-E.yaml @@ -5,6 +5,14 @@ part_number: IE-4000-8GT8GP4G-E slug: cisco-ie-4000-8gt8gp4g-e u_height: 3 is_full_depth: false +console-ports: + - name: usb + type: usb-mini-b +power-ports: + - name: DC-A + type: dc-terminal + - name: DC-B + type: dc-terminal interfaces: - name: GigabitEthernet1/1 type: 1000base-t @@ -46,6 +54,3 @@ interfaces: type: 1000base-t - name: GigabitEthernet1/20 type: 1000base-t -console-ports: - - name: usb - type: usb-mini-b diff --git a/device-types/Cisco/IR829GW-LTE-NA-AK9.yaml b/device-types/Cisco/IR829GW-LTE-NA-AK9.yaml index 412b3a42..3c04b32a 100644 --- a/device-types/Cisco/IR829GW-LTE-NA-AK9.yaml +++ b/device-types/Cisco/IR829GW-LTE-NA-AK9.yaml @@ -5,6 +5,12 @@ part_number: IR829GW-LTE-NA-AK9 slug: cisco-ir829gw-lte-na-ak9 u_height: 1 is_full_depth: false +console-ports: + - name: usb + type: usb-mini-b +power-ports: + - name: DC-A + type: dc-terminal interfaces: - name: GigabitEthernet1 type: 1000base-t @@ -20,6 +26,3 @@ interfaces: type: lte - name: cellular1 type: lte -console-ports: - - name: usb - type: usb-mini-b diff --git a/device-types/Cisco/ME-3600X-24FS-M.yaml b/device-types/Cisco/ME-3600X-24FS-M.yaml index f89b9d91..1a20a47d 100644 --- a/device-types/Cisco/ME-3600X-24FS-M.yaml +++ b/device-types/Cisco/ME-3600X-24FS-M.yaml @@ -8,6 +8,11 @@ u_height: 1 console-ports: - name: Console type: rj-45 +module-bays: + - name: PSU1 + position: '1' + - name: PSU2 + position: '2' interfaces: - name: Gi0 type: 1000base-t diff --git a/device-types/Cisco/ME-3600X-24TS-M.yaml b/device-types/Cisco/ME-3600X-24TS-M.yaml index e11524ce..133a956c 100644 --- a/device-types/Cisco/ME-3600X-24TS-M.yaml +++ b/device-types/Cisco/ME-3600X-24TS-M.yaml @@ -8,6 +8,11 @@ u_height: 1 console-ports: - name: Console type: rj-45 +module-bays: + - name: PSU1 + position: '1' + - name: PSU2 + position: '2' interfaces: - name: Gi0 type: 1000base-t diff --git a/device-types/Cisco/ME-3750-24TE-M.yaml b/device-types/Cisco/ME-3750-24TE-M.yaml index 98811956..60e28631 100644 --- a/device-types/Cisco/ME-3750-24TE-M.yaml +++ b/device-types/Cisco/ME-3750-24TE-M.yaml @@ -5,6 +5,14 @@ slug: cisco-me-3750-24te-m part_number: ME-3750-24TE-M is_full_depth: true u_height: 1 +console-ports: + - name: con0 + type: rj-45 +module-bays: + - name: PSU0 + position: '1' + - name: PSU1 + position: '2' interfaces: - name: Fa1/0/1 type: 100base-tx @@ -62,9 +70,3 @@ interfaces: type: 1000base-t - name: Gi1/1/2 type: 1000base-t -console-ports: - - name: con0 - type: rj-45 -power-ports: - - name: PSU0 - type: iec-60320-c14 diff --git a/device-types/Cisco/ME-3800X-24FS-M.yaml b/device-types/Cisco/ME-3800X-24FS-M.yaml index e0c2f718..9bbcd15c 100644 --- a/device-types/Cisco/ME-3800X-24FS-M.yaml +++ b/device-types/Cisco/ME-3800X-24FS-M.yaml @@ -5,6 +5,14 @@ slug: cisco-me-3800x-24fs-m part_number: ME-3800X-24FS-M is_full_depth: false u_height: 1 +console-ports: + - name: con0 + type: rj-45 +module-bays: + - name: PSU0 + position: '1' + - name: PSU1 + position: '2' interfaces: - name: GigabitEthernet0/1 type: 1000base-x-sfp @@ -61,13 +69,3 @@ interfaces: - name: GigabitEthernet1 type: 1000base-t mgmt_only: true -console-ports: - - name: con0 - type: rj-45 -power-ports: - - name: PSU0 - type: iec-60320-c14 - maximum_draw: 233 - - name: PSU1 - type: iec-60320-c14 - maximum_draw: 233 diff --git a/device-types/Cisco/Meraki-MR36.yaml b/device-types/Cisco/Meraki-MR36.yaml index a83482d8..5b565225 100644 --- a/device-types/Cisco/Meraki-MR36.yaml +++ b/device-types/Cisco/Meraki-MR36.yaml @@ -10,6 +10,7 @@ comments: "- Datasheet: [https://documentation.meraki.com/MR/MR_Overview_and_Spe interfaces: - name: main type: 2.5gbase-t + poe_mode: pd - name: wlan0 type: ieee802.11n - name: wlan1 diff --git a/device-types/Cisco/Meraki-MR42.yaml b/device-types/Cisco/Meraki-MR42.yaml index 0e33488b..55aba426 100644 --- a/device-types/Cisco/Meraki-MR42.yaml +++ b/device-types/Cisco/Meraki-MR42.yaml @@ -12,8 +12,8 @@ comments: "- Datasheet: [https://meraki.cisco.com/lib/pdf/meraki_datasheet_MR42. interfaces: - name: main type: 1000base-t - poe-mode: pse - poe-type: type2-ieee802.3at + poe_mode: pd + poe_type: type2-ieee802.3at - name: wlan0 type: ieee802.11n - name: wlan1 diff --git a/device-types/Cisco/Meraki-MR44.yaml b/device-types/Cisco/Meraki-MR44.yaml index 00193b64..f5f1c1c3 100644 --- a/device-types/Cisco/Meraki-MR44.yaml +++ b/device-types/Cisco/Meraki-MR44.yaml @@ -10,6 +10,7 @@ comments: "- Datasheet: [https://documentation.meraki.com/MR/MR_Overview_and_Spe interfaces: - name: main type: 2.5gbase-t + poe_mode: pd - name: wlan0 type: ieee802.11n - name: wlan1 diff --git a/device-types/Cisco/Meraki-MR52.yaml b/device-types/Cisco/Meraki-MR52.yaml index 31078318..f1d49a4b 100644 --- a/device-types/Cisco/Meraki-MR52.yaml +++ b/device-types/Cisco/Meraki-MR52.yaml @@ -12,6 +12,7 @@ comments: "[Cisco Meraki MR52 Datasheet](https://meraki.cisco.com/product-collat interfaces: - name: eth0 type: 1000base-t + poe_mode: pd - name: eth1 type: 1000base-t - name: wlan0 diff --git a/device-types/Cisco/Meraki-MR53.yaml b/device-types/Cisco/Meraki-MR53.yaml index bbb7e33b..a33f0ee5 100644 --- a/device-types/Cisco/Meraki-MR53.yaml +++ b/device-types/Cisco/Meraki-MR53.yaml @@ -10,6 +10,7 @@ comments: "- Datasheet: [https://meraki.cisco.com/product-collateral/mr53-datash interfaces: - name: eth0 type: 2.5gbase-t + poe_mode: pd - name: eth1 type: 1000base-t - name: wlan0 diff --git a/device-types/Cisco/Meraki-MR53E.yaml b/device-types/Cisco/Meraki-MR53E.yaml index f75efd7b..bf64a106 100644 --- a/device-types/Cisco/Meraki-MR53E.yaml +++ b/device-types/Cisco/Meraki-MR53E.yaml @@ -10,6 +10,7 @@ comments: "- Datasheet: [https://meraki.cisco.com/product-collateral/mr53e-datas interfaces: - name: main type: 2.5gbase-t + poe_mode: pd - name: secondary type: 1000base-t - name: wlan0 diff --git a/device-types/Cisco/Meraki-MR56.yaml b/device-types/Cisco/Meraki-MR56.yaml index 8e1e9b75..63750b66 100644 --- a/device-types/Cisco/Meraki-MR56.yaml +++ b/device-types/Cisco/Meraki-MR56.yaml @@ -10,6 +10,7 @@ comments: "- Datasheet: [https://documentation.meraki.com/MR/MR_Overview_and_Spe interfaces: - name: main type: 2.5gbase-t + poe_mode: pd - name: wlan0 type: ieee802.11n - name: wlan1 diff --git a/device-types/Cisco/Meraki-MR57.yaml b/device-types/Cisco/Meraki-MR57.yaml index 124b58af..1fcb6687 100644 --- a/device-types/Cisco/Meraki-MR57.yaml +++ b/device-types/Cisco/Meraki-MR57.yaml @@ -10,6 +10,7 @@ comments: "- Datasheet: [https://documentation.meraki.com/MR/MR_Overview_and_Spe interfaces: - name: main type: 2.5gbase-t + poe_mode: pd - name: secondary type: 2.5gbase-t - name: wlan0 diff --git a/device-types/Cisco/Meraki-MR74.yaml b/device-types/Cisco/Meraki-MR74.yaml index 2f74c3a6..65e378e8 100644 --- a/device-types/Cisco/Meraki-MR74.yaml +++ b/device-types/Cisco/Meraki-MR74.yaml @@ -12,6 +12,7 @@ comments: "- Datasheet: [https://meraki.cisco.com/lib/pdf/meraki_datasheet_MR74. interfaces: - name: main type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11n - name: wlan1 diff --git a/device-types/Dell/PowerEdge-C6400.yaml b/device-types/Dell/PowerEdge-C6400.yaml index 6ae8f9b4..be0456b6 100644 --- a/device-types/Dell/PowerEdge-C6400.yaml +++ b/device-types/Dell/PowerEdge-C6400.yaml @@ -4,3 +4,8 @@ model: PowerEdge C6400 slug: dell-poweredge-c6400 u_height: 2 is_full_depth: false +module-bays: + - name: Power 1 + position: '1' + - name: Power 2 + position: '2' diff --git a/device-types/Dell/PowerEdge-C6420.yaml b/device-types/Dell/PowerEdge-C6420.yaml index 96e8b1f5..eddd01ed 100644 --- a/device-types/Dell/PowerEdge-C6420.yaml +++ b/device-types/Dell/PowerEdge-C6420.yaml @@ -6,14 +6,11 @@ u_height: 2 is_full_depth: false comments: | [Dell C6420 Spec Sheet](https://www.delltechnologies.com/asset/en-us/products/servers/technical-support/dell-emc-poweredge-c6520-spec-sheet.pdf) -console-ports: - - name: Mini-DP - type: other -power-ports: +module-bays: - name: Power 1 - type: iec-60320-c14 + position: '1' - name: Power 2 - type: iec-60320-c14 + position: '2' interfaces: - name: Gig-E 1 type: 1000base-t diff --git a/device-types/Eaton/9PXEBM180.yaml b/device-types/Eaton/9PXEBM180.yaml index 4fb487fb..8d740f61 100644 --- a/device-types/Eaton/9PXEBM180.yaml +++ b/device-types/Eaton/9PXEBM180.yaml @@ -7,6 +7,9 @@ u_height: 3 is_full_depth: true airflow: front-to-rear comments: Eaton 9PX extended battery moduel (EBM), 180V, Rack/tower, 3U [Manual](https://www.eaton.com/content/dam/eaton/products/backup-power-ups-surge-it-power-distribution/backup-power-ups/eaton-9px-ups/eaton-9sx-9px-ups-5-6-kva-ebm-180v-installation-and-user-manual.pdf) +power-ports: + - name: UPS Input + type: other interfaces: - name: Battery connector, top type: other diff --git a/device-types/Eaton/9PXEBM72RT2U.yaml b/device-types/Eaton/9PXEBM72RT2U.yaml index ec122533..0f8d1e55 100644 --- a/device-types/Eaton/9PXEBM72RT2U.yaml +++ b/device-types/Eaton/9PXEBM72RT2U.yaml @@ -7,6 +7,9 @@ u_height: 2 is_full_depth: true airflow: front-to-rear comments: Eaton 9PX EBM 2U 72V Sealed Lead Acid VRLA 9PXEBM72RT2U [Manual](https://www.eaton.com/content/dam/eaton/products/backup-power-ups-surge-it-power-distribution/backup-power-ups/eaton-9px-ups/eaton-9px-1-3kva-ups-manual.pdf) +power-ports: + - name: UPS Input + type: other interfaces: - name: Battery connector, left type: other diff --git a/device-types/Ericsson/R6672.yml b/device-types/Ericsson/R6672.yml index afcd6f9b..03b86299 100644 --- a/device-types/Ericsson/R6672.yml +++ b/device-types/Ericsson/R6672.yml @@ -5,10 +5,14 @@ slug: ericsson-r6672 part_number: R6672 u_height: 1 is_full_depth: true +airflow: front-to-rear console-ports: - name: console type: rj-45 description: baudrate 115200 +power-ports: + - name: PSU1 + type: iec-60320-c16 interfaces: - name: 1/1 type: 1000base-x-sfp diff --git a/device-types/Extreme Networks/5520-24T.yaml b/device-types/Extreme Networks/5520-24T.yaml index e660c376..e5ed20ab 100644 --- a/device-types/Extreme Networks/5520-24T.yaml +++ b/device-types/Extreme Networks/5520-24T.yaml @@ -79,7 +79,7 @@ interfaces: - name: Mgmt type: 1000base-t mgmt_only: true -device-bays: +module-bays: - name: PSU-1 - name: PSU-2 - name: VIM-2 diff --git a/device-types/Extreme Networks/X460-G2-24t-10GE4.yaml b/device-types/Extreme Networks/X460-G2-24t-10GE4.yaml index a9322a24..d97ae1ee 100644 --- a/device-types/Extreme Networks/X460-G2-24t-10GE4.yaml +++ b/device-types/Extreme Networks/X460-G2-24t-10GE4.yaml @@ -87,7 +87,7 @@ interfaces: - name: Mgmt type: 1000base-t mgmt_only: true -device-bays: +module-bays: - name: PSU-1 - name: PSU-2 - name: VIM-2 diff --git a/device-types/Extreme Networks/X460-G2-48p-10GE4.yaml b/device-types/Extreme Networks/X460-G2-48p-10GE4.yaml index cefa26b4..7fe561be 100644 --- a/device-types/Extreme Networks/X460-G2-48p-10GE4.yaml +++ b/device-types/Extreme Networks/X460-G2-48p-10GE4.yaml @@ -114,16 +114,11 @@ interfaces: type: 10gbase-x-sfpp - name: '52' type: 10gbase-x-sfpp - - name: '53' - type: other - description: either Stacking-Ports or additional SFP+; only with VIM-2 module - - name: '54' - type: other - description: either Stacking-Ports or additional SFP+; only with VIM-2 module - name: Mgmt type: 1000base-t mgmt_only: true -device-bays: +module-bays: - name: PSU-1 - name: PSU-2 - name: VIM-2 + position: VIM diff --git a/device-types/FS/FHU-FPP48FLCSMF.yaml b/device-types/FS/FHU-FPP48FLCSMF.yaml index bafef774..c1ad09e0 100644 --- a/device-types/FS/FHU-FPP48FLCSMF.yaml +++ b/device-types/FS/FHU-FPP48FLCSMF.yaml @@ -6,6 +6,7 @@ part_number: FHU-FPP48FLCSMF (#35530) u_height: 1.0 is_full_depth: true comments: FHU 1U 19" Fiber Adapter Panel, 48 Fibers OS2 Single Mode, 24 x LC UPC Duplex (Blue) Adapter, Ceramic Sleeve +is_powered: false front-ports: - name: Front Port 1 type: lc diff --git a/device-types/FS/FMU-1UFMX-N.yaml b/device-types/FS/FMU-1UFMX-N.yaml index c899cb53..c51d9ab0 100644 --- a/device-types/FS/FMU-1UFMX-N.yaml +++ b/device-types/FS/FMU-1UFMX-N.yaml @@ -8,6 +8,7 @@ u_height: 1 is_full_depth: false airflow: passive subdevice_role: parent +is_powered: false device-bays: - name: '1' - name: '2' diff --git a/device-types/FS/FMU-C182761M.yaml b/device-types/FS/FMU-C182761M.yaml index 6992ff3e..5d41bc9d 100644 --- a/device-types/FS/FMU-C182761M.yaml +++ b/device-types/FS/FMU-C182761M.yaml @@ -6,6 +6,7 @@ part_number: FMU-C182761M u_height: 1 is_full_depth: false comments: 18 Channels 1270-1610nm, with Monitor Port, LC/UPC, Dual Fiber CWDM Mux Demux, 1U Rack Mount +is_powered: false front-ports: - name: 1270nm type: lc diff --git a/device-types/FS/FMU-D402160M.yaml b/device-types/FS/FMU-D402160M.yaml index b1e02c1b..b7b5d587 100644 --- a/device-types/FS/FMU-D402160M.yaml +++ b/device-types/FS/FMU-D402160M.yaml @@ -6,6 +6,7 @@ part_number: FMU-D402160M u_height: 1 is_full_depth: false comments: 40 Channels 100GHz C21-C60, with Monitor Port, LC/UPC, Dual Fiber DWDM Mux Demux, 1U Rack Mount +is_powered: false front-ports: - name: C21 type: lc diff --git a/device-types/Fortinet/SP-RACKTRAY-02.yaml b/device-types/Fortinet/SP-RACKTRAY-02.yaml index dd2cfffe..652c4184 100644 --- a/device-types/Fortinet/SP-RACKTRAY-02.yaml +++ b/device-types/Fortinet/SP-RACKTRAY-02.yaml @@ -7,6 +7,7 @@ u_height: 1.0 is_full_depth: false subdevice_role: parent comments: '[Fortinet Rack Mount Tray QuickStart Guide](https://fortinetweb.s3.amazonaws.com/docs.fortinet.com/v2/attachments/d3b3c280-1a08-11e9-9685-f8bc1258b856/Fortinet-Rack-Mount-Tray-QSG.pdf)' +is_powered: false device-bays: - name: Left - name: Right diff --git a/device-types/Fujitsu/primergy-bx2560-m1.yaml b/device-types/Fujitsu/primergy-bx2560-m1.yaml index ebb09bab..54d2ee9b 100644 --- a/device-types/Fujitsu/primergy-bx2560-m1.yaml +++ b/device-types/Fujitsu/primergy-bx2560-m1.yaml @@ -4,6 +4,7 @@ model: Primergy BX2560 M1 slug: fujitsu-primergy-bx2560-m1 u_height: 0 is_full_depth: true +subdevice_role: child console-ports: - name: Console type: rj-45 diff --git a/device-types/Fujitsu/primergy-bx2560-m2.yaml b/device-types/Fujitsu/primergy-bx2560-m2.yaml index 9746a83a..6ef8350d 100644 --- a/device-types/Fujitsu/primergy-bx2560-m2.yaml +++ b/device-types/Fujitsu/primergy-bx2560-m2.yaml @@ -4,6 +4,7 @@ model: Primergy BX2560 M2 slug: fujitsu-primergy-bx2560-m2 u_height: 0 is_full_depth: true +subdevice_role: child console-ports: - name: Console type: rj-45 diff --git a/device-types/Fujitsu/primergy-bx924-s4.yaml b/device-types/Fujitsu/primergy-bx924-s4.yaml index 2d28be51..83625c92 100644 --- a/device-types/Fujitsu/primergy-bx924-s4.yaml +++ b/device-types/Fujitsu/primergy-bx924-s4.yaml @@ -4,6 +4,7 @@ model: Primergy BX924 S4 slug: fujitsu-primergy-bx924-s4 u_height: 0 is_full_depth: true +subdevice_role: child console-ports: - name: Console type: rj-45 diff --git a/device-types/Generic/24-port-copper-patch-panel-half-depth.yaml b/device-types/Generic/24-port-copper-patch-panel-half-depth.yaml index b3d110ab..ce9f8fcd 100644 --- a/device-types/Generic/24-port-copper-patch-panel-half-depth.yaml +++ b/device-types/Generic/24-port-copper-patch-panel-half-depth.yaml @@ -5,6 +5,7 @@ slug: generic-24-port-copper-patch-panel-half-depth u_height: 1 is_full_depth: false airflow: passive +is_powered: false front-ports: - name: Port 1 type: 8p8c diff --git a/device-types/Generic/24-port-copper-patch-panel.yaml b/device-types/Generic/24-port-copper-patch-panel.yaml index d2532df9..6771c87f 100644 --- a/device-types/Generic/24-port-copper-patch-panel.yaml +++ b/device-types/Generic/24-port-copper-patch-panel.yaml @@ -4,6 +4,7 @@ model: 24-port Copper Patch Panel slug: generic-24-port-copper-patch-panel u_height: 1 airflow: passive +is_powered: false front-ports: - name: Port 1 type: 8p8c diff --git a/device-types/Generic/48-port-copper-patch-panel-half-depth.yaml b/device-types/Generic/48-port-copper-patch-panel-half-depth.yaml index d671c885..63627818 100644 --- a/device-types/Generic/48-port-copper-patch-panel-half-depth.yaml +++ b/device-types/Generic/48-port-copper-patch-panel-half-depth.yaml @@ -5,6 +5,7 @@ slug: generic-48-port-copper-patch-panel-half-depth u_height: 2 is_full_depth: false airflow: passive +is_powered: false front-ports: - name: Port 1 type: 8p8c diff --git a/device-types/Generic/48-port-copper-patch-panel.yaml b/device-types/Generic/48-port-copper-patch-panel.yaml index 95cac294..3baec45a 100644 --- a/device-types/Generic/48-port-copper-patch-panel.yaml +++ b/device-types/Generic/48-port-copper-patch-panel.yaml @@ -4,6 +4,7 @@ model: 48-port Copper Patch Panel slug: generic-48-port-copper-patch-panel u_height: 2 airflow: passive +is_powered: false front-ports: - name: Port 1 type: 8p8c diff --git a/device-types/Generic/LC-12-port-fiber-patch-panel-half-depth.yaml b/device-types/Generic/LC-12-port-fiber-patch-panel-half-depth.yaml index 7b5096b5..fb791849 100644 --- a/device-types/Generic/LC-12-port-fiber-patch-panel-half-depth.yaml +++ b/device-types/Generic/LC-12-port-fiber-patch-panel-half-depth.yaml @@ -5,6 +5,7 @@ slug: generic-lc-12-port-fiber-patch-panel-half-depth u_height: 1 is_full_depth: false airflow: passive +is_powered: false front-ports: - name: Port 1 type: lc diff --git a/device-types/Generic/LC-12-port-fiber-patch-panel.yaml b/device-types/Generic/LC-12-port-fiber-patch-panel.yaml index 26eecf7b..e50c4f89 100644 --- a/device-types/Generic/LC-12-port-fiber-patch-panel.yaml +++ b/device-types/Generic/LC-12-port-fiber-patch-panel.yaml @@ -4,6 +4,7 @@ model: LC-12-port Fiber Patch Panel slug: generic-lc-12-port-fiber-patch-panel u_height: 1 airflow: passive +is_powered: false front-ports: - name: Port 1 type: lc diff --git a/device-types/Generic/LC-24-port-fiber-patch-panel-half-depth.yaml b/device-types/Generic/LC-24-port-fiber-patch-panel-half-depth.yaml index 60e10fcf..37cf129f 100644 --- a/device-types/Generic/LC-24-port-fiber-patch-panel-half-depth.yaml +++ b/device-types/Generic/LC-24-port-fiber-patch-panel-half-depth.yaml @@ -5,6 +5,7 @@ slug: generic-lc-24-port-fiber-patch-panel-half-depth u_height: 1 is_full_depth: false airflow: passive +is_powered: false front-ports: - name: Port 1 type: lc diff --git a/device-types/Generic/LC-24-port-fiber-patch-panel.yaml b/device-types/Generic/LC-24-port-fiber-patch-panel.yaml index 8608c9cb..7724917d 100644 --- a/device-types/Generic/LC-24-port-fiber-patch-panel.yaml +++ b/device-types/Generic/LC-24-port-fiber-patch-panel.yaml @@ -4,6 +4,7 @@ model: LC-24-port Fiber Patch Panel slug: generic-lc-24-port-fiber-patch-panel u_height: 1 airflow: passive +is_powered: false front-ports: - name: Port 1 type: lc diff --git a/device-types/Generic/LC-48-port-fiber-patch-panel-half-depth.yaml b/device-types/Generic/LC-48-port-fiber-patch-panel-half-depth.yaml index d0f6fc7c..2320849f 100644 --- a/device-types/Generic/LC-48-port-fiber-patch-panel-half-depth.yaml +++ b/device-types/Generic/LC-48-port-fiber-patch-panel-half-depth.yaml @@ -5,6 +5,7 @@ slug: generic-lc-48-port-fiber-patch-panel-half-depth u_height: 2 is_full_depth: false airflow: passive +is_powered: false front-ports: - name: Port 1 type: lc diff --git a/device-types/Generic/LC-48-port-fiber-patch-panel.yaml b/device-types/Generic/LC-48-port-fiber-patch-panel.yaml index d2b13258..01540e9c 100644 --- a/device-types/Generic/LC-48-port-fiber-patch-panel.yaml +++ b/device-types/Generic/LC-48-port-fiber-patch-panel.yaml @@ -4,6 +4,7 @@ model: LC-48-port Fiber Patch Panel slug: generic-lc-48-port-fiber-patch-panel u_height: 2 airflow: passive +is_powered: false front-ports: - name: Port 1 type: lc diff --git a/device-types/Generic/SC-24-double-port-fiber-patch-panel-half-depth.yaml b/device-types/Generic/SC-24-double-port-fiber-patch-panel-half-depth.yaml index 907ef01b..a2579b30 100644 --- a/device-types/Generic/SC-24-double-port-fiber-patch-panel-half-depth.yaml +++ b/device-types/Generic/SC-24-double-port-fiber-patch-panel-half-depth.yaml @@ -5,6 +5,7 @@ slug: generic-sc-24-double-port-fiber-patch-panel-half-depth u_height: 1 is_full_depth: false airflow: passive +is_powered: false front-ports: - name: '1.1' type: sc diff --git a/device-types/Generic/SC-24-double-port-fiber-patch-panel.yaml b/device-types/Generic/SC-24-double-port-fiber-patch-panel.yaml index 1b8aa5a0..a1afd468 100644 --- a/device-types/Generic/SC-24-double-port-fiber-patch-panel.yaml +++ b/device-types/Generic/SC-24-double-port-fiber-patch-panel.yaml @@ -5,6 +5,7 @@ slug: generic-sc-24-double-port-fiber-patch-panel u_height: 1 is_full_depth: true airflow: passive +is_powered: false front-ports: - name: '1.1' type: sc diff --git a/device-types/Generic/SC-24-port-fiber-patch-panel-half-depth.yaml b/device-types/Generic/SC-24-port-fiber-patch-panel-half-depth.yaml index a4b870b8..d96fe1a7 100644 --- a/device-types/Generic/SC-24-port-fiber-patch-panel-half-depth.yaml +++ b/device-types/Generic/SC-24-port-fiber-patch-panel-half-depth.yaml @@ -5,6 +5,7 @@ slug: generic-sc-24-port-fiber-patch-panel-half-depth u_height: 1 is_full_depth: false airflow: passive +is_powered: false front-ports: - name: '1' type: sc diff --git a/device-types/Generic/SC-24-port-fiber-patch-panel.yaml b/device-types/Generic/SC-24-port-fiber-patch-panel.yaml index 4f84dbb3..dc7de030 100644 --- a/device-types/Generic/SC-24-port-fiber-patch-panel.yaml +++ b/device-types/Generic/SC-24-port-fiber-patch-panel.yaml @@ -5,6 +5,7 @@ slug: generic-sc-24-port-fiber-patch-panel u_height: 1 is_full_depth: true airflow: passive +is_powered: false front-ports: - name: '1' type: sc diff --git a/device-types/Generic/cable-management-panel-1ru.yaml b/device-types/Generic/cable-management-panel-1ru.yaml index f9d45bec..d141c40c 100644 --- a/device-types/Generic/cable-management-panel-1ru.yaml +++ b/device-types/Generic/cable-management-panel-1ru.yaml @@ -5,3 +5,4 @@ slug: generic-cable-management-panel-1ru u_height: 1 is_full_depth: false airflow: passive +is_powered: false diff --git a/device-types/Generic/cable-management-panel-2ru.yaml b/device-types/Generic/cable-management-panel-2ru.yaml index 7d0ad4c9..e9b368f8 100644 --- a/device-types/Generic/cable-management-panel-2ru.yaml +++ b/device-types/Generic/cable-management-panel-2ru.yaml @@ -5,3 +5,4 @@ slug: generic-cable-management-panel-2ru u_height: 2 is_full_depth: false airflow: passive +is_powered: false diff --git a/device-types/Generic/shelf-1he.yaml b/device-types/Generic/shelf-1he.yaml index ee097691..7e0a903b 100644 --- a/device-types/Generic/shelf-1he.yaml +++ b/device-types/Generic/shelf-1he.yaml @@ -5,3 +5,4 @@ slug: generic-shelf-1he u_height: 1 is_full_depth: false airflow: passive +is_powered: false diff --git a/device-types/Generic/shelf-2he.yaml b/device-types/Generic/shelf-2he.yaml index 23f3058d..5ec95d6a 100644 --- a/device-types/Generic/shelf-2he.yaml +++ b/device-types/Generic/shelf-2he.yaml @@ -5,3 +5,4 @@ slug: generic-shelf-2he u_height: 2 is_full_depth: false airflow: passive +is_powered: false diff --git a/device-types/Generic/wall-box-2-utp-plugs.yaml b/device-types/Generic/wall-box-2-utp-plugs.yaml index 94882583..f33cb225 100644 --- a/device-types/Generic/wall-box-2-utp-plugs.yaml +++ b/device-types/Generic/wall-box-2-utp-plugs.yaml @@ -4,6 +4,7 @@ model: Wall box, 2 UTP plugs slug: generic-wall-box-2-utp-plugs u_height: 0.0 is_full_depth: false +is_powered: false front-ports: - name: Port 1 type: 8p8c diff --git a/device-types/Generic/wall-box-3-utp-plugs.yaml b/device-types/Generic/wall-box-3-utp-plugs.yaml index 84142f69..0ce6e7d3 100644 --- a/device-types/Generic/wall-box-3-utp-plugs.yaml +++ b/device-types/Generic/wall-box-3-utp-plugs.yaml @@ -4,6 +4,7 @@ model: Wall box, 3 UTP plugs slug: generic-wall-box-3-utp-plugs u_height: 0.0 is_full_depth: false +is_powered: false front-ports: - name: Port 1 type: 8p8c diff --git a/device-types/Generic/wall-box-4-utp-plugs.yaml b/device-types/Generic/wall-box-4-utp-plugs.yaml index abcc3a90..238cdd7b 100644 --- a/device-types/Generic/wall-box-4-utp-plugs.yaml +++ b/device-types/Generic/wall-box-4-utp-plugs.yaml @@ -4,6 +4,7 @@ model: Wall box, 4 UTP plugs slug: generic-wall-box-4-utp-plugs u_height: 0.0 is_full_depth: false +is_powered: false front-ports: - name: Port 1 type: 8p8c diff --git a/device-types/Generic/wall-box-6-utp-plugs.yaml b/device-types/Generic/wall-box-6-utp-plugs.yaml index 2c2e2c0d..e0607c68 100644 --- a/device-types/Generic/wall-box-6-utp-plugs.yaml +++ b/device-types/Generic/wall-box-6-utp-plugs.yaml @@ -4,6 +4,7 @@ model: Wall box, 6 UTP plugs slug: generic-wall-box-6-utp-plugs u_height: 0.0 is_full_depth: false +is_powered: false front-ports: - name: Port 1 type: 8p8c diff --git a/device-types/HPE/Aruba-7005.yaml b/device-types/HPE/Aruba-7005.yaml index c96b0d3d..35eff25d 100644 --- a/device-types/HPE/Aruba-7005.yaml +++ b/device-types/HPE/Aruba-7005.yaml @@ -5,6 +5,14 @@ slug: hpe-aruba-7005 part_number: JW634A is_full_depth: false u_height: 1 +console-ports: + - name: Console + type: rj-45 + - name: Console USB + type: usb-mini-b +power-ports: + - name: DC + type: dc-terminal interfaces: - name: gigabitethernet 0/0/0 type: 1000base-t @@ -14,8 +22,3 @@ interfaces: type: 1000base-t - name: gigabitethernet 0/0/3 type: 1000base-t -console-ports: - - name: Console - type: rj-45 - - name: Console USB - type: usb-mini-b diff --git a/device-types/HPE/Aruba-7010.yaml b/device-types/HPE/Aruba-7010.yaml index fbb43e9a..c2ab4af7 100644 --- a/device-types/HPE/Aruba-7010.yaml +++ b/device-types/HPE/Aruba-7010.yaml @@ -5,6 +5,15 @@ slug: hpe-aruba-7010 part_number: JW679A is_full_depth: false u_height: 1 +console-ports: + - name: Console + type: rj-45 + - name: Console USB + type: usb-mini-b +power-ports: + - name: PEM0 + type: iec-60320-c14 + maximum_draw: 190 interfaces: - name: mgmt type: 1000base-t @@ -45,12 +54,3 @@ interfaces: type: 1000base-x-sfp - name: gigabitethernet 0/0/17 type: 1000base-x-sfp -power-ports: - - name: PEM0 - type: iec-60320-c14 - maximum_draw: 190 -console-ports: - - name: Console - type: rj-45 - - name: Console USB - type: usb-mini-b diff --git a/device-types/HPE/Aruba-IAP-205.yaml b/device-types/HPE/Aruba-IAP-205.yaml index b06e8974..e5cd2be2 100644 --- a/device-types/HPE/Aruba-IAP-205.yaml +++ b/device-types/HPE/Aruba-IAP-205.yaml @@ -9,6 +9,9 @@ comments: '[Aruba 200 Series Datasheet](https://www.arubanetworks.com/assets/ds/ console-ports: - name: Console type: rj-45 +power-ports: + - name: Power + type: dc-terminal interfaces: - name: Port 1 type: 1000base-t diff --git a/device-types/HPE/Aruba-IAP-304.yaml b/device-types/HPE/Aruba-IAP-304.yaml index 847b78ab..2386ae27 100644 --- a/device-types/HPE/Aruba-IAP-304.yaml +++ b/device-types/HPE/Aruba-IAP-304.yaml @@ -11,6 +11,9 @@ console-ports: type: rj-45 - name: usb-ble type: usb-a +power-ports: + - name: Power + type: dc-terminal interfaces: - name: Port 1 type: 1000base-t diff --git a/device-types/HPE/Aruba-IAP-305.yaml b/device-types/HPE/Aruba-IAP-305.yaml index ecc789da..46e3765f 100644 --- a/device-types/HPE/Aruba-IAP-305.yaml +++ b/device-types/HPE/Aruba-IAP-305.yaml @@ -11,6 +11,9 @@ console-ports: type: rj-45 - name: usb-ble type: usb-a +power-ports: + - name: Power + type: dc-terminal interfaces: - name: Port 1 type: 1000base-t diff --git a/device-types/HPE/Aruba-IAP-315.yaml b/device-types/HPE/Aruba-IAP-315.yaml index 8e65f213..d4f15eb3 100644 --- a/device-types/HPE/Aruba-IAP-315.yaml +++ b/device-types/HPE/Aruba-IAP-315.yaml @@ -11,6 +11,9 @@ console-ports: type: rj-45 - name: usb-ble type: usb-a +power-ports: + - name: Power + type: dc-terminal interfaces: - name: Port 1 type: 1000base-t diff --git a/device-types/HPE/Aruba-IAP-505.yaml b/device-types/HPE/Aruba-IAP-505.yaml index bad89908..a345d164 100644 --- a/device-types/HPE/Aruba-IAP-505.yaml +++ b/device-types/HPE/Aruba-IAP-505.yaml @@ -12,6 +12,9 @@ comments: '[Aruba 500 Series Datasheet](https://www.arubanetworks.com/assets/ds/ console-ports: - name: usb-ble type: usb-a +power-ports: + - name: Power + type: dc-terminal interfaces: - name: Port 1 type: 1000base-t diff --git a/device-types/HPE/Aruba-IAP-515.yaml b/device-types/HPE/Aruba-IAP-515.yaml index dac5d37e..7db7cbc7 100644 --- a/device-types/HPE/Aruba-IAP-515.yaml +++ b/device-types/HPE/Aruba-IAP-515.yaml @@ -11,6 +11,9 @@ console-ports: type: rj-45 - name: usb-ble type: usb-a +power-ports: + - name: Power + type: dc-terminal interfaces: - name: Port 1 type: 1000base-t diff --git a/device-types/HPE/Aruba-ec-v.yaml b/device-types/HPE/Aruba-ec-v.yaml index 8a08fca1..993b9ba2 100644 --- a/device-types/HPE/Aruba-ec-v.yaml +++ b/device-types/HPE/Aruba-ec-v.yaml @@ -5,6 +5,9 @@ slug: hpe-aruba-ec-v u_height: 1 is_full_depth: false airflow: passive +power-ports: + - name: Power + type: dc-terminal interfaces: - name: lan0 type: virtual diff --git a/device-types/HPE/HP-3100-24-EI.yaml b/device-types/HPE/HP-3100-24-EI.yaml index e4c6cba8..a23ae7cb 100644 --- a/device-types/HPE/HP-3100-24-EI.yaml +++ b/device-types/HPE/HP-3100-24-EI.yaml @@ -11,6 +11,9 @@ weight_unit: kg console-ports: - name: Console type: rj-45 +power-ports: + - name: PSU1 + type: iec-60320-c14 interfaces: - name: GigabitEthernet1/0/1 type: 1000base-t diff --git a/device-types/Huawei/NE40E-M2K-B.yaml b/device-types/Huawei/NE40E-M2K-B.yaml index 5171163d..f4611de5 100644 --- a/device-types/Huawei/NE40E-M2K-B.yaml +++ b/device-types/Huawei/NE40E-M2K-B.yaml @@ -8,6 +8,11 @@ comments: '[NE40E-M2K-B Documentation](https://support.huawei.com/hedex/hdx.do?d console-ports: - name: Console type: rj-45 +module-bays: + - name: Power 1 + position: '1' + - name: Power 2 + position: '2' interfaces: - name: GigabitEthernet0/0/0 type: 1000base-t diff --git a/device-types/IBM/BladeCenter-H.yaml b/device-types/IBM/BladeCenter-H.yaml index 3c269e3a..3e91daf4 100644 --- a/device-types/IBM/BladeCenter-H.yaml +++ b/device-types/IBM/BladeCenter-H.yaml @@ -32,3 +32,12 @@ device-bays: - name: I/O Module Bay 10 (High-speed) - name: Management Module Bay 1 - name: Management Module Bay 2 +module-bays: + - name: PSU0 + position: '0' + - name: PSU1 + position: '1' + - name: PSU2 + position: '2' + - name: PSU3 + position: '3' diff --git a/device-types/Juniper/MX240.yaml b/device-types/Juniper/MX240.yaml index 695597ca..ca165f89 100644 --- a/device-types/Juniper/MX240.yaml +++ b/device-types/Juniper/MX240.yaml @@ -5,3 +5,12 @@ slug: juniper-mx240 u_height: 5 is_full_depth: true comments: '[Juniper MX240 Data Sheet](https://www.juniper.net/us/en/products-services/routing/mx-series/mx240/)' +module-bays: + - name: PSU0 + position: '0' + - name: PSU1 + position: '1' + - name: PSU2 + position: '2' + - name: PSU3 + position: '3' diff --git a/device-types/Juniper/MX480.yaml b/device-types/Juniper/MX480.yaml index 704f00ba..1a51dd00 100644 --- a/device-types/Juniper/MX480.yaml +++ b/device-types/Juniper/MX480.yaml @@ -5,3 +5,12 @@ slug: juniper-mx480 u_height: 8 is_full_depth: true comments: '[Juniper MX480 Data Sheet](https://www.juniper.net/us/en/products-services/routing/mx-series/mx480/)' +module-bays: + - name: PSU0 + position: '0' + - name: PSU1 + position: '1' + - name: PSU2 + position: '2' + - name: PSU3 + position: '3' diff --git a/device-types/Juniper/MX960.yaml b/device-types/Juniper/MX960.yaml index ba6980a3..a455331c 100644 --- a/device-types/Juniper/MX960.yaml +++ b/device-types/Juniper/MX960.yaml @@ -5,3 +5,12 @@ slug: juniper-mx960 u_height: 16 is_full_depth: true comments: '[Juniper MX960 Data Sheet](https://www.juniper.net/us/en/products-services/routing/mx-series/mx960/)' +module-bays: + - name: PSU0 + position: '0' + - name: PSU1 + position: '1' + - name: PSU2 + position: '2' + - name: PSU3 + position: '3' diff --git a/device-types/LANCOM/WLC-4025-plus.yaml b/device-types/LANCOM/WLC-4025-plus.yaml index f052915e..3c8975ff 100644 --- a/device-types/LANCOM/WLC-4025-plus.yaml +++ b/device-types/LANCOM/WLC-4025-plus.yaml @@ -5,6 +5,12 @@ slug: lancom-wlc-4025-plus part_number: wlc-4025-plus u_height: 1 is_full_depth: false +console-ports: + - name: com + type: mini-din-8 +power-ports: + - name: PSU0 + type: iec-60320-c14 interfaces: - name: ETH-1 type: 1000base-t @@ -14,6 +20,3 @@ interfaces: type: 1000base-t - name: ETH-4 type: 1000base-t -console-ports: - - name: com - type: mini-din-8 diff --git a/device-types/MikroTik/CCR1009-7G-1C-PC.yaml b/device-types/MikroTik/CCR1009-7G-1C-PC.yaml index 40007b4f..9006389f 100644 --- a/device-types/MikroTik/CCR1009-7G-1C-PC.yaml +++ b/device-types/MikroTik/CCR1009-7G-1C-PC.yaml @@ -24,3 +24,8 @@ interfaces: console-ports: - name: serial0 type: de-9 +power-ports: + - name: PSU0 + type: iec-60320-c14 + - name: PSU1 + type: iec-60320-c14 diff --git a/device-types/MikroTik/CCR1009-8G-1S-1S-Plus.yaml b/device-types/MikroTik/CCR1009-8G-1S-1S-Plus.yaml index 48b7a080..05ebd8f6 100644 --- a/device-types/MikroTik/CCR1009-8G-1S-1S-Plus.yaml +++ b/device-types/MikroTik/CCR1009-8G-1S-1S-Plus.yaml @@ -6,6 +6,12 @@ is_full_depth: false comments: | [Product Data](https://mikrotik.com/product/CCR1009-8G-1S-1Splus) u_height: 1 +console-ports: + - name: serial0 + type: de-9 +power-ports: + - name: PSU0 + type: iec-60320-c14 interfaces: - name: ether1 type: 1000base-t @@ -27,6 +33,3 @@ interfaces: type: 10gbase-x-sfpp - name: sfp1 type: 1000base-x-sfp -console-ports: - - name: serial0 - type: de-9 diff --git a/device-types/MikroTik/CRS106-1C-5S.yaml b/device-types/MikroTik/CRS106-1C-5S.yaml index 433baf08..f702820e 100644 --- a/device-types/MikroTik/CRS106-1C-5S.yaml +++ b/device-types/MikroTik/CRS106-1C-5S.yaml @@ -4,6 +4,9 @@ model: CRS106-1C-5S slug: mikrotik-crs106-1c-5s is_full_depth: false u_height: 1 +power-ports: + - name: PSU0 + type: dc-terminal interfaces: - name: sfp1 type: 1000base-x-sfp diff --git a/device-types/MikroTik/CRS112-8G-4S-IN.yaml b/device-types/MikroTik/CRS112-8G-4S-IN.yaml index 3f4905da..99418025 100644 --- a/device-types/MikroTik/CRS112-8G-4S-IN.yaml +++ b/device-types/MikroTik/CRS112-8G-4S-IN.yaml @@ -4,6 +4,12 @@ model: CRS112-8G-4S-IN slug: mikrotik-crs112-8g-4s-in is_full_depth: false u_height: 1 +console-ports: + - name: serial0 + type: rj-45 +power-ports: + - name: PSU0 + type: dc-terminal interfaces: - name: ether1 type: 1000base-t @@ -29,6 +35,3 @@ interfaces: type: 1000base-x-sfp - name: sfp4 type: 1000base-x-sfp -console-ports: - - name: serial0 - type: rj-45 diff --git a/device-types/MikroTik/CRS125-24G-1S-2HnD-IN.yaml b/device-types/MikroTik/CRS125-24G-1S-2HnD-IN.yaml index 91cd7155..951d7f68 100644 --- a/device-types/MikroTik/CRS125-24G-1S-2HnD-IN.yaml +++ b/device-types/MikroTik/CRS125-24G-1S-2HnD-IN.yaml @@ -4,6 +4,12 @@ model: CRS125-24G-1S-2HnD-IN slug: mikrotik-crs125-24g-1s-2hnd-in is_full_depth: false u_height: 1 +console-ports: + - name: serial0 + type: rj-45 +power-ports: + - name: PSU0 + type: dc-terminal interfaces: - name: ether1 type: 1000base-t @@ -57,6 +63,3 @@ interfaces: type: 1000base-x-sfp - name: wlan1 type: ieee802.11n -console-ports: - - name: serial0 - type: rj-45 diff --git a/device-types/MikroTik/CRS125-24G-1S-IN.yaml b/device-types/MikroTik/CRS125-24G-1S-IN.yaml index b651f12b..210302e8 100644 --- a/device-types/MikroTik/CRS125-24G-1S-IN.yaml +++ b/device-types/MikroTik/CRS125-24G-1S-IN.yaml @@ -58,3 +58,6 @@ interfaces: console-ports: - name: serial0 type: rj-45 +power-ports: + - name: PSU0 + type: dc-terminal diff --git a/device-types/MikroTik/CRS212-1G-10S-1S-Plus-IN.yaml b/device-types/MikroTik/CRS212-1G-10S-1S-Plus-IN.yaml index eb1b0d96..25d6da64 100644 --- a/device-types/MikroTik/CRS212-1G-10S-1S-Plus-IN.yaml +++ b/device-types/MikroTik/CRS212-1G-10S-1S-Plus-IN.yaml @@ -32,3 +32,6 @@ interfaces: console-ports: - name: serial0 type: rj-45 +power-ports: + - name: PSU0 + type: dc-terminal diff --git a/device-types/MikroTik/CRS312-4C-Plus-8XG-RM.yaml b/device-types/MikroTik/CRS312-4C-Plus-8XG-RM.yaml index 00fb998f..20828495 100644 --- a/device-types/MikroTik/CRS312-4C-Plus-8XG-RM.yaml +++ b/device-types/MikroTik/CRS312-4C-Plus-8XG-RM.yaml @@ -32,3 +32,6 @@ interfaces: console-ports: - name: serial0 type: rj-45 +power-ports: + - name: PSU0 + type: dc-terminal diff --git a/device-types/MikroTik/CSS326-24G-2S-Plus-RM.yaml b/device-types/MikroTik/CSS326-24G-2S-Plus-RM.yaml index cc15ac99..c55c560d 100644 --- a/device-types/MikroTik/CSS326-24G-2S-Plus-RM.yaml +++ b/device-types/MikroTik/CSS326-24G-2S-Plus-RM.yaml @@ -5,6 +5,9 @@ slug: mikrotik-css326-24g-2s-plus-rm is_full_depth: false airflow: passive u_height: 1 +power-ports: + - name: PSU0 + type: dc-terminal interfaces: - name: ether1 type: 1000base-t diff --git a/device-types/MikroTik/RB2011UiAS-IN.yaml b/device-types/MikroTik/RB2011UiAS-IN.yaml index b6d1e98e..4159e035 100644 --- a/device-types/MikroTik/RB2011UiAS-IN.yaml +++ b/device-types/MikroTik/RB2011UiAS-IN.yaml @@ -2,6 +2,9 @@ manufacturer: MikroTik model: RB2011UiAS-IN slug: mikrotik-rb2011uias-in +power-ports: + - name: PSU0 + type: dc-terminal interfaces: - name: ether1 type: 1000base-t diff --git a/device-types/MikroTik/RB2011iLS-IN.yaml b/device-types/MikroTik/RB2011iLS-IN.yaml index af7b61e3..e554b543 100644 --- a/device-types/MikroTik/RB2011iLS-IN.yaml +++ b/device-types/MikroTik/RB2011iLS-IN.yaml @@ -2,6 +2,9 @@ manufacturer: MikroTik model: RB2011iLS-IN slug: mikrotik-rb2011ils-in +power-ports: + - name: PSU0 + type: dc-terminal interfaces: - name: ether1 type: 1000base-t diff --git a/device-types/MikroTik/RB260GS.yaml b/device-types/MikroTik/RB260GS.yaml index e445feb4..73541155 100644 --- a/device-types/MikroTik/RB260GS.yaml +++ b/device-types/MikroTik/RB260GS.yaml @@ -2,6 +2,9 @@ manufacturer: MikroTik model: RB260GS slug: mikrotik-rb260gs +power-ports: + - name: PSU0 + type: dc-terminal interfaces: - name: ether1 type: 1000base-t diff --git a/device-types/MikroTik/RB260GSP.yaml b/device-types/MikroTik/RB260GSP.yaml index 57f40398..561c7342 100644 --- a/device-types/MikroTik/RB260GSP.yaml +++ b/device-types/MikroTik/RB260GSP.yaml @@ -2,6 +2,9 @@ manufacturer: MikroTik model: RB260GSP slug: mikrotik-rb260gsp +power-ports: + - name: PSU0 + type: dc-terminal interfaces: - name: ether1 type: 1000base-t diff --git a/device-types/MikroTik/RB3011UiAS-RM.yaml b/device-types/MikroTik/RB3011UiAS-RM.yaml index f5e52655..52e5d68f 100644 --- a/device-types/MikroTik/RB3011UiAS-RM.yaml +++ b/device-types/MikroTik/RB3011UiAS-RM.yaml @@ -4,6 +4,9 @@ model: RB3011UiAS-RM slug: mikrotik-rb3011uias-rm is_full_depth: false u_height: 1 +power-ports: + - name: PSU0 + type: dc-terminal interfaces: - name: ether1 type: 1000base-t diff --git a/device-types/MikroTik/RB750r2.yaml b/device-types/MikroTik/RB750r2.yaml index 333ccc51..6c6f2634 100644 --- a/device-types/MikroTik/RB750r2.yaml +++ b/device-types/MikroTik/RB750r2.yaml @@ -17,9 +17,6 @@ power-ports: - name: DC type: iec-60320-c14 maximum_draw: 350 - - name: PSU1 - type: iec-60320-c14 - maximum_draw: 350 console-ports: - name: Console type: rj-45 diff --git a/device-types/MikroTik/RB750r3.yaml b/device-types/MikroTik/RB750r3.yaml index 49ed161d..2d838bd9 100644 --- a/device-types/MikroTik/RB750r3.yaml +++ b/device-types/MikroTik/RB750r3.yaml @@ -2,6 +2,9 @@ manufacturer: MikroTik model: RB750r3 slug: mikrotik-rb750r3 +power-ports: + - name: DC + type: iec-60320-c14 interfaces: - name: ether1 type: 1000base-t diff --git a/device-types/MikroTik/RBLHGR&R11e-LTE-US.yaml b/device-types/MikroTik/RBLHGR&R11e-LTE-US.yaml index 3a385f3e..0dd7220f 100644 --- a/device-types/MikroTik/RBLHGR&R11e-LTE-US.yaml +++ b/device-types/MikroTik/RBLHGR&R11e-LTE-US.yaml @@ -15,5 +15,6 @@ comments: | interfaces: - name: ether1 type: 100base-tx + poe_mode: pd - name: lte1 type: lte diff --git a/device-types/MikroTik/RBLHGR&R11e-LTE6.yaml b/device-types/MikroTik/RBLHGR&R11e-LTE6.yaml index 4fcb46e2..6230bbcc 100644 --- a/device-types/MikroTik/RBLHGR&R11e-LTE6.yaml +++ b/device-types/MikroTik/RBLHGR&R11e-LTE6.yaml @@ -18,5 +18,6 @@ comments: | interfaces: - name: ether1 type: 100base-tx + poe_mode: pd - name: lte1 type: lte diff --git a/device-types/MikroTik/RBSXTR&R11e-LTE6.yaml b/device-types/MikroTik/RBSXTR&R11e-LTE6.yaml index 77111dc1..340b6fa8 100644 --- a/device-types/MikroTik/RBSXTR&R11e-LTE6.yaml +++ b/device-types/MikroTik/RBSXTR&R11e-LTE6.yaml @@ -18,6 +18,7 @@ comments: | interfaces: - name: ether1 type: 100base-tx + poe_mode: pd - name: ether2 type: 100base-tx - name: lte1 diff --git a/device-types/Mimosa Networks/a5.yaml b/device-types/Mimosa Networks/a5.yaml index c40eb0be..1bef5936 100644 --- a/device-types/Mimosa Networks/a5.yaml +++ b/device-types/Mimosa Networks/a5.yaml @@ -9,6 +9,7 @@ interfaces: - name: eth1_emac1 label: Ethernet type: 1000base-t + poe_mode: pd - name: wifi0 label: Wireless type: ieee802.11ax diff --git a/device-types/Mimosa Networks/a5c.yaml b/device-types/Mimosa Networks/a5c.yaml index 30451231..3b363780 100644 --- a/device-types/Mimosa Networks/a5c.yaml +++ b/device-types/Mimosa Networks/a5c.yaml @@ -9,6 +9,7 @@ interfaces: - name: eth1_emac1 label: Ethernet type: 1000base-t + poe_mode: pd - name: wifi0 label: Wireless type: ieee802.11ax diff --git a/device-types/Mimosa Networks/a5x.yaml b/device-types/Mimosa Networks/a5x.yaml index 00c9a95d..2e377fe3 100644 --- a/device-types/Mimosa Networks/a5x.yaml +++ b/device-types/Mimosa Networks/a5x.yaml @@ -9,6 +9,7 @@ interfaces: - name: eth1_emac1 label: Ethernet type: 1000base-t + poe_mode: pd - name: wifi0 label: Wireless type: ieee802.11ax diff --git a/device-types/Mimosa Networks/b5c.yaml b/device-types/Mimosa Networks/b5c.yaml index 3d1022b6..ed3bf19c 100644 --- a/device-types/Mimosa Networks/b5c.yaml +++ b/device-types/Mimosa Networks/b5c.yaml @@ -9,6 +9,7 @@ interfaces: - name: eth1_emac1 label: Ethernet type: 1000base-t + poe_mode: pd - name: wifi0 label: Wireless type: ieee802.11ax diff --git a/device-types/Mimosa Networks/b5x.yaml b/device-types/Mimosa Networks/b5x.yaml index 9a2e9c68..f842ea9e 100644 --- a/device-types/Mimosa Networks/b5x.yaml +++ b/device-types/Mimosa Networks/b5x.yaml @@ -9,6 +9,7 @@ interfaces: - name: eth1_emac1 label: Ethernet type: 1000base-t + poe_mode: pd - name: wifi0 label: Wireless type: ieee802.11ax diff --git a/device-types/Mimosa Networks/c5c.yaml b/device-types/Mimosa Networks/c5c.yaml index fddbfa73..4eca2a8f 100644 --- a/device-types/Mimosa Networks/c5c.yaml +++ b/device-types/Mimosa Networks/c5c.yaml @@ -9,6 +9,7 @@ interfaces: - name: eth1_emac1 label: Ethernet type: 1000base-t + poe_mode: pd - name: wifi0 label: Wireless type: ieee802.11ax diff --git a/device-types/Mimosa Networks/c5x.yaml b/device-types/Mimosa Networks/c5x.yaml index 6535034c..a7243eff 100644 --- a/device-types/Mimosa Networks/c5x.yaml +++ b/device-types/Mimosa Networks/c5x.yaml @@ -9,6 +9,7 @@ interfaces: - name: eth1_emac1 label: Ethernet type: 1000base-t + poe_mode: pd - name: wifi0 label: Wireless type: ieee802.11ax diff --git a/device-types/Mimosa Networks/c6x.yaml b/device-types/Mimosa Networks/c6x.yaml index 3e5ba5e3..ddbfe6e7 100644 --- a/device-types/Mimosa Networks/c6x.yaml +++ b/device-types/Mimosa Networks/c6x.yaml @@ -9,6 +9,7 @@ interfaces: - name: eth1_emac1 label: Ethernet type: 1000base-t + poe_mode: pd - name: wifi0 label: Wireless type: ieee802.11ax diff --git a/device-types/Neousys/Nuvo-8240GC.yaml b/device-types/Neousys/Nuvo-8240GC.yaml index 03441655..67836f6b 100644 --- a/device-types/Neousys/Nuvo-8240GC.yaml +++ b/device-types/Neousys/Nuvo-8240GC.yaml @@ -18,6 +18,9 @@ console-ports: type: other - name: Audio 3.5m plug type: other +power-ports: + - name: DC + type: dc-terminal interfaces: - name: enp5s0 type: 1000base-t diff --git a/device-types/Netgear/GS105.yaml b/device-types/Netgear/GS105.yaml index 434bee31..bbcac185 100644 --- a/device-types/Netgear/GS105.yaml +++ b/device-types/Netgear/GS105.yaml @@ -5,6 +5,10 @@ slug: netgear-gs105 u_height: 1 comments: '[Gigabit Unmanaged Switch Series GS105](https://www.netgear.com/business/wired/switches/unmanaged/gs105/)' is_full_depth: false + +power-ports: + - name: PSU0 + type: dc-terminal interfaces: - name: GigabitEthernet/1 type: 1000base-t diff --git a/device-types/Netgear/GS105E.yaml b/device-types/Netgear/GS105E.yaml index 411b50f1..782421da 100644 --- a/device-types/Netgear/GS105E.yaml +++ b/device-types/Netgear/GS105E.yaml @@ -5,6 +5,9 @@ slug: netgear-gs105e u_height: 1 comments: '[Gigabit Plus Switch Series GS105E](https://www.netgear.com/business/wired/switches/plus/gs105ev2/)' is_full_depth: false +power-ports: + - name: PSU0 + type: dc-terminal interfaces: - name: GigabitEthernet/1 type: 1000base-t diff --git a/device-types/Netgear/GS108.yaml b/device-types/Netgear/GS108.yaml index 50af9ff5..5b272c46 100644 --- a/device-types/Netgear/GS108.yaml +++ b/device-types/Netgear/GS108.yaml @@ -5,6 +5,9 @@ slug: netgear-gs108 u_height: 1 comments: '[Gigabit Unmanaged Switch Series GS108](https://www.netgear.com/business/wired/switches/unmanaged/gs108/)' is_full_depth: false +power-ports: + - name: PSU0 + type: dc-terminal interfaces: - name: GigabitEthernet/1 type: 1000base-t diff --git a/device-types/Netgear/GS108E.yaml b/device-types/Netgear/GS108E.yaml index 439974b1..b513805a 100644 --- a/device-types/Netgear/GS108E.yaml +++ b/device-types/Netgear/GS108E.yaml @@ -5,6 +5,9 @@ slug: netgear-gs108e u_height: 1 comments: '[Gigabit Plus Switch Series GS108E](https://www.netgear.com/business/wired/switches/plus/gs108e/)' is_full_depth: false +power-ports: + - name: PSU0 + type: dc-terminal interfaces: - name: GigabitEthernet/1 type: 1000base-t diff --git a/device-types/Netgear/GS110EMX.yaml b/device-types/Netgear/GS110EMX.yaml index 694fc174..76d63d76 100644 --- a/device-types/Netgear/GS110EMX.yaml +++ b/device-types/Netgear/GS110EMX.yaml @@ -8,6 +8,9 @@ airflow: passive comments: '[10-Gigabit/Multi-Gigabit Plus (GS110EMX)](https://www.netgear.com/business/wired/switches/plus/gs110emx/)' weight: 0.75 weight_unit: kg +power-ports: + - name: PSU0 + type: dc-terminal interfaces: - name: GigabitEthernet/1 type: 1000base-t diff --git a/device-types/Panduit/CDPP8RG-S.yaml b/device-types/Panduit/CDPP8RG-S.yaml index df38e982..52067f18 100644 --- a/device-types/Panduit/CDPP8RG-S.yaml +++ b/device-types/Panduit/CDPP8RG-S.yaml @@ -5,6 +5,7 @@ slug: panduit-cdpp8rg-s part_number: CDPP8RG-S u_height: 3 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CDPP8RG.yaml b/device-types/Panduit/CDPP8RG.yaml index 8b015904..75b5ba08 100644 --- a/device-types/Panduit/CDPP8RG.yaml +++ b/device-types/Panduit/CDPP8RG.yaml @@ -5,6 +5,7 @@ slug: panduit-cdpp8rg part_number: CDPP8RG u_height: 3 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CP24BLY.yaml b/device-types/Panduit/CP24BLY.yaml index 59145f01..c1867734 100644 --- a/device-types/Panduit/CP24BLY.yaml +++ b/device-types/Panduit/CP24BLY.yaml @@ -5,6 +5,7 @@ slug: panduit-cp24bly part_number: CP24BLY u_height: 1 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CP48BLY.yaml b/device-types/Panduit/CP48BLY.yaml index 6dd50d0a..c9956800 100644 --- a/device-types/Panduit/CP48BLY.yaml +++ b/device-types/Panduit/CP48BLY.yaml @@ -5,6 +5,7 @@ slug: panduit-cp48bly part_number: CP48BLY u_height: 2 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CP48HDBL.yaml b/device-types/Panduit/CP48HDBL.yaml index 83b15a98..d67fef58 100644 --- a/device-types/Panduit/CP48HDBL.yaml +++ b/device-types/Panduit/CP48HDBL.yaml @@ -5,6 +5,7 @@ slug: panduit-cp48hdbl part_number: CP48HDBL u_height: 1 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CPA24BLY.yaml b/device-types/Panduit/CPA24BLY.yaml index 44ccbe5b..1349a2c5 100644 --- a/device-types/Panduit/CPA24BLY.yaml +++ b/device-types/Panduit/CPA24BLY.yaml @@ -5,6 +5,7 @@ slug: panduit-cpa24bly part_number: CPA24BLY u_height: 1 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CPA48BLY.yaml b/device-types/Panduit/CPA48BLY.yaml index 29fcf2ae..a205656a 100644 --- a/device-types/Panduit/CPA48BLY.yaml +++ b/device-types/Panduit/CPA48BLY.yaml @@ -5,6 +5,7 @@ slug: panduit-cpa48bly part_number: CPA48BLY u_height: 2 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CPA48HDBL.yaml b/device-types/Panduit/CPA48HDBL.yaml index 9187a824..ca375767 100644 --- a/device-types/Panduit/CPA48HDBL.yaml +++ b/device-types/Panduit/CPA48HDBL.yaml @@ -5,6 +5,7 @@ slug: panduit-cpa48hdbl part_number: CPA48HDBL u_height: 1 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CPP24FMWBLY.yaml b/device-types/Panduit/CPP24FMWBLY.yaml index 28ff9893..7acb0ee3 100644 --- a/device-types/Panduit/CPP24FMWBLY.yaml +++ b/device-types/Panduit/CPP24FMWBLY.yaml @@ -5,6 +5,7 @@ slug: panduit-cpp24fmwbly part_number: CPP24FMWBLY u_height: 1 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CPP24WBLY.yaml b/device-types/Panduit/CPP24WBLY.yaml index 3d9cb570..9935d723 100644 --- a/device-types/Panduit/CPP24WBLY.yaml +++ b/device-types/Panduit/CPP24WBLY.yaml @@ -5,6 +5,7 @@ slug: panduit-cpp24wbly part_number: CPP24WBLY u_height: 1 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CPP48FMWBLY.yaml b/device-types/Panduit/CPP48FMWBLY.yaml index 799d7cd7..2415b560 100644 --- a/device-types/Panduit/CPP48FMWBLY.yaml +++ b/device-types/Panduit/CPP48FMWBLY.yaml @@ -5,6 +5,7 @@ slug: panduit-cpp48fmwbly part_number: CPP48FMWBLY u_height: 2 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CPP48HDEWBL.yaml b/device-types/Panduit/CPP48HDEWBL.yaml index 971712df..15ef8620 100644 --- a/device-types/Panduit/CPP48HDEWBL.yaml +++ b/device-types/Panduit/CPP48HDEWBL.yaml @@ -5,6 +5,7 @@ slug: panduit-cpp48hdewbl part_number: CPP48HDEWBL u_height: 1 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CPP48WBLY.yaml b/device-types/Panduit/CPP48WBLY.yaml index cd7cefdb..5f037990 100644 --- a/device-types/Panduit/CPP48WBLY.yaml +++ b/device-types/Panduit/CPP48WBLY.yaml @@ -5,6 +5,7 @@ slug: panduit-cpp48wbly part_number: CPP48WBLY u_height: 2 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CPP72FMWBLY.yaml b/device-types/Panduit/CPP72FMWBLY.yaml index fc48e39c..aade4e35 100644 --- a/device-types/Panduit/CPP72FMWBLY.yaml +++ b/device-types/Panduit/CPP72FMWBLY.yaml @@ -5,6 +5,7 @@ slug: panduit-cpp72fmwbly part_number: CPP72FMWBLY u_height: 2 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CPPA24FMWBLY.yaml b/device-types/Panduit/CPPA24FMWBLY.yaml index ad175f7e..53bcd3a1 100644 --- a/device-types/Panduit/CPPA24FMWBLY.yaml +++ b/device-types/Panduit/CPPA24FMWBLY.yaml @@ -5,6 +5,7 @@ slug: panduit-cppa24fmwbly part_number: CPPA24FMWBLY u_height: 1 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CPPA48FMWBLY.yaml b/device-types/Panduit/CPPA48FMWBLY.yaml index 6b50fbc0..e193b06b 100644 --- a/device-types/Panduit/CPPA48FMWBLY.yaml +++ b/device-types/Panduit/CPPA48FMWBLY.yaml @@ -5,6 +5,7 @@ slug: panduit-cppa48fmwbly part_number: CPPA48FMWBLY u_height: 2 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CPPA48HDWBLY.yaml b/device-types/Panduit/CPPA48HDWBLY.yaml index f3a07a5a..a514717f 100644 --- a/device-types/Panduit/CPPA48HDWBLY.yaml +++ b/device-types/Panduit/CPPA48HDWBLY.yaml @@ -5,6 +5,7 @@ slug: panduit-cppa48hdwbly part_number: CPPA48HDWBLY u_height: 1 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/CPPA72FMWBLY.yaml b/device-types/Panduit/CPPA72FMWBLY.yaml index a1ac0a73..38216d8b 100644 --- a/device-types/Panduit/CPPA72FMWBLY.yaml +++ b/device-types/Panduit/CPPA72FMWBLY.yaml @@ -5,6 +5,7 @@ slug: panduit-cppa72fmwbly part_number: CPPA72FMWBLY u_height: 2 is_full_depth: false +is_powered: false front-ports: - name: '01' type: 8p8c diff --git a/device-types/Panduit/FCE1.yaml b/device-types/Panduit/FCE1.yaml index ad9a0f7c..fd012aef 100644 --- a/device-types/Panduit/FCE1.yaml +++ b/device-types/Panduit/FCE1.yaml @@ -6,6 +6,7 @@ part_number: FCE1 u_height: 1 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: A - name: B diff --git a/device-types/Panduit/FCE1U.yaml b/device-types/Panduit/FCE1U.yaml index b04fe673..76c33a79 100644 --- a/device-types/Panduit/FCE1U.yaml +++ b/device-types/Panduit/FCE1U.yaml @@ -6,6 +6,7 @@ part_number: FCE1U u_height: 1 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: A - name: B diff --git a/device-types/Panduit/FCE2.yaml b/device-types/Panduit/FCE2.yaml index 50fb9cfd..da42927a 100644 --- a/device-types/Panduit/FCE2.yaml +++ b/device-types/Panduit/FCE2.yaml @@ -6,6 +6,7 @@ part_number: FCE2 u_height: 2 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: A - name: B diff --git a/device-types/Panduit/FCE2U.yaml b/device-types/Panduit/FCE2U.yaml index a9c46c3e..d0bb1391 100644 --- a/device-types/Panduit/FCE2U.yaml +++ b/device-types/Panduit/FCE2U.yaml @@ -6,6 +6,7 @@ part_number: FCE2U u_height: 2 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: A - name: B diff --git a/device-types/Panduit/FMD1.yaml b/device-types/Panduit/FMD1.yaml index 9301024a..3dad2219 100644 --- a/device-types/Panduit/FMD1.yaml +++ b/device-types/Panduit/FMD1.yaml @@ -6,6 +6,7 @@ part_number: FMD1 u_height: 1 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: '01' - name: '02' diff --git a/device-types/Panduit/FMD2.yaml b/device-types/Panduit/FMD2.yaml index d0fa2faf..0f215077 100644 --- a/device-types/Panduit/FMD2.yaml +++ b/device-types/Panduit/FMD2.yaml @@ -6,6 +6,7 @@ part_number: FMD2 u_height: 2 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: '01' - name: '02' diff --git a/device-types/Panduit/FRME1.yaml b/device-types/Panduit/FRME1.yaml index e32e4814..d35e16cd 100644 --- a/device-types/Panduit/FRME1.yaml +++ b/device-types/Panduit/FRME1.yaml @@ -6,6 +6,7 @@ part_number: FRME1 u_height: 1 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: A - name: B diff --git a/device-types/Panduit/FRME2.yaml b/device-types/Panduit/FRME2.yaml index e024b1bd..2d06dad2 100644 --- a/device-types/Panduit/FRME2.yaml +++ b/device-types/Panduit/FRME2.yaml @@ -6,6 +6,7 @@ part_number: FRME2 u_height: 2 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: A - name: B diff --git a/device-types/Panduit/FRME4.yaml b/device-types/Panduit/FRME4.yaml index 8e37bcc3..edb036f6 100644 --- a/device-types/Panduit/FRME4.yaml +++ b/device-types/Panduit/FRME4.yaml @@ -6,6 +6,7 @@ part_number: FRME4 u_height: 4 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: A - name: B diff --git a/device-types/Panduit/FWME2.yaml b/device-types/Panduit/FWME2.yaml index c29d0bfd..d0fd8413 100644 --- a/device-types/Panduit/FWME2.yaml +++ b/device-types/Panduit/FWME2.yaml @@ -6,6 +6,7 @@ part_number: FWME2 u_height: 0 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: '01' - name: '02' diff --git a/device-types/Panduit/FWME4.yaml b/device-types/Panduit/FWME4.yaml index 809453ab..a7a26d36 100644 --- a/device-types/Panduit/FWME4.yaml +++ b/device-types/Panduit/FWME4.yaml @@ -6,6 +6,7 @@ part_number: FWME4 u_height: 0 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: '01' - name: '02' diff --git a/device-types/Panduit/FWME8.yaml b/device-types/Panduit/FWME8.yaml index 83c663ae..a7f05018 100644 --- a/device-types/Panduit/FWME8.yaml +++ b/device-types/Panduit/FWME8.yaml @@ -6,6 +6,7 @@ part_number: FWME8 u_height: 0 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: '01' - name: '02' diff --git a/device-types/Rockwell Automation/1756-A10.yaml b/device-types/Rockwell Automation/1756-A10.yaml index d61282ee..556962c4 100644 --- a/device-types/Rockwell Automation/1756-A10.yaml +++ b/device-types/Rockwell Automation/1756-A10.yaml @@ -6,6 +6,7 @@ slug: rockwell-automation-1756-a10 u_height: 3 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: Power Supply - name: Slot 0 diff --git a/device-types/Rockwell Automation/1756-A10K.yaml b/device-types/Rockwell Automation/1756-A10K.yaml index 4a69d701..7b166e5f 100644 --- a/device-types/Rockwell Automation/1756-A10K.yaml +++ b/device-types/Rockwell Automation/1756-A10K.yaml @@ -6,6 +6,7 @@ slug: rockwell-automation-1756-a10k u_height: 3 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: Power Supply - name: Slot 0 diff --git a/device-types/Rockwell Automation/1756-A10XT.yaml b/device-types/Rockwell Automation/1756-A10XT.yaml index 874d2a1f..b0f51b19 100644 --- a/device-types/Rockwell Automation/1756-A10XT.yaml +++ b/device-types/Rockwell Automation/1756-A10XT.yaml @@ -6,6 +6,7 @@ slug: rockwell-automation-1756-a10xt u_height: 3 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: Power Supply - name: Slot 0 diff --git a/device-types/Rockwell Automation/1756-A13.yaml b/device-types/Rockwell Automation/1756-A13.yaml index 7188f388..ba343a16 100644 --- a/device-types/Rockwell Automation/1756-A13.yaml +++ b/device-types/Rockwell Automation/1756-A13.yaml @@ -6,6 +6,7 @@ slug: rockwell-automation-1756-a13 u_height: 3 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: Power Supply - name: Slot 0 diff --git a/device-types/Rockwell Automation/1756-A13K.yaml b/device-types/Rockwell Automation/1756-A13K.yaml index a4267e78..5c48a7a9 100644 --- a/device-types/Rockwell Automation/1756-A13K.yaml +++ b/device-types/Rockwell Automation/1756-A13K.yaml @@ -6,6 +6,7 @@ slug: rockwell-automation-1756-a13k u_height: 3 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: Power Supply - name: Slot 0 diff --git a/device-types/Rockwell Automation/1756-A17.yaml b/device-types/Rockwell Automation/1756-A17.yaml index 0bcd6f1a..27da88f5 100644 --- a/device-types/Rockwell Automation/1756-A17.yaml +++ b/device-types/Rockwell Automation/1756-A17.yaml @@ -6,6 +6,7 @@ slug: rockwell-automation-1756-a17 u_height: 3 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: Power Supply - name: Slot 0 diff --git a/device-types/Rockwell Automation/1756-A17K.yaml b/device-types/Rockwell Automation/1756-A17K.yaml index d99b2463..387cb8d1 100644 --- a/device-types/Rockwell Automation/1756-A17K.yaml +++ b/device-types/Rockwell Automation/1756-A17K.yaml @@ -6,6 +6,7 @@ slug: rockwell-automation-1756-a17k u_height: 3 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: Power Supply - name: Slot 0 diff --git a/device-types/Rockwell Automation/1756-A4.yaml b/device-types/Rockwell Automation/1756-A4.yaml index 7c25fede..0cf1250e 100644 --- a/device-types/Rockwell Automation/1756-A4.yaml +++ b/device-types/Rockwell Automation/1756-A4.yaml @@ -6,6 +6,7 @@ slug: rockwell-automation-1756-a4 u_height: 3 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: Power Supply - name: Slot 0 diff --git a/device-types/Rockwell Automation/1756-A4K.yaml b/device-types/Rockwell Automation/1756-A4K.yaml index 0cd63526..1f7e5dc1 100644 --- a/device-types/Rockwell Automation/1756-A4K.yaml +++ b/device-types/Rockwell Automation/1756-A4K.yaml @@ -6,6 +6,7 @@ slug: rockwell-automation-1756-a4k u_height: 3 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: Power Supply - name: Slot 0 diff --git a/device-types/Rockwell Automation/1756-A7.yaml b/device-types/Rockwell Automation/1756-A7.yaml index 8dbdce2c..33142aef 100644 --- a/device-types/Rockwell Automation/1756-A7.yaml +++ b/device-types/Rockwell Automation/1756-A7.yaml @@ -6,6 +6,7 @@ slug: rockwell-automation-1756-a7 u_height: 3 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: Power Supply - name: Slot 0 diff --git a/device-types/Rockwell Automation/1756-A7K.yaml b/device-types/Rockwell Automation/1756-A7K.yaml index fd0d2105..19e4b50f 100644 --- a/device-types/Rockwell Automation/1756-A7K.yaml +++ b/device-types/Rockwell Automation/1756-A7K.yaml @@ -6,6 +6,7 @@ slug: rockwell-automation-1756-a7k u_height: 3 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: Power Supply - name: Slot 0 diff --git a/device-types/Rockwell Automation/1756-A7XT.yaml b/device-types/Rockwell Automation/1756-A7XT.yaml index c41c9571..296680f9 100644 --- a/device-types/Rockwell Automation/1756-A7XT.yaml +++ b/device-types/Rockwell Automation/1756-A7XT.yaml @@ -6,6 +6,7 @@ slug: rockwell-automation-1756-a7xt u_height: 3 is_full_depth: false subdevice_role: parent +is_powered: false device-bays: - name: Power Supply - name: Slot 0 diff --git a/device-types/Solid Optics/SO-CHASSIS-MOD4.yml b/device-types/Solid Optics/SO-CHASSIS-MOD4.yml index 606d7b49..a733d274 100644 --- a/device-types/Solid Optics/SO-CHASSIS-MOD4.yml +++ b/device-types/Solid Optics/SO-CHASSIS-MOD4.yml @@ -6,6 +6,7 @@ u_height: 1 is_full_depth: false subdevice_role: parent comments: 4 Slot LGX Chassis 1RU, 19" Suitable for MOD4 Mux +is_powered: false device-bays: - name: Lower Left - name: Lower Right diff --git a/device-types/Solid Optics/SO-DWDM-MUX-8CH-Plus-UPG.yaml b/device-types/Solid Optics/SO-DWDM-MUX-8CH-Plus-UPG.yaml index 4347f739..31749b81 100644 --- a/device-types/Solid Optics/SO-DWDM-MUX-8CH-Plus-UPG.yaml +++ b/device-types/Solid Optics/SO-DWDM-MUX-8CH-Plus-UPG.yaml @@ -4,6 +4,7 @@ model: SO-DWDM-MUX-8CH+UPG slug: solid-optics-so-dwdm-mux-8ch-plus-upg u_height: 1 is_full_depth: false +is_powered: false front-ports: - name: C20 type: lc diff --git a/device-types/Solid Optics/SO-DWDM-MUX-CH20-35-Plus-UPG-Plus-MON.yaml b/device-types/Solid Optics/SO-DWDM-MUX-CH20-35-Plus-UPG-Plus-MON.yaml index 3ebe4d10..92d8866a 100644 --- a/device-types/Solid Optics/SO-DWDM-MUX-CH20-35-Plus-UPG-Plus-MON.yaml +++ b/device-types/Solid Optics/SO-DWDM-MUX-CH20-35-Plus-UPG-Plus-MON.yaml @@ -4,6 +4,7 @@ model: SO-DWDM-MUX-CH20-35+UPG+MON slug: solid-optics-so-dwdm-mux-ch20-35-plus-upg-plus-mon u_height: 1 is_full_depth: false +is_powered: false front-ports: - name: C20 type: lc diff --git a/device-types/Solid Optics/SO-MOD4-3xMPO-MMF-24xLC.yml b/device-types/Solid Optics/SO-MOD4-3xMPO-MMF-24xLC.yml index 2b7dc87a..8a86bcd0 100644 --- a/device-types/Solid Optics/SO-MOD4-3xMPO-MMF-24xLC.yml +++ b/device-types/Solid Optics/SO-MOD4-3xMPO-MMF-24xLC.yml @@ -5,6 +5,7 @@ slug: solid-optics-so-mod4-3xmpo-mmf-24xlc u_height: 0 is_full_depth: false subdevice_role: child +is_powered: false front-ports: - name: A1 type: lc diff --git a/device-types/Supermicro/SYS-1019P-WTR.yaml b/device-types/Supermicro/SYS-1019P-WTR.yaml index 6462ea27..14ee043e 100644 --- a/device-types/Supermicro/SYS-1019P-WTR.yaml +++ b/device-types/Supermicro/SYS-1019P-WTR.yaml @@ -13,6 +13,11 @@ console-ports: - name: COM2 type: de-9 description: Header +power-ports: + - name: PSU1 + type: iec-60320-c14 + - name: PSU2 + type: iec-60320-c14 interfaces: - name: Gig-E 1 type: 10gbase-t diff --git a/device-types/Synology/DS1522+.yaml b/device-types/Synology/DS1522+.yaml index ad5e8561..7d5f836a 100644 --- a/device-types/Synology/DS1522+.yaml +++ b/device-types/Synology/DS1522+.yaml @@ -6,6 +6,9 @@ part_number: DS1522+ u_height: 4 comments: '[Synology DS1522+ Specs](https://www.synology.com/en-us/products/DS1522+#specs)' is_full_depth: false +power-ports: + - name: PSU + type: dc-terminal interfaces: - name: LAN 1 type: 1000base-t diff --git a/device-types/Synology/DS220+.yaml b/device-types/Synology/DS220+.yaml index b6b53dcc..e2ee1383 100644 --- a/device-types/Synology/DS220+.yaml +++ b/device-types/Synology/DS220+.yaml @@ -6,6 +6,9 @@ part_number: DS220+ u_height: 4 comments: '[Synology DS220+ Specs](https://www.synology.com/en-us/products/DS220+#specs)' is_full_depth: false +power-ports: + - name: PSU + type: dc-terminal interfaces: - name: LAN 1 type: 1000base-t diff --git a/device-types/Synology/DS920+.yaml b/device-types/Synology/DS920+.yaml index 40bad80e..6dc06886 100644 --- a/device-types/Synology/DS920+.yaml +++ b/device-types/Synology/DS920+.yaml @@ -6,6 +6,9 @@ part_number: DS920+ u_height: 4 comments: '[Synology DS920+ Specs](https://www.synology.com/de-de/products/DS920+#specs)' is_full_depth: false +power-ports: + - name: PSU + type: dc-terminal interfaces: - name: LAN 1 type: 1000base-t diff --git a/device-types/TrendNet/TC-P16C5E.yaml b/device-types/TrendNet/TC-P16C5E.yaml index 4b12cd34..4be3a9fc 100644 --- a/device-types/TrendNet/TC-P16C5E.yaml +++ b/device-types/TrendNet/TC-P16C5E.yaml @@ -4,6 +4,7 @@ model: TC-P16C5E slug: trendnet-tc-p16c5e u_height: 1 is_full_depth: false +is_powered: false front-ports: - name: Port 1 type: 8p8c diff --git a/device-types/TrendNet/TC-P24C5E.yaml b/device-types/TrendNet/TC-P24C5E.yaml index 3aa5b7da..97944e12 100644 --- a/device-types/TrendNet/TC-P24C5E.yaml +++ b/device-types/TrendNet/TC-P24C5E.yaml @@ -4,6 +4,7 @@ model: TC-P24C5E slug: trendnet-tc-p24c5e u_height: 1 is_full_depth: false +is_powered: false front-ports: - name: Port 1 type: 8p8c diff --git a/device-types/TrendNet/TC-P48C5E.yaml b/device-types/TrendNet/TC-P48C5E.yaml index fe34c4f8..5e04382b 100644 --- a/device-types/TrendNet/TC-P48C5E.yaml +++ b/device-types/TrendNet/TC-P48C5E.yaml @@ -4,6 +4,7 @@ model: TC-P48C5E slug: trendnet-tc-p48c5e u_height: 2 is_full_depth: false +is_powered: false front-ports: - name: Port 1 type: 8p8c diff --git a/device-types/Ubiquiti/Bullet-M2.yaml b/device-types/Ubiquiti/Bullet-M2.yaml index 4da62092..e0367be6 100644 --- a/device-types/Ubiquiti/Bullet-M2.yaml +++ b/device-types/Ubiquiti/Bullet-M2.yaml @@ -8,5 +8,6 @@ is_full_depth: false interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11n diff --git a/device-types/Ubiquiti/EP-S16.yaml b/device-types/Ubiquiti/EP-S16.yaml index 00d9f6e1..9b42f58f 100644 --- a/device-types/Ubiquiti/EP-S16.yaml +++ b/device-types/Ubiquiti/EP-S16.yaml @@ -5,6 +5,9 @@ slug: ubiquiti-edgepoint-ep-s16 part_number: EP-S16 u_height: 0 is_full_depth: false +power-ports: + - name: Power + type: dc-terminal interfaces: - name: '1' type: 1000base-t diff --git a/device-types/Ubiquiti/INS-3AF-O-G.yaml b/device-types/Ubiquiti/INS-3AF-O-G.yaml index ae73e1ce..34489c0a 100644 --- a/device-types/Ubiquiti/INS-3AF-O-G.yaml +++ b/device-types/Ubiquiti/INS-3AF-O-G.yaml @@ -17,3 +17,4 @@ rear-ports: type: 8p8c positions: 1 label: PoE IN + poe: true diff --git a/device-types/Ubiquiti/LBE-5AC-23.yaml b/device-types/Ubiquiti/LBE-5AC-23.yaml index 12aaa7cf..f5e05a29 100644 --- a/device-types/Ubiquiti/LBE-5AC-23.yaml +++ b/device-types/Ubiquiti/LBE-5AC-23.yaml @@ -9,5 +9,6 @@ comments: '[LiteBeam AC](https://www.ui.com/airmax/litebeam-ac)' interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11ac diff --git a/device-types/Ubiquiti/LBE-5AC-Gen2.yaml b/device-types/Ubiquiti/LBE-5AC-Gen2.yaml index 665893d5..02cda5d0 100644 --- a/device-types/Ubiquiti/LBE-5AC-Gen2.yaml +++ b/device-types/Ubiquiti/LBE-5AC-Gen2.yaml @@ -9,5 +9,6 @@ comments: '[LiteBeam AC Gen2](https://www.ui.com/airmax/litebeam-ac-gen2/)' interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11ac diff --git a/device-types/Ubiquiti/LiteAP-120.yaml b/device-types/Ubiquiti/LiteAP-120.yaml index da113695..fcdcb82d 100644 --- a/device-types/Ubiquiti/LiteAP-120.yaml +++ b/device-types/Ubiquiti/LiteAP-120.yaml @@ -8,5 +8,6 @@ comments: '[LiteAP AC](https://www.ui.com/airmax/liteap-ac/)' interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11ac diff --git a/device-types/Ubiquiti/NanoBeam-2AC-13.yaml b/device-types/Ubiquiti/NanoBeam-2AC-13.yaml index c430a917..bdec9212 100644 --- a/device-types/Ubiquiti/NanoBeam-2AC-13.yaml +++ b/device-types/Ubiquiti/NanoBeam-2AC-13.yaml @@ -8,5 +8,6 @@ is_full_depth: false interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11n diff --git a/device-types/Ubiquiti/NanoBeam-5AC-19.yaml b/device-types/Ubiquiti/NanoBeam-5AC-19.yaml index ba41878b..469f00da 100644 --- a/device-types/Ubiquiti/NanoBeam-5AC-19.yaml +++ b/device-types/Ubiquiti/NanoBeam-5AC-19.yaml @@ -8,5 +8,6 @@ is_full_depth: false interfaces: - name: eth0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11ac diff --git a/device-types/Ubiquiti/NanoBeam-5AC-Gen2.yaml b/device-types/Ubiquiti/NanoBeam-5AC-Gen2.yaml index 2588d62e..e018c7e7 100644 --- a/device-types/Ubiquiti/NanoBeam-5AC-Gen2.yaml +++ b/device-types/Ubiquiti/NanoBeam-5AC-Gen2.yaml @@ -9,5 +9,6 @@ comments: '[NanoBeam AC Gen2](https://www.ui.com/airmax/nanobeam-ac-gen2/)' interfaces: - name: eth0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11ac diff --git a/device-types/Ubiquiti/NanoBeam-M5-19.yaml b/device-types/Ubiquiti/NanoBeam-M5-19.yaml index 083d6331..ceab69ca 100644 --- a/device-types/Ubiquiti/NanoBeam-M5-19.yaml +++ b/device-types/Ubiquiti/NanoBeam-M5-19.yaml @@ -8,5 +8,6 @@ is_full_depth: false interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: virtual diff --git a/device-types/Ubiquiti/NanoStation-5AC.yaml b/device-types/Ubiquiti/NanoStation-5AC.yaml index 3f0df07e..6f597800 100644 --- a/device-types/Ubiquiti/NanoStation-5AC.yaml +++ b/device-types/Ubiquiti/NanoStation-5AC.yaml @@ -8,6 +8,7 @@ is_full_depth: false interfaces: - name: eth0 type: 1000base-t + poe_mode: pd - name: eth1 type: 1000base-t - name: wlan0 diff --git a/device-types/Ubiquiti/NanoStation-LOCO-5AC.yaml b/device-types/Ubiquiti/NanoStation-LOCO-5AC.yaml index 6f2b79cb..59f3e764 100644 --- a/device-types/Ubiquiti/NanoStation-LOCO-5AC.yaml +++ b/device-types/Ubiquiti/NanoStation-LOCO-5AC.yaml @@ -8,5 +8,6 @@ is_full_depth: false interfaces: - name: eth0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11ac diff --git a/device-types/Ubiquiti/NanoStation-LOCO-M2.yaml b/device-types/Ubiquiti/NanoStation-LOCO-M2.yaml index 6e42e0ce..60924ea3 100644 --- a/device-types/Ubiquiti/NanoStation-LOCO-M2.yaml +++ b/device-types/Ubiquiti/NanoStation-LOCO-M2.yaml @@ -8,5 +8,6 @@ is_full_depth: false interfaces: - name: eth0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11n diff --git a/device-types/Ubiquiti/NanoStation-LOCO-M5.yaml b/device-types/Ubiquiti/NanoStation-LOCO-M5.yaml index 89f96e11..2b2052cd 100644 --- a/device-types/Ubiquiti/NanoStation-LOCO-M5.yaml +++ b/device-types/Ubiquiti/NanoStation-LOCO-M5.yaml @@ -8,5 +8,6 @@ is_full_depth: false interfaces: - name: eth0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11n diff --git a/device-types/Ubiquiti/NanoStation-LOCO-M900.yaml b/device-types/Ubiquiti/NanoStation-LOCO-M900.yaml index cdaf55ce..b90207f0 100644 --- a/device-types/Ubiquiti/NanoStation-LOCO-M900.yaml +++ b/device-types/Ubiquiti/NanoStation-LOCO-M900.yaml @@ -8,6 +8,7 @@ is_full_depth: false interfaces: - name: eth0 type: 100base-tx + poe_mode: pd - name: wlan0 type: virtual description: 900MHz diff --git a/device-types/Ubiquiti/NanoStation-M2.yaml b/device-types/Ubiquiti/NanoStation-M2.yaml index 561c2669..dee90322 100644 --- a/device-types/Ubiquiti/NanoStation-M2.yaml +++ b/device-types/Ubiquiti/NanoStation-M2.yaml @@ -8,6 +8,7 @@ is_full_depth: false interfaces: - name: eth0 type: 1000base-t + poe_mode: pd - name: eth1 type: 1000base-t - name: wlan0 diff --git a/device-types/Ubiquiti/NanoStation-M5.yaml b/device-types/Ubiquiti/NanoStation-M5.yaml index 3f4efaa6..a2fbb367 100644 --- a/device-types/Ubiquiti/NanoStation-M5.yaml +++ b/device-types/Ubiquiti/NanoStation-M5.yaml @@ -8,6 +8,7 @@ is_full_depth: false interfaces: - name: eth0 type: 1000base-t + poe_mode: pd - name: eth1 type: 1000base-t - name: wlan0 diff --git a/device-types/Ubiquiti/PicoStation-M2.yaml b/device-types/Ubiquiti/PicoStation-M2.yaml index 97da70a1..c1d700c2 100644 --- a/device-types/Ubiquiti/PicoStation-M2.yaml +++ b/device-types/Ubiquiti/PicoStation-M2.yaml @@ -8,5 +8,6 @@ is_full_depth: false interfaces: - name: eth0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11n diff --git a/device-types/Ubiquiti/PowerBeam-2AC-400.yaml b/device-types/Ubiquiti/PowerBeam-2AC-400.yaml index 5756be71..ee3eb8cf 100644 --- a/device-types/Ubiquiti/PowerBeam-2AC-400.yaml +++ b/device-types/Ubiquiti/PowerBeam-2AC-400.yaml @@ -8,5 +8,6 @@ is_full_depth: false interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11n diff --git a/device-types/Ubiquiti/PowerBeam-5AC-300.yaml b/device-types/Ubiquiti/PowerBeam-5AC-300.yaml index a6ceebb2..3293515e 100644 --- a/device-types/Ubiquiti/PowerBeam-5AC-300.yaml +++ b/device-types/Ubiquiti/PowerBeam-5AC-300.yaml @@ -9,5 +9,6 @@ comments: '[PowerBeam AC](https://www.ui.com/airmax/powerbeam-ac/)' interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11ac diff --git a/device-types/Ubiquiti/PowerBeam-5AC-500.yaml b/device-types/Ubiquiti/PowerBeam-5AC-500.yaml index 622a2cc3..ea6bb83f 100644 --- a/device-types/Ubiquiti/PowerBeam-5AC-500.yaml +++ b/device-types/Ubiquiti/PowerBeam-5AC-500.yaml @@ -9,5 +9,6 @@ comments: '[PowerBeam AC](https://www.ui.com/airmax/powerbeam-ac/)' interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11ac diff --git a/device-types/Ubiquiti/PowerBeam-5AC-Gen2.yaml b/device-types/Ubiquiti/PowerBeam-5AC-Gen2.yaml index e2207c63..1ad33a9e 100644 --- a/device-types/Ubiquiti/PowerBeam-5AC-Gen2.yaml +++ b/device-types/Ubiquiti/PowerBeam-5AC-Gen2.yaml @@ -9,5 +9,6 @@ comments: '[PowerBeam AC Gen2](https://www.ui.com/airmax/powerbeam-ac-gen2/)' interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11ac diff --git a/device-types/Ubiquiti/PowerBeam-M2-400.yaml b/device-types/Ubiquiti/PowerBeam-M2-400.yaml index 7dbcdcf7..a8419706 100644 --- a/device-types/Ubiquiti/PowerBeam-M2-400.yaml +++ b/device-types/Ubiquiti/PowerBeam-M2-400.yaml @@ -8,5 +8,6 @@ is_full_depth: false interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11n diff --git a/device-types/Ubiquiti/R2AC-PRISM.yaml b/device-types/Ubiquiti/R2AC-PRISM.yaml index f9bc406b..2a460643 100644 --- a/device-types/Ubiquiti/R2AC-PRISM.yaml +++ b/device-types/Ubiquiti/R2AC-PRISM.yaml @@ -8,5 +8,6 @@ is_full_depth: false interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11n diff --git a/device-types/Ubiquiti/RP-5AC-Gen2.yaml b/device-types/Ubiquiti/RP-5AC-Gen2.yaml index fad38282..0c58298e 100644 --- a/device-types/Ubiquiti/RP-5AC-Gen2.yaml +++ b/device-types/Ubiquiti/RP-5AC-Gen2.yaml @@ -9,5 +9,6 @@ comments: '[Rocket Prism 5AC Gen2](https://dl.ubnt.com/datasheets/RocketAC/Rocke interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11ac diff --git a/device-types/Ubiquiti/Rocket-M2-Titanium.yaml b/device-types/Ubiquiti/Rocket-M2-Titanium.yaml index 4491ddd3..e6c19727 100644 --- a/device-types/Ubiquiti/Rocket-M2-Titanium.yaml +++ b/device-types/Ubiquiti/Rocket-M2-Titanium.yaml @@ -8,6 +8,7 @@ is_full_depth: false interfaces: - name: lan0 type: 100base-tx + poe_mode: pd - name: lan1 type: 100base-tx - name: wlan0 diff --git a/device-types/Ubiquiti/Rocket-M2.yaml b/device-types/Ubiquiti/Rocket-M2.yaml index a87e9884..7b4e4bd5 100644 --- a/device-types/Ubiquiti/Rocket-M2.yaml +++ b/device-types/Ubiquiti/Rocket-M2.yaml @@ -8,5 +8,6 @@ is_full_depth: false interfaces: - name: lan0 type: 100base-tx + poe_mode: pd - name: wlan0 type: ieee802.11n diff --git a/device-types/Ubiquiti/Rocket-M5.yaml b/device-types/Ubiquiti/Rocket-M5.yaml index 73aa2c51..08c4ffd0 100644 --- a/device-types/Ubiquiti/Rocket-M5.yaml +++ b/device-types/Ubiquiti/Rocket-M5.yaml @@ -8,5 +8,6 @@ is_full_depth: false interfaces: - name: lan0 type: 100base-tx + poe_mode: pd - name: wlan0 type: ieee802.11n diff --git a/device-types/Ubiquiti/Rocket-M900.yaml b/device-types/Ubiquiti/Rocket-M900.yaml index 54fd1a69..d8db7f56 100644 --- a/device-types/Ubiquiti/Rocket-M900.yaml +++ b/device-types/Ubiquiti/Rocket-M900.yaml @@ -8,6 +8,7 @@ is_full_depth: false interfaces: - name: eth0 type: 100base-tx + poe_mode: pd - name: wlan0 type: virtual description: 900MHz diff --git a/device-types/Ubiquiti/Surge-Protector.yaml b/device-types/Ubiquiti/Surge-Protector.yaml index 0111b729..7e2d422b 100644 --- a/device-types/Ubiquiti/Surge-Protector.yaml +++ b/device-types/Ubiquiti/Surge-Protector.yaml @@ -15,3 +15,4 @@ rear-ports: - name: '1' type: 8p8c positions: 1 + poe: true diff --git a/device-types/Ubiquiti/UAP-AC-Lite.yaml b/device-types/Ubiquiti/UAP-AC-Lite.yaml index bb3f920d..717e2f4f 100644 --- a/device-types/Ubiquiti/UAP-AC-Lite.yaml +++ b/device-types/Ubiquiti/UAP-AC-Lite.yaml @@ -11,6 +11,7 @@ comments: '[AC Lite](https://www.ui.com/unifi/unifi-ap-ac-lite/)' interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11n - name: wlan1 diff --git a/device-types/Ubiquiti/UAP-AC-M.yaml b/device-types/Ubiquiti/UAP-AC-M.yaml index 8b0f4372..9c63aa82 100644 --- a/device-types/Ubiquiti/UAP-AC-M.yaml +++ b/device-types/Ubiquiti/UAP-AC-M.yaml @@ -10,6 +10,7 @@ comments: | interfaces: - name: lan0 type: 1000base-t + poe_mode: pd - name: wlan0 type: ieee802.11n - name: wlan1 diff --git a/device-types/Ubiquiti/USW-Flex-Mini.yaml b/device-types/Ubiquiti/USW-Flex-Mini.yaml index 711fdcec..4912594c 100644 --- a/device-types/Ubiquiti/USW-Flex-Mini.yaml +++ b/device-types/Ubiquiti/USW-Flex-Mini.yaml @@ -10,6 +10,7 @@ is_full_depth: false interfaces: - name: Port 1 (PoE IN) type: 1000base-t + poe_mode: pd - name: Port 2 type: 1000base-t - name: Port 3 diff --git a/device-types/Ubiquiti/USW-Flex.yaml b/device-types/Ubiquiti/USW-Flex.yaml index 92e2b788..63ce554a 100644 --- a/device-types/Ubiquiti/USW-Flex.yaml +++ b/device-types/Ubiquiti/USW-Flex.yaml @@ -10,11 +10,16 @@ is_full_depth: false interfaces: - name: Port 1 (PoE++ IN) type: 1000base-t + poe_mode: pd - name: Port 2 (PoE+) type: 1000base-t + poe_mode: pse - name: Port 3 (PoE+) type: 1000base-t + poe_mode: pse - name: Port 4 (PoE+) type: 1000base-t + poe_mode: pse - name: Port 5 (PoE+) type: 1000base-t + poe_mode: pse diff --git a/device-types/Ubiquiti/WAVE-LR.yaml b/device-types/Ubiquiti/WAVE-LR.yaml index 3ccaed2a..187bb1eb 100644 --- a/device-types/Ubiquiti/WAVE-LR.yaml +++ b/device-types/Ubiquiti/WAVE-LR.yaml @@ -15,6 +15,7 @@ interfaces: - name: eth0 label: Ethernet type: 1000base-t + poe_mode: pd - name: prs0 label: Wireless type: ieee802.11ax diff --git a/device-types/Ubiquiti/airCube-AC.yml b/device-types/Ubiquiti/airCube-AC.yml index 87b476a8..107e05b1 100644 --- a/device-types/Ubiquiti/airCube-AC.yml +++ b/device-types/Ubiquiti/airCube-AC.yml @@ -9,6 +9,9 @@ comments: | Controllable 24V PoE Out (+4, 5; -7, 8) on WAN Port u_height: 0 is_full_depth: false +power-ports: + - name: Power + type: dc-terminal interfaces: - name: lan1 type: 1000base-t diff --git a/device-types/Ubiquiti/airFiber-5XHD.yml b/device-types/Ubiquiti/airFiber-5XHD.yml index 20aa595f..71e9ee44 100644 --- a/device-types/Ubiquiti/airFiber-5XHD.yml +++ b/device-types/Ubiquiti/airFiber-5XHD.yml @@ -18,6 +18,7 @@ interfaces: - name: eth0 label: Ethernet type: 1000base-t + poe_mode: pd - name: ath0 label: Wireless type: ieee802.11ax diff --git a/device-types/Ubiquiti/airFiber-60-HD.yml b/device-types/Ubiquiti/airFiber-60-HD.yml index 9c374929..754bc7f6 100644 --- a/device-types/Ubiquiti/airFiber-60-HD.yml +++ b/device-types/Ubiquiti/airFiber-60-HD.yml @@ -20,6 +20,7 @@ interfaces: - name: eth0 label: Ethernet type: 1000base-t + poe_mode: pd - name: ubond0 label: Wireless type: ieee802.11ax diff --git a/device-types/Ubiquiti/airFiber-60-LR.yml b/device-types/Ubiquiti/airFiber-60-LR.yml index 5736aa50..738a56cd 100644 --- a/device-types/Ubiquiti/airFiber-60-LR.yml +++ b/device-types/Ubiquiti/airFiber-60-LR.yml @@ -20,6 +20,7 @@ interfaces: - name: eth0 label: Ethernet type: 1000base-t + poe_mode: pd - name: ath0 label: Wireless type: ieee802.11ax diff --git a/device-types/Ubiquiti/airFiber-60.yml b/device-types/Ubiquiti/airFiber-60.yml index 7ec35dd7..185c3757 100644 --- a/device-types/Ubiquiti/airFiber-60.yml +++ b/device-types/Ubiquiti/airFiber-60.yml @@ -18,6 +18,7 @@ interfaces: - name: eth0 label: Ethernet type: 1000base-t + poe_mode: pd - name: ubond0 label: Wireless type: ieee802.11ax diff --git a/device-types/Vertiv/MPUIQ-VMCHS.yaml b/device-types/Vertiv/MPUIQ-VMCHS.yaml index b94dffc9..8f199983 100644 --- a/device-types/Vertiv/MPUIQ-VMCHS.yaml +++ b/device-types/Vertiv/MPUIQ-VMCHS.yaml @@ -10,6 +10,7 @@ comments: MPU IQ Serial Adapter console-ports: - name: KVM type: rj-45 + poe: true console-server-ports: - name: vga0 type: other diff --git a/device-types/ghipsystems/GS5104-1471-EC.yaml b/device-types/ghipsystems/GS5104-1471-EC.yaml index 262a7e13..5e559b66 100644 --- a/device-types/ghipsystems/GS5104-1471-EC.yaml +++ b/device-types/ghipsystems/GS5104-1471-EC.yaml @@ -6,6 +6,7 @@ comments: '[4 Channels 1471-1531nm, LC/UPC, Dual Fiber, CWDM](https://ghipsystem part_number: GS5104-1471-EC u_height: 1 is_full_depth: false +is_powered: false front-ports: - name: '1471' type: lc diff --git a/device-types/Extreme Networks/X460-G2-VIM-2x.yaml b/module-types/Extreme Networks/X460-G2-VIM-2x.yaml similarity index 53% rename from device-types/Extreme Networks/X460-G2-VIM-2x.yaml rename to module-types/Extreme Networks/X460-G2-VIM-2x.yaml index 855e220c..d07f671f 100644 --- a/device-types/Extreme Networks/X460-G2-VIM-2x.yaml +++ b/module-types/Extreme Networks/X460-G2-VIM-2x.yaml @@ -1,13 +1,9 @@ --- manufacturer: Extreme Networks model: X460-G2 VIM-2x -slug: extreme-networks-x460-g2-vim-2x part_number: '16711' -u_height: 0 -is_full_depth: false -subdevice_role: child interfaces: - - name: '33' + - name: 2/1 type: 10gbase-x-sfpp - - name: '34' + - name: 2/2 type: 10gbase-x-sfpp diff --git a/schema/components.json b/schema/components.json index cf659fcc..d1c75d1e 100644 --- a/schema/components.json +++ b/schema/components.json @@ -32,6 +32,9 @@ "usb-micro-ab", "other" ] + }, + "poe": { + "type": "boolean" } }, "required": ["name", "type"] @@ -551,6 +554,9 @@ }, "positions": { "type": "integer" + }, + "poe": { + "type": "boolean" } }, "required": ["name", "type"] diff --git a/schema/devicetype.json b/schema/devicetype.json index 62d7618a..00259322 100644 --- a/schema/devicetype.json +++ b/schema/devicetype.json @@ -60,6 +60,9 @@ "child" ] }, + "is_powered": { + "type": "boolean" + }, "console-ports": { "type": "array", "items": { diff --git a/tests/definitions_test.py b/tests/definitions_test.py index e478993a..6d94fef3 100644 --- a/tests/definitions_test.py +++ b/tests/definitions_test.py @@ -1,6 +1,6 @@ from test_configuration import COMPONENT_TYPES, IMAGE_FILETYPES, SCHEMAS from yaml_loader import DecimalSafeLoader -from device_types import DeviceType, ModuleType, verify_filename +from device_types import DeviceType, ModuleType, verify_filename, validate_components import decimal import glob import json @@ -113,14 +113,7 @@ def test_definitions(file_path, schema): assert verify_filename(this_device), pytest.fail(this_device.failureMessage, False) # Check for duplicate components within the definition - for component_type in COMPONENT_TYPES: - known_names = set() - defined_components = definition.get(component_type, []) - for idx, component in enumerate(defined_components): - name = component.get('name') - if name in known_names: - pytest.fail(f'Duplicate entry "{name}" in {component_type} list', False) - known_names.add(name) + assert validate_components(COMPONENT_TYPES, this_device), pytest.fail(this_device.failureMessage, False) # Check for empty quotes and fail if found def iterdict(var): @@ -140,6 +133,10 @@ def test_definitions(file_path, schema): elif isinstance(list_value, list): iterlist(list_value) + # Check for valid power definitions + if this_device.isDevice: + assert this_device.validate_power(), pytest.fail(this_device.failureMessage, False) + # Check for images if front_image or rear_image is True if (definition.get('front_image') or definition.get('rear_image')): # Find images for given manufacturer, with matching device slug (exact match including case) diff --git a/tests/device_types.py b/tests/device_types.py index 380ae0af..9a6c07a3 100644 --- a/tests/device_types.py +++ b/tests/device_types.py @@ -8,6 +8,7 @@ class DeviceType: def __init__(self, definition, file_path): self.file_path = file_path self.isDevice = True + self.definition = definition self.manufacturer = definition.get('manufacturer') self._slug_manufacturer = self._slugify_manufacturer() self.slug = definition.get('slug') @@ -60,6 +61,59 @@ class DeviceType: KNOWN_SLUGS.add(self.slug) return True + def validate_power(self): + # Check if power-ports exists + if self.definition.get('power-ports', False): + # Verify that is_powered is not set to False. If so, there should not be any power-ports defined + if not self.definition.get('is_powered', True): + self.failureMessage = f'{self.file_path} has is_powered set to False, but "power-ports" are defined.' + return False + return True + + # Lastly, check if interfaces exists and has a poe_mode defined + interfaces = self.definition.get('interfaces', False) + if interfaces: + for interface in interfaces: + poe_mode = interface.get('poe_mode', "") + if poe_mode != "" and poe_mode == "pd": + return True + + console_ports = self.definition.get('console-ports', False) + if console_ports: + for console_port in console_ports: + poe = console_port.get('poe', False) + if poe: + return True + + rear_ports = self.definition.get('rear-ports', False) + if rear_ports: + for rear_port in rear_ports: + poe = rear_port.get('poe', False) + if poe: + return True + + # Check if the device is a child device, and if so, assume it has a valid power source from the parent + subdevice_role = self.definition.get('subdevice_role', False) + if subdevice_role: + if subdevice_role == "child": + return True + + # Check if module-bays exists + if self.definition.get('module-bays', False): + # There is not a standardized way to define PSUs that are module bays, so we will just assume they are valid + return True + + # As the very last case, check if is_powered is defined and is False. Otherwise assume the device is powered + if not self.definition.get('is_powered', True): # is_powered defaults to True + # Arriving here means is_powered is set to False, so verify that there are no power-outlets defined + if self.definition.get('power-outlets', False): + self.failureMessage = f'{self.file_path} has is_powered set to False, but "power-outlets" are defined.' + return False + return True + + self.failureMessage = f'{self.file_path} has does not appear to have a valid power source. Ensure either "power-ports" or "interfaces" with "poe_mode" is defined.' + return False + class ModuleType: def __new__(cls, *args, **kwargs): return super().__new__(cls) @@ -67,6 +121,7 @@ class ModuleType: def __init__(self, definition, file_path): self.file_path = file_path self.isDevice = False + self.definition = definition self.manufacturer = definition.get('manufacturer') self.model = definition.get('model') self._slug_model = self._slugify_model() @@ -96,4 +151,26 @@ def verify_filename(device: (DeviceType or ModuleType)): device.failureMessage = f'{device.file_path} file name is invalid. Must be either the model "{device._slug_model}" or part_number "{device.part_number} / {device._slug_part_number}"' return False - return True \ No newline at end of file + return True + +def validate_components(component_types, device_or_module): + for component_type in component_types: + known_names = set() + defined_components = device_or_module.definition.get(component_type, []) + if not isinstance(defined_components, list): + device_or_module.failureMessage = f'{device_or_module.file_path} has an invalid definition for {component_type}.' + return False + for idx, component in enumerate(defined_components): + if not isinstance(component, dict): + device_or_module.failureMessage = f'{device_or_module.file_path} has an invalid definition for {component_type} ({idx}).' + return False + name = component.get('name') + if not isinstance(name, str): + device_or_module.failureMessage = f'{device_or_module.file_path} has an invalid definition for {component_type} name ({idx}).' + return False + if name in known_names: + device_or_module.failureMessage = f'{device_or_module.file_path} has duplicated names within {component_type} ({name}).' + return False + known_names.add(name) + + return True