code: def create_device_from_category(self, plm, addr, cat, subcat,
                                      product_key=0x00):
          
          saved_device = self._saved_devices.get(Address(addr).id, {})
          cat = saved_device.get('cat', cat)
          subcat = saved_device.get('subcat', subcat)
          product_key = saved_device.get('product_key', product_key)
  
          device_override = self._overrides.get(Address(addr).id, {})
          cat = device_override.get('cat', cat)
          subcat = device_override.get('subcat', subcat)
          product_key = device_override.get('firmware', product_key)
          product_key = device_override.get('product_key', product_key)
  
          return insteonplm.devices.create(plm, addr, cat, subcat, product_key)
docs: Create a new device from the cat, subcat and product_key data.