    def device_new(address: str, scanners: list[str]) -> None:
        """
        Create entities for newly-found device.

        Called from the data co-ordinator when it finds a new device that needs
        to have sensors created. Not called directly, but via the dispatch
        facility from HA.
        Make sure you have a full list of scanners ready before calling this.
        """
        if address not in created_devices:
            entities = []
            entities.append(BermudaSensor(coordinator, entry, address))
            entities.append(BermudaSensorRange(coordinator, entry, address))
            entities.append(BermudaSensorScanner(coordinator, entry, address))
            entities.append(BermudaSensorRssi(coordinator, entry, address))
            entities.append(BermudaSensorAreaLastSeen(coordinator, entry, address))

            for scanner in scanners:
                entities.append(BermudaSensorScannerRange(coordinator, entry, address, scanner))
                entities.append(BermudaSensorScannerRangeRaw(coordinator, entry, address, scanner))
            # _LOGGER.debug("Sensor received new_device signal for %s", address)
            # We set update before add to False because we are being
            # call(back(ed)) from the update, so causing it to call another would be... bad.
            async_add_devices(entities, False)
            created_devices.append(address)
        else:
            # We've already created this one.
            # _LOGGER.debug("Ignoring duplicate creation request for %s", address)
            pass
        # tell the co-ord we've done it.
        coordinator.sensor_created(address)
Create entities for newly-found device.

Called from the data co-ordinator when it finds a new device that needs
to have sensors created. Not called directly, but via the dispatch
facility from HA.
Make sure you have a full list of scanners ready before calling this.
custom_components/bermuda/sensor.py