NAS Card
UGREEN, Synology, QNAP and ASUSTOR NAS: CPU, RAM, disks, volumes and network.
Gauges for CPU, RAM and temperature, network rates, RAID volumes, disks and fans for four NAS integrations, discovered automatically, brands can be mixed.
Highlights
- UGREEN NAS, Synology DSM, QNAP and ASUSTOR
- Status-tinted NAS icon with the brand logo badge
- CPU, RAM and temperature gauges, with the last 24 hours of CPU and RAM behind them
- Network rates with their last 24 hours, gaps shown as gaps
- Alert thresholds you can set
- [object Object]
- Disks with temperature, power-on hours and SMART status
- Synology DSM update chip and reboot button with a confirmation
- Compact mini card, its CPU and RAM bars with their last 24 hours
- UGREEN and Synology: update available chip and reboot button with a confirmation
Cards
type: custom:nas-cardInstall
- 1Open the repository in the Marketplace with the Add to Marketplace button above, or add
github.com/juju35/ha-nas-cardas a custom repository (category Dashboard). - 2Download it from the Marketplace.
- 3Reload the browser and add the card from the dashboard editor.
Gallery 10
Documentation
From the README Features
Features
- Two cards: a full NAS Card and a compact NAS Mini Card, of type
custom:nas-cardandcustom:nas-mini-card(the former typescustom:ugreen-nas-cardandcustom:ugreen-nas-mini-cardkeep working) - Four integrations: UGREEN NAS, Synology DSM, QNAP and ASUSTOR (ha-asustor, SNMP) — automatic discovery, several NAS supported, brands can be mixed
- CPU, RAM and temperature gauges, uptime and CPU model; the CPU and RAM gauges (and the mini card's CPU and RAM bars) draw their last 24 hours behind them, on a 0–100 % scale (recorder statistics)
- Network download / upload rates, with their last 24 hours drawn behind each tile, on the full card and the mini card (recorder statistics)
- Volumes with RAID level, filesystem, status and used space
- RAID state of each volume as a coloured chip: healthy (green), a background task such as syncing, rebuilding, repairing or checking (orange), degraded or crashed (red); the mini card shows the worst unhealthy one in its footer. From the storage pool status on UGREEN and the volume status on Synology DSM and ASUSTOR (QNAP's integration reports none)
- Disks with model, status, temperature, size and power-on hours; the status dot turns red on any disk problem (on Synology also the SMART status and the bad sector / remaining life thresholds); a volume or disk without status entity has no dot
- UGREEN and Synology: an « Update available » chip when UGOS or DSM has an update (click for its more-info dialog), and a reboot button at the end of the system facts, with a confirmation popup at the top of the card
- Fans speed (CPU fan and case fans, UGREEN)
- Status pill: the server status (UGREEN, QNAP) or the security status (Synology); the ASUSTOR integration reports none
- Colors turn orange / red when a threshold is crossed (CPU, RAM, temperatures, volume usage)
- Detail button on the mini card (top right): it switches the mini card to the full card's content and back; a click anywhere outside the card brings the compact view back
- Click any value to open its Home Assistant history (more-info dialog)
- Round NAS icon next to the NAS name, in the status color (green when the NAS is normal, orange on a warning, grey when the status is unavailable), with the brand logo (UGREEN, Synology, QNAP or ASUSTOR) as a badge: a click opens the brand's website
- Click the NAS picture to open the NAS web interface (UGOS, DSM, QTS), found automatically from Home Assistant for UGREEN and Synology; both addresses can be changed in the visual editor
- Drawn NAS picture that follows the model: 43 models drawn across the three brands — towers by bay count, all-flash DXP480T, rackmounts (see Screenshots) — or your own picture
- Visual editor in the dashboard UI for both cards (no YAML needed), with the pictures listed by brand
- Light and dark mode, English, French, German, Spanish, Serbian (Cyrillic and Latin), Italian, Dutch, European Portuguese, Polish, Romanian, Danish, Swedish, Bulgarian, Russian, Ukrainian, Hungarian, Slovak, Czech, Slovenian, Latvian and Greek
- Single file, no external dependency: the NAS pictures are embedded
Moved: this repository was
juju35/ha-ugreen-nas-card. GitHub redirects the old address, but if you added it to the Marketplace from a link, remove it and addhttps://github.com/juju35/ha-nas-cardinstead.
Supported integrations
Supported integrations
| Integration | NAS | What the cards show |
|---|---|---|
| UGREEN NAS (Marketplace) | UGREEN DXP and DH | Everything: CPU, RAM, temperatures, network, volumes, disks, fans, server status, UGOS version and update, reboot, link to UGOS |
| Synology DSM (built in) | Synology | CPU, RAM, temperature, network, volumes, disks (status, SMART, bad sectors, remaining life), security status, DSM version and update, reboot, link to DSM; no fans |
| QNAP (built in) | QNAP | CPU, RAM, temperature, network, volumes, drives, server status, QTS / QuTS hero firmware; no fans |
| ASUSTOR (SNMP, custom) | ASUSTOR | CPU, RAM, temperatures, fans, network, volumes (RAID level and status), disks (SMART), ADM version and update; no server status, no reboot |
Several NAS are supported, and brands can be mixed. Some sensors of the Synology DSM, QNAP and ASUSTOR integrations are disabled by default, see How it works.
Prerequisites
Prerequisites
Home Assistant 2024.8 or later, and at least one of:
- the UGREEN NAS integration (available in the Marketplace)
- the Synology DSM integration (included in Home Assistant)
- the QNAP integration (included in Home Assistant)
- the ASUSTOR integration (custom integration, reads the NAS over SNMP: enable SNMP in ADM under Services → SNMP first)
Configuration
Configuration
Visual editor#
Edit a dashboard, click Add card and search for NAS Card or NAS Mini Card. The first NAS found is preselected; pick another one in the list if you have several (UGREEN, Synology, QNAP and ASUSTOR NAS are listed together), set an optional title, choose the picture (listed by brand: « QNAP TS-464 », « Synology DS923+ », « UGREEN DXP4800 Plus »…), the sections to display and the language. The preview updates live, and options left at their default are kept out of the generated YAML.
Minimal#
type: custom:nas-card
type: custom:nas-mini-card
Full options#
type: custom:nas-card
nas: ugreen_nas
title: My NAS
show_image: true
image: DXP4800 Plus
url: http://192.168.1.10:9999
brand_url: https://nas.ugreen.com
show_system: true
show_network: true
show_volumes: true
show_disks: true
show_fans: true
thresholds:
cpu:
warning: 60
critical: 85
volume:
critical: 95
language: fr
type: custom:nas-mini-card
nas: ugreen_nas
title: My NAS
show_image: true
image: DS923+
show_storage: true
show_network: true
zoom: true
language: fr
Options reference#
| Option | Card | Default | Description |
|---|---|---|---|
nas |
both | First NAS found | NAS to display (only needed with several NAS): the UGNAS_device_id attribute for UGREEN, the NAS device name for Synology DSM, QNAP and ASUSTOR (its device id when two NAS share a name; device ids from earlier versions are still read) — pick it in the visual editor |
title |
both | NAS name | Card title |
show_title |
both | true |
Show the title in the header (e.g. false under a section heading of your own) |
show_subtitle |
both | true |
Show the subtitle under the title |
show_image |
both | true |
Show the NAS picture |
image |
both | NAS model | Picture to show: a model name (DXP4800 Plus, DXP480T Plus, DH4300 Plus, DS923+, DS1821+, RS822+, TS-464, TVS-h674, TS-873AeU… — see the drawn models) or an image URL (e.g. /local/my-nas.png). By default the picture follows the model reported by the integration; an unknown model of a known family is drawn from its bay count |
url |
both | Device configuration URL | Web interface of the NAS, opened by a click on the NAS picture. By default the configuration URL of the NAS device in Home Assistant (the « Visit » link of the device page), set by the UGREEN NAS and Synology DSM integrations; the QNAP and ASUSTOR integrations have none, so set it for a QNAP or ASUSTOR NAS (e.g. http://192.168.1.10:8080) |
brand_url |
both | Brand website | Website opened by a click on the header icon: nas.ugreen.com, synology.com, qnap.com or asustor.com by default |
show_system |
full | true |
CPU, RAM and temperature gauges, uptime, CPU model |
show_network |
both | true |
Network download / upload |
show_history |
both | true |
24 h curves behind the download / upload tiles (on the mini card, the rates then show as tiles above the footer instead of in it) and behind the CPU and RAM gauges and mini card bars (0–100 % scale), from the recorder's 5-minute statistics, fetched in one query (needs sensors with a state_class; a sensor without one simply gets no curve). Sections hidden with show_system / show_network are not fetched. Points sit at their time over the last 24 hours, and the curve breaks where data is missing |
show_volumes |
full | true |
Volumes and used space |
show_disks |
full | true |
Disks details |
show_fans |
full | true |
Fans speed |
show_storage |
mini | true |
Overall storage usage bar |
zoom |
mini | true |
Detail button at the top right: switches to the full card and back (false removes it) |
thresholds |
both | See Thresholds | Orange (warning) and red (critical) levels per reading: cpu, ram, temperature (CPU / system), disk_temperature and volume (volumes, and the mini card storage bar); set only the values to change |
language |
both | Auto | Force language: en, fr, de, es, sr, sr-Latn, it, nl, pt, pl, ro, da, sv, bg, ru, uk, hu, sk, cs, sl, lv or el (auto-detects from HA settings) |
How it works
How it works
UGREEN NAS#
Every entity created by the integration carries a UGNAS_device_id attribute. The cards use it to gather the entities of a NAS, then recognize each sensor from the end of its entity id (cpu_usage, pool_1_volume_1_used_size_raw, pool_2_disk_1_temperature…). Entity ids de-duplicated by Home Assistant (for example sensor.ugreen_nas_cpu_usage_2) are supported, and so are renamed devices. Volume sizes are read from the *_raw sensors (bytes) so that the used space is exact whatever the unit chosen by the integration.
The UGOS version is read from nas_ugos_version or, for a NAS adopted with integration v2026.10.1 or later (where the sensor became « UGOS Version »), from ugos_version. The Update Available sensor (v2026.10.1 and later) shows an « Update available » chip with the new UGOS version while it is True. The Power Action: Reboot button (power_action_reboot, v2026.05.1 and later) adds the reboot button at the end of the system facts, with the same confirmation popup as on Synology; buttons carry no UGNAS_device_id, so the cards pick the one on the NAS's device, or the one named after its entity prefix (shutdown and wake-up buttons are never used).
Synology DSM and QNAP#
The cards read the Home Assistant entity and device registries instead of entity ids: every entity of these integrations is matched by its translation_key (cpu_total_load, memory_real_usage, volume_percentage_used, disk_temp, drive_temp…) and by the device it belongs to. Entity ids can therefore be in any language or renamed without breaking the cards.
- Synology DSM: volumes and disks are child devices of the NAS; their labels and the disk models come from there. The security status binary sensor feeds the status pill (« Normal » / « Warning »), and the uptime comes from the Last boot sensor. The DSM version is shown under the model. A disk is shown in red when its status or SMART status is not normal, or when its Exceeded max bad sectors or Below min remaining life binary sensor is on. The DSM update entity of the NAS shows an « Update available » chip with the new version while it is on, and the Reboot button (found by its
restartdevice class, the shutdown button is never used) adds a reboot button at the end of the system facts: it asks for a confirmation at the top of the card before pressing it. - QNAP: everything sits on one device; volumes and drives are told apart by the identifier the integration inserts in the entity names (for example
DataVol1or0:1). The first network interface feeds the network tiles, and the firmware is shown as QTS or QuTS hero. - Some useful sensors are disabled by default by these integrations — on QNAP, drive temperatures, SMART statuses, memory sizes, network rates and volume used space; on Synology, total volume sizes; on ASUSTOR, the total and used volume sizes (deduced from the free space and the used percentage when disabled) and the disk sizes. Enable them in Settings → Devices & services → Entities to fill the matching sections of the card (missing sizes are completed from the used percentage when possible).
- Fans are not reported by these integrations: the fans section only shows on UGREEN and ASUSTOR NAS.
ASUSTOR#
The ha-asustor integration (SNMP) is discovered like Synology DSM: the NAS is the root device, and its volumes, disks and network interfaces are child devices. CPU, RAM, CPU and system temperatures, uptime (converted from the unit Home Assistant displays, days by default), CPU model, fans, the ADM update chip (« ADM x.y » under the name), a volume's RAID level, status (the RAID chip) and filesystem, and each disk's temperature, status, SMART health, size and model. The first network interface feeds the network tiles. Total and used volume sizes are disabled by default in the integration: they are deduced from the free space and the used percentage. No server status and no reboot button (the integration has none). The model pictures (AS…, FS…, rackmounts for AS…R…) are drawings.
NAS pictures#
The picture is drawn from the model reported by the integration, so a renamed NAS keeps the right picture: UGREEN DXP towers (aluminium) and DH towers (white) by bay count, the flat all-flash DXP480T; Synology DS towers with the bay count of their family (DS723+ has 2 bays, DS923+ 4, DS1522+ 5, DS1821+ 8…) and RS rackmounts; QNAP towers with the bay count of their name (TS-464 → 4) and rackmounts for the models ending in U (TS-873AeU, TS-1264U-RP). ASUSTOR towers (AS…, FS…) with the bay count of their number (AS5304T → 4) and rackmounts for AS…R… models. Use the image option to pick another one or your own.
Units#
Sizes and rates follow Home Assistant's units: kB, MB, GB and TB (and kB/s, MB/s…) are decimal (powers of 1000), KiB, MiB, GiB and TiB (and KiB/s, MiB/s…) are binary (powers of 1024), whatever unit you choose for a sensor in Home Assistant. The cards display decimal units, so a volume reported as 6.62 TB reads 6.62 TB on the card too.
Thresholds#
Default levels, changed with the thresholds option (or the Alert thresholds section of the visual editor):
| Value | Key | Orange (warning) |
Red (critical) |
|---|---|---|---|
| CPU usage | cpu |
70 % | 90 % |
| RAM usage | ram |
80 % | 95 % |
| CPU / system temperature | temperature |
75 °C | 90 °C |
| Disk temperature | disk_temperature |
60 °C | 70 °C |
| Volume usage | volume |
80 % | 90 % |
thresholds:
temperature:
warning: 70
disk_temperature:
warning: 50
critical: 60
Temperatures are shown in the unit of their sensor, which follows your Home Assistant unit system (°C, °F or K); the temperature thresholds are in °C and apply to the converted value, so 124 °F (51 °C) stays green.
Narrow cards#
The full card fits down to 9 columns of a sections view (about 234 px on a phone), the mini card down to 6 columns (about 156 px on a phone). On narrow cards, the NAS picture is hidden (below about 340 px on the full card, 220 px on the mini card) so that the name keeps its room, the volume details move under their bar and the mini card drops the uptime from its footer, then puts its upload rate under the download rate. Below about 200 px, the status pill shrinks to its colored dot (its text stays in its tooltip) and the mini card rows keep their icon, bar and value (the label stays in their tooltip). In a container sized by its content (a grid auto column, an inline-block wrapper), the cards take a width of 400 px instead of collapsing.
Changelog
All 53 versions 1.24.0Nov 12, 2026Latest
Features
show_titleandshow_subtitleoptions (also in the visual editor) hide the header's title and its subtitle, separately, for a card placed under a section heading of its own (asked in juju35/ha-vehicle-card#72).
1.23.0Nov 11, 2026
Features
- ASUSTOR (ha-asustor integration, SNMP): discovered like Synology DSM. CPU, RAM, CPU and system temperatures, uptime, CPU model, fans, the ADM update chip and « ADM x.y » under the name; volumes with RAID level, status (RAID chip), filesystem and used space; disks with temperature, status, SMART health, size and model; network rates of the first interface.
- ASUSTOR pictures: the 83 models of the manufacturer's resource page listed in the editor, each drawn after the product photos of its family (Drivestor, Drivestor Pro / Nimbustor, Lockerstor and AS50…AS70 with a display and trays, rackmounts, Flashstor).
- The editor and error texts name ASUSTOR in the 22 languages; the « url » hint tells to set it for ASUSTOR as for QNAP (neither integration provides a configuration URL). The brand logo comes from the Dashboard Icons collection.
Fixes
- ASUSTOR volumes and disks are labelled « Volume 1 », « Disk 1 » instead of « NAS Volume 1 » / « NAS Disk 1 » (the NAS name prefix of the integration's device names is left out), so a narrow disk tile no longer cuts its name.
- The uptime of a duration sensor is converted from its own unit (Home Assistant shows ASUSTOR's in days).
- A volume known only by its free space and used percentage gets its total and used sizes deduced.
- A disk reported « Idle » is healthy.
1.22.0Nov 10, 2026
Features
- RAID state: each volume of the full card shows its RAID state as a chip next to the RAID level — green while healthy, orange during a background task (syncing, rebuilding, repairing, checking, a drive being added or replaced…), red when degraded or crashed. A click opens the state's entity. Known states are translated in the 22 languages; any other keeps the integration's own word.
- Mini card: a RAID that is not healthy shows in the footer (« RAID1 · Degraded »), the worst one first, in its colour.
- UGREEN: from the storage pool status (the 15 UGOS states). Synology DSM: from the volume status, now shown once as the RAID chip instead of the volume's dot. QNAP's integration reports no RAID or volume state, so its volumes show none.
1.21.3Nov 10, 2026
Changes
- Mini card: the temperature row now comes after the storage row (CPU, RAM, storage, temperature), as on the System Monitor mini card.
1.21.2Nov 10, 2026
Fixes
- Synology DSM and QNAP behind a FRITZ! mesh repeater (#74): FRITZ!Box Tools links its network clients, the NAS device merged in by its MAC address, to the repeater they go through, and the card took that repeater for the NAS: wrong model and version under the name (« FRITZ!Repeater 1610 Outdoor · 8.20 »), empty CPU, RAM and temperature gauges, the NAS temperature shown as a ninth drive, the repeater (« CarPort ») in the editor's list and « NAS not found » with the NAS device id. The NAS is now the topmost device of its own integration.
nasoption of a Synology DSM or QNAP NAS: the visual editor writes the NAS's device name instead of its device id (the device id only when two NAS share a name); device ids written by earlier versions are still read and become the name when the card is saved again.- A volume or drive without a « (…) » part in its device name is labelled with that name, and one without any name with its number, never with its device id.
1.21.1Nov 9, 2026
Fixes
- Header on a phone-wide card (zoomed mini card, full card on a phone): the status pill, the model and the OS version were cut (« Nor… », « DXP48… », « UGOS … »). The model and the OS version now run under the status pill too, and the NAS picture takes at most 28 % of the width (instead of 40 %) on cards up to 420 px.