Always improving
What's new
We keep refining SkyView — here's a timeline of the features and improvements each release brings you.
- v0.9.45Latest
Fall alerts: several classes of missed falls fixed, false alarms tightened
- Several falls that previously went unreported now alert: the camera briefly losing sight of someone who has gone down, falling again shortly after getting up, falling behind a table or other furniture, and someone already on the floor when the system starts or when they enter the frame (lying across the view, or head towards the camera). Lying head-away with no reference at all still can't be judged — a limit of the viewpoint itself.
- False alarms tightened alongside: sitting down at a table or bending over no longer triggers; toddlers crawling and squatting still don't alert — only lying visibly flat and still for a while does.
- Fuller logs for this area: if an alert fired wrongly or failed to fire, exporting the logs lets us pinpoint the exact reason.
- v0.9.44
Event images show the posture · Sofas and beds can be excluded from fall alerts
- Event images show the person's posture: fall events are drawn with head, limbs and torso, so you can tell at a glance whether the system read the scene correctly — in the app, on the web, in push images and in Home Assistant. The picture is also now the moment of the fall, not an empty scene a few seconds after the person walked off.
- New "fall-ignore area": circle a sofa or bed and falls are no longer reported there, while people are still detected and faces still recognised — unlike the ordinary ignore area, which drops everything in that region.
- Falls are judged on several signals together: no single missing condition silences the alert any more (a restart, someone passing behind furniture, crawling in from outside the frame — ordinary cases that all used to be missed). ⚠️ The default therefore alerts more readily: anyone on the floor who stays down triggers an alert; for bedrooms, draw a fall-ignore area or switch the sensitivity to Low.
- v0.9.43
Fall settings are down to a single sensitivity · Desktop settings display mismatch fixed
- Fall recognition: new model, reworked judgement: fixes falls towards the camera (the most common way people go down in a hallway or corridor), and adds a fallback that doesn't depend on posture — if a person's height in the picture collapses and stays down, you get an alert even when the posture can't be made out.
- Fall settings are down to High / Low: there used to be five numbers here, none of which could be judged by feel, and one set too high stopped alerts entirely. The default High leans towards alerting — missing a real fall costs far more than a few extra alerts; switch to Low if it's chatty. ⚠️ NVIDIA graphics users: run the acceleration step in settings once more after upgrading.
- Desktop and classic views disagreed about your settings: the desktop view wasn't reverting to the real state when a save failed, so switches appeared to change by themselves. Fixed.
- The "test" button in automations: the test message was word-for-word identical to notifications you had already received, which made it look cached. It's now recognisable as a test message.
- v0.9.42
Fall alerts no longer almost never fire · No more repeated package alerts · Automations can post straight to DingTalk, WeCom, Feishu and Bark
- Fall alerts went from "almost never fire" to usable: the way falls were judged largely broke down on real footage — fixed; they also now come through during Do Not Disturb as intended (a fall while getting up at night is exactly the most common case; other alert types still respect your settings); and pose/fall detection under NVIDIA TensorRT acceleration, which was completely non-functional, is fixed as well.
- Packages at your door stop re-alerting: a parcel sitting untouched at the door could previously generate hundreds of "package delivered" and "package taken" alerts in a single day. It now also considers whether anyone actually passed by and whether that part of the picture really changed, so an untouched parcel stops bothering you.
- New automation actions: DingTalk, WeCom, Feishu/Lark and Bark: just pick one, paste the bot address and type the message — no more hand-writing JSON. When delivery fails you get a plain-language reason (e.g. "DingTalk rejected: security settings do not match") instead of a bare failure. Leave the message empty and it reuses the same wording as your phone notification.
- Editing device settings on the web is safer: previously, changing one setting on the web and saving could overwrite settings that had just been changed elsewhere (your phone, another tab) back to their old values — for example, recording mode silently reverting to "motion only". Only the fields you actually changed are submitted now.
- More stable AI detection and faster snapshots on some machines: on older Intel integrated graphics (J4125, J4105, N5105, and UHD 630-era chips), the system used to try hardware decoding, but on these particular chips it is actually slower than plain software decoding — which caused AI detection to keep dropping out and snapshots to lag. The system now measures both once at startup and picks whichever is genuinely faster. The older the machine, the bigger the gain. Newer chips (N100, N305 and similar) are unaffected and keep their existing acceleration.
- v0.9.41
Improved package and pet recognition · Voice announcements fixed · Downloads now show progress
- Packages at your door are picked up more often: deliveries and takeout left at the door were frequently missed before; this round of tuning noticeably improves the hit rate. Some camera angles and lower-quality streams will still miss them — we're continuing to work on it.
- Fewer people mistaken for pets: on overhead-angle cameras (hallways, entryways), a person bending or crouching was often labelled a cat or dog; this round reduces those mix-ups, and cats being called dogs happens less often too. Recognition is still being refined — please keep reporting any misidentifications you run into.
- Voice announcements work again: the spoken announcements in automation rules, and the "Test voice announcement" button in settings, used to fail. If you had set up an announcement rule that never spoke, it will simply start working after the upgrade — no need to reconfigure anything.
- Exported recordings now show download progress: on mobile, web, and desktop, downloading an exported recording now shows a progress bar and how much has been downloaded. Previously nothing on screen changed after you tapped "Download", and a large file could take several minutes — making it look like the tap hadn't registered. On Android this led to repeated taps downloading the same video several times over; that's fixed too.
- Embed it in the Home Assistant sidebar: Home Assistant users can now embed the SkyView interface directly into the HA sidebar instead of switching back and forth between two pages. Enable the corresponding toggle in settings (used together with the SkyView HA integration).
- v0.9.40Highlight
Leaner, steadier AI detection · Set camera lights to auto/on/off · Choose how detailed AI summaries are
- AI detection uses fewer resources: with the same all-cameras HD detection, NVIDIA GPU users see noticeably lower load at unchanged quality and frame rate; Intel iGPU and pure-CPU setups are optimized too. Easier going when you run many cameras on a modest box.
- No more periodic stutter on flaky cameras: cameras on shaky networks with occasional glitchy frames (common with WiFi or remote cameras) used to drop and restart detection every few dozen seconds — now it recovers in place without interruption, and without flooding the logs with errors.
- More accurate event timing: event and trajectory timestamps could previously lag the recording by a few seconds (more on some remote cameras) — they now line up with the recording so the moment matches on playback.
- Set camera lights on the fly: supported cameras (Hikvision, Dahua, Reolink, TP-Link, etc.) can have their supplemental light set to auto, always-on, or always-off from settings, on mobile, web, and desktop.
- Choose how detailed AI summaries are: pick a concise or detailed summary, and optionally turn on cloud "deep analysis" for a richer description — the detailed mode never invents things that aren't in the frame.
- TP-Link home cameras now supported: TP-Link's home line (TL-IPC) can now be added.
- Detection boxes and trajectories line up better on playback: when reviewing footage, the on-screen boxes and movement trails match the actual picture more closely.
- Other improvements and fixes: Hikvision IR-only models no longer report a false "light control failed" when turning on the light; the desktop "Go to settings" button no longer jumps to the wrong page; event thumbnails render at the correct aspect ratio across all grids; curly quotes no longer leave extra whitespace on non-Chinese interfaces; upgrading without the docker permission mounted now gives clear, actionable guidance.
- v0.9.39
Basic motion detection is now free · The live wall remembers your layout
- Basic motion detection on the free tier: motion detection and push notifications now work without a paid license. The settings pages clearly mark what is free and what needs an upgrade, with a direct upgrade path on the AI features.
- The live wall remembers where you put each camera: manually arranged grid positions are now saved, and each grid size (4-up, 9-up, ...) keeps its own arrangement.
- The AI summary failure alert can be switched off: if the cloud summary service is unstable, you can silence the repeated alerts in settings — summaries keep retrying on their own, and missed events are filled in once the service recovers.
- Fixed a false alarm when saving the remote-access port: saving the public port no longer incorrectly reports that the port is not active — the feature actually worked; only the message was wrong, so there is no need to switch ports as it suggested.
- v0.9.38
Fixes two problems from the previous release: slow live video on phones over the internet, and settings toggles that could not be switched off.
- Live video now starts much faster on phones away from home. iPhones often took ten seconds or more to show a picture (Android was quick); now it appears within a few seconds.
- Settings toggles can be switched off again. "IPv6 direct connection" and "automatic HTTPS certificate" could previously only be turned on — the switch showed off and saving reported success, but they stayed on.
- v0.9.37Highlight
Recognizes your own pets · see who visited and where they went · a paragraph a day on how things went · movement trails on events · remote access over a single port
- Recognizes your own pets. Add your cats and dogs and events name the individual animal, with a timeline of where it went during the day, the spots it favors, and a one-line daily recap. Yunkan picks out photos of pets it doesn't recognize yet for you to confirm, so you never feed it samples by hand. Off by default — enable it in one tap on the Pets page.
- See who visited and where they went. The same person appearing on several cameras is merged into a single visit; open it to see which lenses they passed in order with the footage from each leg, or have Yunkan sum up the visit in a sentence. Visits you don't want to keep can be deleted or cleared at any time.
- A paragraph a day on how things went. Yunkan leads with what matters — strangers, packages, falls — sums up routine activity in a line, and on a quiet day simply says there was nothing of note. One recap per day for the whole home. Off by default.
- Movement trails on events. The event picture now draws the path the subject took: where they came from, where they went, where they lingered.
- Replay the moment right in the event. No more jumping to playback and hunting through the timeline — the event detail plays those few seconds directly, with detection boxes following the action. On phone, tablet, web and desktop.
- Remote access needs only one forwarded port — none at all if your ISP provides IPv6. The live view no longer falls back to a two-second delay when watching from outside; it connects directly.
- HTTPS certificates are issued automatically. Enter your own domain and Yunkan handles issuance and renewal, so browsers stop warning about an insecure connection. Port 80 does not need to be open, and 8 DNS providers are supported including Cloudflare, AWS Route 53, Porkbun, deSEC and DuckDNS. Certificates you installed by hand are left untouched.
- More accurate recognition. The recognition model has been replaced across the board: on the same real-world footage the false alert rate drops from 27% to 9%, with a new "highest accuracy" tier for machines with a discrete graphics card. Sheep, cattle and horses are no longer reported as birds, and a recognized face now appears on the main event instead of taking an entry of its own.
- Packages are recognized even sitting still. Previously a package was lost once it stopped moving, and thirty seconds later Yunkan falsely reported it as taken. Off by default; enable it in detection settings.
- Push notifications carry the picture. The notification shows the subject directly, and the AI summary is added to that same notification once ready rather than arriving as a second alert. Event list thumbnails are close-ups of the subject too.
- Talk through the camera from the live view. A new panel on web and desktop lets you type a message for the camera's speaker to announce.
- Licensing. A license is no longer reported as "revoked" when the device clock is off — it asks you to correct the time instead. Device migration is now available on the desktop app, Pro no longer persists indefinitely after a subscription lapses, and support can free a seat from an old machine on request.
- Other improvements and fixes. Loitering alerts can skip people you already know; snapshots can be exported in bulk; the event timeline is color-coded by category. Fixes: PTZ cameras panning on a cycle with nobody present, auto-tracking not starting on cameras set up with only vendor credentials, choppy two-way audio on recent TP-Link firmware, cloud AI summaries never producing a result, blurry zoom in the labeling workspace, a crash on the Pets page, and several iOS issues (video not pausing when switching tabs, misplaced delete confirmations on iPad and Mac, untranslated strings).
- Upgrade notes.
- MySQL / MariaDB users: the first startup upgrades one recording table automatically. With a large recording history this takes a few minutes during which the web interface is unavailable — please don't restart midway. It happens only once. SQLite installations are unaffected.
- If you have trained a custom recognition model: the built-in category system has been updated, so older custom models are marked outdated and Yunkan falls back to the built-in model. Retraining once restores it.
- v0.9.36Highlight
Far fewer false motion alerts · one long-standing fall-detection defect fixed · live streams available over RTSP for third-party apps
- Far fewer false motion alerts, automatic with nothing to tune. Shadows and light spots, swaying foliage and rippling water, the timestamp overlay burned into the picture, insects flying close to the lens at night, and the moment the camera switches to night vision are each handled now — while someone walking past with a flashlight still triggers an alert as it should. Detection boxes hug the real subject too: one person is no longer broken into fragments, stray fragments from reflections no longer get a box of their own, and both very close and very distant subjects are recognized better.
- A long-standing fall-detection defect fixed. The path that judged the drop leading to a fall had never actually worked, so real falls often went unreported. That path works now, so more falls get through than before. Upgrade note: the separate "Pose detection" and "Fall detection" switches are now a single switch, migrated from your existing state — nothing you had disabled gets turned back on for you.
- No more "not a single event" while someone is active at home. The old pacing assumed a visitor arrives by breaking a quiet scene, so a resident moving around the house for a long time produced nothing. Events now keep coming at a steady pace (every 30 seconds by default) while activity continues.
- Live streams can be consumed over RTSP by third-party software such as Home Assistant or go2rtc: sub-second latency, no segmenting. The live address published to Home Assistant carries it too, and authentication works exactly as before.
- ⚠️ H.265 (HEVC) cameras are no longer transcoded to H.264 on the server. Transcoding permanently occupies one of your graphics card's video encoding channels, so several H.265 cameras viewed at once crowd each other out. Yunkan now serves the original video as-is — the mobile apps, Safari and any Chrome / Edge with hardware decoding play H.265 natively, and the load on your host drops noticeably. A handful of older browsers without H.265 support can no longer view these cameras on the web; use the mobile apps instead.
- Three PTZ fixes. Direction keys that did nothing at all on some multi-stream cameras now work; the 300 empty factory presets shipped by Hikvision and others are filtered out so you only see your own; and firmware with no preset feature is no longer reported as a fault.
- Resource usage. Face recognition, AI summaries, HomeKit and the GB/T video surveillance integration truly stop using memory when switched off (from 100–130 MB down to about 16 MB standby, back within 5 seconds when re-enabled). A new self-check also compares your acceleration settings against what is actually in effect, item by item, with guidance for each mismatch — "the CPU is pegged" often turns out to be a GPU quietly falling back to the CPU.
- Other fixes. AI semantic search now states why it is unavailable instead of silently falling back to keyword matching; cameras whose stream vanished and whose recording stopped silently are fixed; the log center no longer becomes permanently unusable with "concurrency limit reached"; detection settings no longer claim a restart is needed (changes apply automatically in about 10 seconds); the home screen status chip no longer turns into a block of solid color on iOS 27; and the Android crash-report sharing screen is localized in all five languages.
- v0.9.35Highlight
Camera-side detection events open to every ONVIF camera · new TP-Link VIGI support and two-way talk for domestic TP-Link · "Timestamp repair" upgraded to truly stop frame loss
- Your camera's own smart detection events can now feed Yunkan — on any ONVIF camera. Camera-side events used to work only with Hikvision, Dahua and Reolink brand-specific interfaces. Now any camera that supports standard ONVIF events (most mainstream network cameras do) can switch its event source to "Camera" under Cameras -> Edit -> Camera-side events, so the camera's own motion / person detection triggers Yunkan's events, recordings and alerts — using none of your Yunkan host's computing power, which lets low-end hosts comfortably handle more cameras.
- New TP-Link VIGI series support. Five camera-side event types — person, motion, tampering, line crossing and area intrusion — plug straight in, and the add-camera wizard now has a VIGI brand tile with the connection details pre-filled. There is also a new "audio anomaly" event category (glass breaking, screaming and the like), kept separate from "crying" so your automation rules can react to each one differently.
- Two-way talk comes to domestic TP-Link cameras (the TL-IPC line). These cameras have no public talk interface, so two-way talk was previously unavailable for them in Yunkan. Push-to-talk from the apps and automated voice announcements now work, verified step by step on real hardware. (Their PTZ, video and other abilities were already supported and are unaffected.)
- Two PTZ fixes that benefit every camera brand. First, cameras added via a brand template or a plain RTSP address had no PTZ at all (only cameras added through the ONVIF wizard worked) — now they do. Second, on some cameras click-to-aim on the live image did nothing while the side arrow buttons worked fine: the camera simply never declared its abilities and was wrongly marked "unsupported". Yunkan now gives such cameras the benefit of the doubt.
- Two-way talk compatibility fix. Some camera firmware validates requests strictly and rejected Yunkan's talk audio, which showed up as two-way talk simply not working, with no error anywhere. This is fixed, and affected cameras can talk again.
- "Timestamp repair" upgraded — cameras that still dropped frames with it on are now truly fixed. The switch introduced in 0.9.34 turned out not to be enough for some cameras (the Tapo C325WB, for example): frames were being lost earlier in the pipeline than the original fix could reach. This release reworks how such cameras are ingested and fixes the problem at its source. The switch keeps its name and place; cameras that already have it on pick up the new behavior automatically after upgrading, with nothing for you to do. And if the new path ever proves unstable on a particular camera, Yunkan automatically falls back to the previous behavior, so live view and recording are never at risk.
- Existing cameras pick up new abilities without being re-added. Switching the event source to "Camera" now re-probes what that camera actually supports on the spot. If it genuinely lacks the ability, you get a clear message saying why — no more "saved successfully, but the option quietly snapped back later".
- When the integrated GPU can't be selected for AI detection, Yunkan now tells you why. In Docker deployments where the integrated GPU was not passed through to the container, the performance monitor could see the GPU while the decode / inference pickers could not — with no clue anywhere. Yunkan now states plainly that the GPU has not been passed through to the container and shows how to fix it; genuinely unavailable options are also greyed out with a reason, so you can't pick something that won't take effect.
- Install and upgrade fixes. When moving the recordings folder to a new disk, a freshly formatted disk is no longer mistaken for one that "already has data" (which silently skipped the migration), and a misjudgment that could copy old recordings into a nested duplicate is closed off. The upgrade failure for fnOS (FeiNiu NAS) users is also fixed.
- v0.9.34Highlight
New "Timestamp repair" switch for cameras that drop frames · detection boxes on event images no longer expire · AI summary GPU issues wrapped up
- New "Timestamp repair" switch fixes dropped frames, artifacts and a misaligned timeline on certain cameras. A few cameras (TP-Link's Tapo C325WB, for example) send out-of-order time markers in their firmware's stream, so the clips Yunkan records lose a large share of their frames, show smearing and blocky artifacts, and the playback scrubber doesn't line up with what you see. You can now turn on Timestamp repair under Cameras -> Edit -> Connection, and Yunkan rebuilds the time markers from when each frame actually arrives, restoring smooth, complete recordings. It is off by default and only needed for cameras with this problem; turning it on briefly reconnects that camera. Rule of thumb: if one camera's recordings are visibly choppier or more broken up than the rest, this switch is worth a try.
- Fixed detection boxes and "crop to the main target" on event images going dead after a while. The event images served to Home Assistant, and the snapshot previews in push notifications, only drew boxes and applied cropping during a short window right after the event — open the same image later and you got a plain, unannotated picture, which is almost always when you actually look at it. This is now fixed for good: boxes and cropping work whenever you open the image. The Home Assistant integration itself needs no update.
- Fixed the AI summary hardware picker snapping back to "Auto". Choosing a specific graphics card under Settings -> AI Summary and saving it always redisplayed as "Auto", which looked like the setting had not been saved. In fact the setting was saved and active the whole time — only the display was wrong. Now fixed.
- AI summaries fall back to the CPU automatically when a GPU can't run them, instead of staying "Stopped". With some card and driver combinations, loading the AI summary model crashes the service and it restarts over and over, which shows up in the console as an AI summary status stuck on "Stopped". Yunkan now recognizes that crash loop, temporarily switches to the CPU so summaries keep working (your chosen graphics card setting is left untouched), and retries the GPU automatically a day later — so no manual step is needed after you update a driver or swap cards.
- Recording export errors now follow your interface language. Messages shown when exporting a recording or a timelapse fails (no recording in the selected range, task cancelled, download link expired, and so on) used to always be in Chinese. They now appear in your interface language on both web and mobile, so English, Japanese, French and Traditional Chinese users no longer see Chinese error text. This also fixes the mobile apps sometimes showing an unhelpful bare "HTTP 404".
- Fixed portrait cameras being cropped in the Android playback screen's live view. Switching to live view on the playback screen in the Android app cut away most of a 9:16 portrait camera, leaving only a central strip. It now shows the full image at the correct aspect ratio, with black bars top and bottom. The home-screen grid is unchanged.
- v0.9.33
Fixes the labeling workbench freezing on "Save and next"
- Fixed the labeling view freezing when you hit "Save and next". In the training labeling workbench, saving the current image and moving to the next one could make the whole picture disappear, leaving just a spinner — boxes could not be drawn either, and only a page reload got you out. It was easy to hit when labeling many images in a row. Now fixed. Your labels were always saved correctly — nothing was lost; only the display of the next image was stuck.
- Fixed overlapping text on the "AI detection tasks" card on the dashboard. The "events in 24h" number on that card could collide with the labels above and below it when a camera was running and showing weather info, making both hard to read. The layout now gives the number and the labels their own space.
- v0.9.32Highlight
A new AI summary model — more accurate, lighter on your machine · Drag to rearrange the video wall · Redesigned desktop notifications
- AI summaries (event descriptions) move to a brand-new model that reads images far better. The new model writes both English and Chinese directly in one step, instead of the old two-step "describe in English, then translate" pipeline. Judged image by image across 31 real event snapshots, the new model won 6, lost 1 and tied 1 — the old one called a person a "white chair", reported 3 people as 1, and missed the cane in an elderly person's hand. All of that is now noticeably better, and the local model count drops from 4 to 2, so it takes up less space.
- Upgrade notes — please read if you generate AI summaries with the "local model". The old and new models are not compatible. On upgrade Yunkan automatically removes the old model files (freeing roughly 1–2 GB of disk), and you need to go to Settings -> AI Summary and download the new model (about 650 MB). Until that download finishes, events will not get summaries — detection, recording, notifications and push are entirely unaffected. Two settings that belonged to the old model are also gone: the "description detail level" (concise / detailed) choice is no longer offered, and "model precision" is now a single tier, so your previous choice reverts to the default. If you generate summaries through a cloud or self-hosted AI service such as Ollama, nothing changes and no action is needed.
- Pick which graphics card runs AI summaries. Just like AI detection, AI summaries can now be pointed at a specific card by its model name, and the two can use different cards (for example, detection on the integrated GPU and summaries on the discrete one). Moving summaries onto a GPU is mainly about taking load off your machine — in our testing CPU usage for this part drops to roughly a quarter of what it was, with lower memory use too, which leaves more headroom when AI detection runs on the same box. NVIDIA cards are fully supported; Intel cards are currently marked "experimental" — feel free to try one, and if it can't run the model it falls back to the CPU automatically without disrupting anything.
- Drag video wall tiles to rearrange them. Grab any tile and drop it on another to swap the two, or drop it on an empty cell to move it there; 1 / 2 / 4 / 9 / 16 grids and custom layouts all behave the same. Streams keep playing throughout — no reconnect — and the new arrangement is remembered. Available in both the classic and desktop consoles.
- Redesigned desktop notifications. Event alerts are now banner cards that drop down from the notification center (with snapshot, AI summary and a countdown bar; hover to pause it and reveal "Live / Playback / Mute"), and clicking one opens the right window inside the desktop instead of navigating the whole page away. Action feedback such as "Saved" moved to the bottom center so it no longer covers the tray. Adds "Do not disturb for 1 hour" and tiered notification sounds. Labeling now enters a focus mode that silences event banners and "Saved"-style messages (failures and warnings still show), and restores as soon as you leave the labeling workbench.
- Bulk actions for "To confirm" faces. Select multiple at once and either Delete or Never show again — the former just frees up space and the same person will be grouped again if they reappear, while the latter excludes them permanently, which suits passers-by, false detections and faces on posters. Previously dozens of pending clusters had to be opened and deleted one at a time.
- Fixed "parameter error" when signing in to 115 Cloud by QR code. Scanning used to make the 115 app report "Scan failed, parameter error" so sign-in was impossible — now fixed at the root. Also fixed uploads still failing after re-scanning to sign in, which previously required restarting Yunkan; switching accounts or signing in again now takes effect automatically within 30 seconds.
- Home Assistant event images: detection boxes now actually show up, with a clearer box style. When the Home Assistant integration's image entity requested an annotated snapshot, the boxes were in fact never drawn — now fixed. The box style was reworked at the same time: L-shaped corner marks become complete rectangles (the classic surveillance look), labels are now black on white, and the default font size is larger, so small targets and very bright or very dark scenes read much better (the size stays adjustable in detection settings). A new "crop to the main target" option also lets notification previews in Home Assistant show just the important area. Yunkan's own web and mobile views are unaffected.
- Fixed occasional false alerts leaking out of ignore zones. In an ignore zone set to "only ignore selected categories", a brief flip in how a target inside the zone was classified could let a single event slip through — labeled, of all things, as exactly the category you wanted ignored. It now uses the same debounce rule as leaving the zone.
- Live view remembers your quality choice. Switch to HD once and it stays HD next time you come back (first-ever visit still defaults to standard definition to save bandwidth). Also, clicking a camera from the snapshot overview or the playback page now shows just that one camera, instead of keeping your previous multi-tile grid.
- Reorganized the camera edit screen. Ten groups of settings that used to sit in one long flat form now live behind a section list on the left (Basic / Connection / AI detection / Camera-side events / PTZ / Recording & alerts), and no section needs scrolling. This also fixes the PTZ "invert vertical / horizontal" switches being misaligned with their labels.
- Other improvements and fixes. The performance page's "inference speed" now measures only the model itself (it previously included queueing and scheduling, which made it easy to misread as "the model is slow / my GPU is weak"), uses a rolling 5-minute window so idle detectors no longer freeze into a flat line, and includes license plate recognition; migrating the database to MySQL / MariaDB now pre-scans your source data and reports, in one pass and with exact locations, anything that is valid in SQLite but guaranteed to fail on MySQL (such as camera IDs differing only in letter case, or over-length fields); fixed the desktop labeling workbench being hidden behind the top bar; further unified interface wording and terminology across all 5 languages.
- v0.9.31
New official Home Assistant integration (HACS) · object counts · Intel Arc discrete-GPU inference
- New official Home Assistant integration (HACS). Yunkan now ships an official Home Assistant custom integration you can install with one click through HACS. It brings your cameras (live view), AI detection events, person / vehicle / package / doorbell sensors, PTZ control and the recording media library natively into Home Assistant — no MQTT setup required. A guidance card with an "Open in HACS" button is now on the Automation settings page, and there is full install documentation on the website. It coexists with the existing MQTT option, so use whichever you prefer. The integration is open-source: https://github.com/mrtian2016/yunkan-hass-integration
- "Object counts" in automations + a live count badge. Automation push / webhook / MQTT / Home Assistant actions gain person_count / vehicle_count / object_count template variables (e.g. write "{person_count} people detected" in a push message). The live view now shows a category count badge (people / vehicles / animals / packages) in the top-left so you can see how many targets are on screen at a glance.
- AI inference now runs on Intel Arc discrete GPUs. If you have an Intel Arc discrete card (such as the A310 / A380 / A770), you can now point inference at the Arc GPU under Settings -> Detection -> Inference backend — previously the discrete card could only be used for video decoding and AI inference fell back to the CPU. Integrated-GPU machines are unaffected. (OpenVINO edition only.)
- v0.9.30
Pick your detection device by graphics-card name
- Choose detection devices by graphics card. AI detection's "Video decoding" and "AI inference" can now be set directly by graphics-card name (just like Plex) — no obscure technical jargon to decode. On machines with an integrated GPU plus a discrete card, or multiple cards, you can assign each independently — for example decode on the integrated GPU and infer on the discrete one; single- or no-GPU machines simply stay on "Auto" as before, unchanged.
- Fixed the device picker snapping back to "Auto" after saving. Previously, choosing a device in detection settings and saving would make the dropdown snap back to "Auto" (it was actually saved and in effect, and reopening the page showed it correctly) — now fixed, so your chosen device shows correctly right after saving.
- Fixed occasional live view / snapshots not opening in the Home Assistant integration. Previously, if the connection to Home Assistant dropped it wouldn't reconnect, leaving live and snapshot links stuck expired and unopenable — the connection now reconnects automatically, fully resolving this.
- v0.9.29Highlight
A brand-new "desktop" web console · a batch of experience improvements and fixes
- A brand-new "desktop" web console. The web admin gains a whole new desktop-style interface — just like using a computer, live view, playback, the event center, cameras, the face library, automations, the file manager and system settings are all independent windows you can freely drag, resize and minimize, plus freely-placed desktop widgets (security overview / AI detection / storage / latest events / live snapshots). The classic console is still there — switch anytime from your profile, and settings stay in sync across both.
- Theme and wallpaper follow day and night. A new "Follow system" theme goes light by day and dark by night automatically, and the desktop wallpaper switches between a matching light / dark pair along with it; you can also lock it to light or dark. Upload your own wallpaper, and it follows your account across browsers.
- A smoother event center. The event list now uses smooth infinite scrolling and loads faster — no more stutter when browsing history.
- One-click reset for training data. Self-training users can now wipe all labels and training jobs in one tap, or delete a single job, with leftover artifacts cleaned up automatically — a fresh start is much simpler.
- Stay logged in longer. The login session now lasts 30 days, so you no longer have to sign in so often.
- Fixed history logs you couldn't view or clear in the log center. Past logs are automatically compressed and archived; the web log center previously couldn't show or clear these archived logs — now fixed, so history logs view and clean up normally.
- Smarter camera adding. Adding / discovering cameras now reports richer device details (model, MAC, whether already added, audio codec, and more), and GB28181 devices are grouped more clearly by NVR.
- Polished French interface. French wording was corrected by a native reviewer for a more natural read.
- v0.9.28Highlight
Choose how detailed AI summaries are · smoother labeling & self-training · a batch of detection and notification stability fixes
- Choose the level of detail for AI summaries. If you use local AI summaries, you can now pick between "Concise" (a single sentence about the subject and what it's doing) and "Detailed" (a full paragraph-style description — the default, unchanged).
- Fixed AI summaries failing entirely with self-hosted AI services. If you generate event summaries through Ollama or a similar self-hosted / cloud AI service, some recent service updates started rejecting Yunkan's requests outright, breaking all summaries. Yunkan now adapts to these services automatically and summaries work again.
- New object list panel in the labeling workbench. Every box in the image is now listed in a panel on the right — change its class, hide it, or delete it item by item, with hover highlighting linking the list and the canvas both ways. Much easier on crowded frames. Also new: press R to skip an entire image — tap it repeatedly to clear a burst of traffic shots in seconds.
- Fixed "continue training" in self-training. Picking any previous training result as the base for further training used to fail with an error, making continued training unusable; that's fixed. Also fixed the "current model" panel showing a job number that didn't match anything in the list.
- Detection no longer slows down the longer it runs. Fixed an issue where, after many hours of continuous running, detection and notifications would lag the live picture slightly (up to about a second). Response now stays at its fastest no matter how long the system has been up.
- No more replayed notifications after refreshing the web console. Refreshing the web admin no longer re-pops old event notifications you've already seen. Also fixed the same event occasionally triggering automation rules twice or generating duplicate AI summaries.
- See local disk usage even when storing to 115 Cloud. Even with recordings backed up to 115 Cloud, event snapshots and recordings queued for upload still take up local disk space. Settings › Storage, System › Storage and the file manager now all show a local-disk card (Yunkan's usage / other system data / free space, with a breakdown including event snapshots), so you always know where your disk is going.
- v0.9.27
New weather recognition · an even sharper high-accuracy detection tier · easier playback zoom · smoother self-service updates
- Weather recognition (new). Outdoor cameras can now automatically recognize the current weather (sunny / cloudy / haze / rain / snow / thunderstorm) and update as it changes. Use it in automation rules and Home Assistant — for example, to remind you to bring in the laundry or close the windows when it starts raining. Off by default; enable it per outdoor camera as needed (indoor cameras don't need it).
- Sharper high-accuracy detection tier. The high-accuracy detection model has been retrained, so people, vehicles, pets and packages are recognized noticeably more accurately — distant and smaller objects are much less likely to be missed. Just switch to "High accuracy" on capable devices ("Standard" stays the speed-first default on regular hardware).
- If you run the NVIDIA "TensorRT" acceleration build: after switching to High accuracy, go to Settings › TensorRT and run "Accelerate" once so the new model runs at full speed — until then it keeps working normally, just a little slower. Other builds take effect instantly with nothing to do.
- Scroll-to-zoom in the playback live preview. The live preview on the web playback page now supports mouse-wheel zoom, so you can look at details more easily.
- Smoother self-service updates. The in-app self-service update flow is now more stable and reliable.
- v0.9.26
Urgent fix: uploads to 115 Cloud were failing completely — please update if you back up to 115
- Fixed: uploads to 115 Cloud were failing completely. A change on the cloud drive's side stopped earlier versions from uploading any recordings, with no warning at all — recording and playback kept working, footage just quietly stopped reaching the cloud. This release restores uploads and lets Yunkan adapt on its own if the cloud drive changes again. If you back up to 115 Cloud, please update as soon as you can.
- You now get notified when cloud backup stops. If uploads keep failing for a while, Yunkan sends you a notification telling you cloud backup has stopped and roughly where to look. This is exactly what made the problem above so painful: a stalled upload had no visible symptom, and users often only found out once the disk filled up and old recordings were cleaned away — with days already missing from the cloud.
- New "Cloud backup status" panel. Settings › 115 Cloud now shows when the last successful upload happened and how many recordings are still queued. If backup has stalled, the whole panel turns into a clear warning.
- Push notifications now follow each phone's own language. Whatever language you set the app to, that's the language your notifications arrive in — several phones in one household can each use their own. Previously every device got the single language configured on the server, so an English app could still receive Chinese notifications. The server-side notification language is now only a fallback for older app versions.
- Fixed an Android crash when switching app language. After tapping a push notification, changing the app language in Settings could crash the app — and even when it didn't, it would repeatedly re-open the event detail from that old notification. Both are fixed.
- v0.9.25Highlight
Major update: new RK3588 low-power device support · international license-plate recognition · AI that gets sharper the more you use it (label & correct + self-training) · a high-accuracy detection tier · French UI · steadier Home Assistant live view
- New support for low-power RK3588 mini-PCs (major update): Yunkan now runs on low-power Rockchip RK3588 ARM mini-PCs, using the on-board NPU to hardware-accelerate AI detection — multi-stream real-time recognition at around ten-odd watts, with no discrete graphics card needed. Quieter, far more power-efficient and compact, and ideal for an always-on home setup — works out of the box, no GPU-driver wrangling.
- International license-plate recognition (major update): plate recognition is no longer limited to Chinese plates — it now reads international Latin-character plates (Europe, North America and more), so overseas users get automatic plate capture on passing vehicles too. Chinese-plate recognition is unchanged and just as accurate (pick your plate region in the detection settings).
- Make the AI sharper over time (label, correct & self-train): a new "candidate events / labeling workbench" lets you pick out false alarms and mislabeled clips, correct them, and then fine-tune a detection model that better understands your own scenes with one tap. Training can run on your own GPU machine (installed separately, frees its VRAM automatically when done) or on on-demand cloud compute (rechargeable). The more you use and label, the better it fits your environment.
- Choose a "Standard" or "High-accuracy" detection tier: a new higher-accuracy detection model makes distant or smaller people / vehicles / objects less likely to be missed; switch to it in one tap on capable hardware (ordinary devices keep the standard tier for speed).
- New French (Français) interface: mobile, web, push notifications and voice announcements are all available in French — just pick it in the language settings.
- Steadier, self-healing Home Assistant live view: fixed the live-view address in Home Assistant occasionally "expiring and refusing to open until you restart the container" — it now renews itself ahead of time and keeps self-healing, so it stays up even when left running for a long time; the live-access key can also be revoked and reissued in one click for better security.
- Fixed some NVIDIA GPUs not using hardware decoding: on some NVIDIA-equipped devices (e.g. fnOS NAS), detection would silently fall back to CPU software decoding with higher load — now fixed, restoring GPU hardware decoding automatically.
- Event list loads more + remembers your place: the event list is no longer capped at 100 — scroll down to load more; returning to events after watching a recording keeps your previous scroll position instead of jumping to the top (mobile).
- Leaner and steadier over long runtimes: addressed slow memory growth in background detection / transcoding after running for a long time, for steadier many-camera, always-on setups.
- Multi-GPU devices can run more streams: users with multiple graphics cards can now spread cameras across several GPUs to detect in parallel and fully use the hardware.
- Also: fixed some national-standard (GB28181) LAN cameras that "connect but show no picture"; simplified fall-detection settings (removed a confusing duplicate switch); more reliable local recording archiving on multi-disk / NAS setups; and the PTZ panel on portrait small-screen phones no longer has its buttons clipped.
- v0.9.23Highlight
Deep Hikvision / Dahua / Reolink integration · the camera's own AI events straight into Yunkan · white-light & alarm automations · easier, safer disk cleanup · no missed detections when a dark room's light kicks in
- Deep integration with Hikvision / Dahua / Reolink cameras: the smart events these brands generate on the camera itself (person / vehicle / line-crossing / lens tampering) can now flow straight into Yunkan — they push and trigger automations just like Yunkan's own AI detection. You can also use the camera's built-in white-light illuminator, alarm (light + siren), continuous PTZ movement and preset positions, and two-way audio. Adding one of these cameras now offers a "Test connection / probe capabilities" button, so you can see which features were detected before you save.
- One-tap white light + alarm / light automations: on supported cameras you can toggle the white-light illuminator right from the live view and quick panel (mobile and web); automations can also use "turn on the light" and "alarm" as actions with an auto-off duration — light up and sound a siren automatically when someone shows up at night.
- Smarter camera events (on-demand face / plate recognition): when one of these cameras reports "person / vehicle", Yunkan runs face and license-plate recognition right on that frame — a recognized person is logged as its own face event (which can push and drive automations on its own), and a recognized plate is added to the matching vehicle event. Recognition runs only at the instant of the event, so it adds no ongoing load.
- Faster, clearer images from these cameras: thumbnails and event snapshots are now fetched straight from the camera — quicker, full-resolution, and no more "won't load for ages / comes back blank" on some high-definition (H.265) cameras; online-status detection is more accurate too.
- Easier and safer disk cleanup: cleanup settings are simplified to two main switches — a total recording-size cap and a whole-disk usage guard. Once the cap is reached, the oldest footage is overwritten automatically, just like a security NVR, so you no longer have to manage it by hand; this fully resolves cases where local recordings would pile up endlessly and fill the disk. And if the disk is filled by data outside of Yunkan, it will never delete your recordings by mistake — it only warns you.
- No more missed detections when someone enters a dark room and the light kicks in: fixed the two-to-three seconds when a light or IR cut switches and the whole frame changes drastically — the AI could briefly go "blind" and miss exactly the moment it should have captured.
- Less local storage used: for cameras that record only when there's an event, the buffer of "no-event" footage now keeps just 5 minutes instead of 1 hour — saving a lot of local space with many cameras / high-definition streams (the pre-event lead-up clip is unaffected).
- More reliable two-way audio: fixed the occasional "fails the first time, works the second" when talking through some Hikvision cameras.
- Push-language fix: fixed an issue where some Chinese-language users were switched to English push notifications after signing in; the push language now follows exactly what you pick under Settings → Notifications and is never changed automatically.
- Also: more stable over long runtimes (lower memory use in background detection); a better-laid-out PTZ panel on small-screen phones; fixed the two-way audio entry and archived-state display on some vendor RTSP cameras (Hikvision / Dahua); and a new icon and display for "lens tampering" events on mobile.
- v0.9.22Highlight
PTZ controls redesigned · quick voice announcements from the live view · sharper, leaner AI detection · fewer false alerts · jump from an event straight to the moment in playback · cameras no longer wrongly shown offline
- PTZ controls completely redesigned (mobile): the direction pad is now a clearer four-way control that feels more responsive; preset positions (your favorite angles) become collectible "view chips" you pick from a one-tap pop-up; and during a live preview you can "go to a preset position" in one tap to swing straight to the front door, yard or any angle you watch often.
- Quick voice announcements from the live view / quick panel: to talk through a camera you no longer have to open the two-way audio page — just speak right from the quick panel. You can choose the announcement voice, and your frequently used phrases are kept as history for one-tap reuse.
- Sharper, leaner AI detection: the detection-region planning has been upgraded so small targets in the corners or far away are less likely to be missed; you can also choose, per camera, whether AI runs on the high-resolution main stream or the bandwidth-saving sub stream — use the main stream where you need to read faces / license plates, and the sub stream elsewhere, balancing accuracy and resource use.
- More flexible ignore zones: an ignore zone can now choose how it matches a target — "only when their feet step inside" or "as soon as they touch / get close" (handy for a doorway where you want "alert no one who comes near"); we also fixed an occasional miss when a target walked right along the edge of an ignore zone.
- Fewer tripwire false alerts: fixed duplicate fake events that fired when a target paced back and forth near a tripwire ("in then out" repeatedly).
- Jumping from an event into playback now lands on the moment: tapping "view playback" on an event now jumps right to the moment it happened (instead of stopping at the latest live frame), and by default focuses just the camera involved so you can watch more closely.
- Rarely-streamed cameras no longer shown offline by mistake: cameras that neither record nor run AI detection were occasionally shown as "offline" with a thumbnail that wouldn't refresh; we now use an independent probe to confirm whether the device is reachable, and ONVIF cameras fetch their thumbnail straight from the camera, so both online status and thumbnails are more accurate.
- Your local disk no longer fills up silently (115 cloud users): event snapshots can now be auto-cleaned on their own retention days / size limit; only recordings tied to an event are uploaded to the cloud, and failed uploads retry automatically — so your local drive won't slowly fill up with useless files.
- Faster updates, less data: upgrades now download only what actually changed instead of re-downloading the whole package every time.
- Also: license-plate numbers in events are clearer to read and no longer get squeezed onto one line and truncated next to the type / camera name.
- v0.9.21Highlight
"Live + playback" in one on mobile too · a cross-day timeline on web playback · Live camera-info overlay · AI summary on event details · Migrate your database to MySQL online
- Mobile playback is now a unified "live + review" experience (Android / iOS): just like the web — opening "Today" shows the live view, and dragging the timeline back seamlessly switches to recent / historical footage; the app automatically picks the smoothest streaming method, and switching across recording segments no longer goes black. Your mute / volume choice is remembered.
- Web playback upgraded to a "monitoring-grade" experience: live by default, drag the timeline to review history, with one shared timeline across many channels; seamless transitions across recording segments with virtually no black frames; and you can save custom video-wall layouts that sync with your account.
- Playback timeline now scrolls continuously across days: the timeline is no longer cut off at a single day — keep scrolling back to older footage; switching event filters no longer clears the timeline. Jumping from an event into playback is smoother too: a loading placeholder instead of a blank wait, and on web it lands right at the moment of the event and starts playing.
- New "Show camera info" overlay in live monitoring (all clients): a single switch shows the current codec, frame rate, bitrate, resolution and transport protocol in the top-left corner, making it easy to gauge video quality and network conditions; hidden by default, turn it on as needed.
- AI summary on the event detail page (all clients): open an event's details and a one-sentence, natural-language summary of "what happened" appears below the snapshot, with clear status while it's generating or if it fails.
- Migrate your database to MySQL / MariaDB online (admin): if you're already on SQLite, you can migrate your data to your own MySQL / MariaDB from the settings page in one click (especially handy when SQLite gets corrupted on a NAS); first-time setup also gains a "Use MySQL / MariaDB" advanced option, while the default stays the zero-config SQLite. This feature is available on the free tier too.
- Tripwires can suppress duplicate object alerts: turn on the switch for a given entry/exit line (tripwire) and, when a target crosses it, only the "in / out direction" event is kept — no extra generic "person / vehicle detected" notification — cutting down on repeat alerts.
- Handier events page: today's events support pull-to-load-more with the real total count, and event cards are enlarged to 16:9 for a clearer view.
- Fixes: a false "recording failed" alert that could occasionally fire right after startup; snapshots / thumbnails that persistently failed to load on some H.265 cameras; cameras that temporarily can't fetch a new frame now show the last frame instead of going blank, with pull-to-refresh for snapshots on mobile; more accurate and consistent storage-usage figures in the admin; cleaning up recordings now also removes the matching events and snapshots, so there are no more "orphan" events that jump to a blank screen; smoother 115 cloud uploads via better API rate control; full-screen live on Android not responding to taps to show the controls; and the mute button on iOS portrait recordings being blocked by a gesture.
- v0.9.20Highlight
Smoother live detection boxes · Playback upgraded to NVR-style multi-channel sync · New File Manager · More reliable recording · Birdseye on mobile
- Smoother detection boxes on live view (all clients): detection boxes (person / vehicle / pet, etc.) in live monitoring are now drawn in real time by the app / web page, fixing the stutter and "video never shows up" issues some cameras hit before. Boxes track more steadily and no longer flicker in size, and high-priority alerts like falls are marked with a bold red box.
- Playback upgraded to "NVR-style multi-channel sync" (web): the playback page can now play, scrub and fast-forward several cameras together on one shared timeline — like a professional NVR — so one laggy stream doesn't drag down the others; the timeline clearly marks which segments have footage and which are gaps.
- New "File Manager" (admin): one page to manage recordings and event snapshots — browse by "camera × date," open a full-size image or play a segment, see how much space each camera uses, and physically delete files (clearing both local and 115 cloud files, not just the records).
- More reliable recording: hardened against an issue where some cameras (with unusual audio) could silently stop recording and produce zero-length clips — on trouble it now degrades gracefully to keep capturing video; a new "recording health monitor" flags any camera that should be recording but isn't, right on the admin dashboard.
- Birdseye overview now on mobile: Android / iOS get the Birdseye wall that stitches all cameras into a single overview; it opens in immersive landscape full-screen with pinch-to-zoom, pan and double-tap to reset, and automatically picks the smoothest streaming method.
- One-tap hide detection boxes on event snapshots (all clients): event details add a show / hide toggle for detection boxes so you can see the raw image when you want; the app and web both remember your choice.
- Volume slider + collapsible sidebar in live monitoring (web): the mute switch is now a volume slider that remembers your last setting, and the right-hand control panel can be collapsed so the video fills the full width.
- AI master switch now truly stands by to save resources: turning off "AI detection" now actually releases the GPU / models instead of idling (this switch previously had no real effect); turning it back on restores in a few seconds.
- Settings show factory-recommended values (web): numeric settings now show "(default: N)" in the hint, so you always know the baseline when tuning.
- Auto-clean stray recordings (web): a new switch lets the system automatically clean up stray recording segments that have no record, reclaiming disk space (off by default, enable as needed).
- Tapping a camera from the dashboard is smoother (web): opening live monitoring from a dashboard preview now shows the camera you tapped instead of defaulting to the first one; the playback page also drops its redundant "recording files" list (recording management lives in the File Manager now).
- Fixes: "notify when a zone has been empty for X" no longer fires several times in quick succession; cameras with detection / recording turned off are no longer wrongly shown offline; an occasional "database busy" error during upgrades; Birdseye freezing after a few seconds and being cropped in landscape; and detection boxes not showing on iOS.
- v0.9.19Highlight
Works with Apple Home · Entry/exit is now a single tripwire line · Pick which object types to detect · Custom video-wall layouts
- Works with Apple Home (HomeKit, Pro): add your cameras to the Home app on iPhone / iPad and use them like native Apple accessories — watch live, summon them with Siri, and have motion-triggered clips recorded straight to your iCloud (HomeKit Secure Video). You can also listen to camera audio and talk back through your phone's microphone, right from the Home app. Pair by scanning a QR code in the admin console; each camera has its own switch.
- Entry/exit direction is now "draw a single line": instead of drawing two zones, just draw one line across a doorway or hallway — when a target crosses it, the direction (in / out) is decided automatically, more accurately and with less setup. Automations can even trigger on a specific line. Your existing entry/exit setups are migrated automatically.
- Custom video-wall layouts for live view: beyond the built-in 1 / 4 / 9 / 16 grids and Auto, you can now build any layout — drag cameras into cells, hold to move them, drag a corner to make one camera span a bigger block. Save multiple layouts and have them sync across your devices with your account.
- Smarter automations: once you pick the cameras for a rule, the zones / tripwires below are narrowed to just those cameras, so setup is far less cluttered; disabled cameras no longer take part in automations, avoiding false triggers.
- Choose which object types to detect: you can now limit detection to the categories you care about — person, bicycle, car, motorcycle, bus, truck, bird, cat, dog (9 types) — set globally and narrowed per camera (a camera can only narrow within what's enabled globally). For example, keep just "person + car" alerts and turn off "bird" so passing birds stop flooding you. Note: turning off "person" also disables face / pose recognition, and turning off "vehicle" also disables license-plate recognition.
- Optical PTZ zoom (mobile): the pan/tilt control pad in live preview now has zoom-in / zoom-out buttons — tap for one step, hold for continuous zoom. This is true optical lens zoom, not digital cropping.
- Playback calendar marks days that have recordings: when picking a date, days with footage show a green dot, and the "last 7 days" shortcut bar is marked too — see at a glance which days have recordings instead of tapping through each one.
- Live preview remembers your mute choice (mobile): whether you last left it muted or unmuted, it stays that way next time instead of resetting every visit.
- Manually choose the hardware AI runs on: the detection settings page adds an "inference backend" selector so you can pin AI to the hardware your device actually supports (CPU / Intel integrated GPU / NVIDIA GPU / high-speed acceleration) instead of relying only on auto-detection.
- NVIDIA high-speed acceleration (TensorRT) is usable again: a bug could make the acceleration page wrongly report "no NVIDIA GPU detected," so even users with a supported GPU couldn't turn on high-speed acceleration. It's fixed now — the GPU is detected correctly, and each model flips to "accelerated" the moment it finishes compiling, with no need to manually refresh the page.
- Performance monitoring now covers Intel integrated GPUs: the performance page adds Intel iGPU stats — model, utilization, shared video memory and clock speed — shown side by side with NVIDIA GPUs, so users on Intel platforms (e.g. N100 / J4125) can see how much iGPU the AI is using. The performance page also got a polish: idle detector rows now show the camera name, making multi-camera setups easier to tell apart.
- New "upgrade cleanup" to reclaim disk: scan and remove leftovers from past upgrades — old image versions, historical database backups and more — in one tap, while always keeping the current version and the one needed for rollback, so space is freed safely.
- More flexible log cleanup: clean logs by time range (3 / 7 / 14 / 30 days / all) for only the service you're viewing, with a preview of how much will be deleted and how much space it frees.
- Privacy & security hardening: non-admin users can no longer see camera credentials such as usernames and passwords in connection details; secrets in related logs and alerts are now masked.
- Localization fixes: non-Chinese systems now default to English (both the interface and the desktop app name), with Chinese shown only on Chinese systems; offline push notifications also follow the language you selected in the app instead of always being in Chinese.
- A batch of fixes: improved detection of small targets (smaller objects like cats and dogs), fixing cases where small targets were almost undetectable in some top-down scenes; fixed a case where certain cameras' recordings could abnormally fill the disk (with automatic cleanup of historical leftovers); fixed full-screen ignore zones still missing detections right at the edge; fixed display issues such as the status still showing "SD" after locking the HD main stream, one side of the playback page not filling the height when the other panel is collapsed, and the status still showing "running" after face recognition is turned off.
- v0.9.17Highlight
Far fewer false alerts · Bird's-eye multi-camera view · Entry/exit direction · Smarter smart-home integration · Much smaller installs
- Systematic false-alert cleanup — dramatically fewer false positives: we attacked false alerts on three levels. ① Scene-change detection was rebuilt: gradual lighting changes, lights switching on, infrared night-vision toggles and lightning are now recognized and skipped automatically, and momentary blips like a bird flashing across the frame no longer create events. ② Parked cars and other stationary objects are no longer re-detected over and over: previously a parked car could trigger an alert every few minutes as the night-time image flickered — now the system remembers "it has been sitting there" and alerts at most once, resuming tracking only when the object actually moves. For the most stubborn case — a stationary car "popping into existence" during night-vision flicker — there is an extra "never moved, never alert" guard, with zero false alerts across full-night tests. ③ Rapid-fire bursts of the same event type are collapsed: a flock of birds or someone working in the yard used to produce a dozen notifications in minutes; now the same camera sends at most one notification per event type every 60 seconds (adjustable).
- New "Bird's-eye" multi-camera overview: all your cameras are composited into a single picture, so one stream lets you see the whole home — lighter on bandwidth and performance than opening each camera; available right from the web live-view page, with the layout adapting to your camera count.
- New entry/exit direction detection: draw two detection zones at a doorway and the system tells "coming in" from "going out" by the order they are crossed; events show the direction directly. Pair it with the new "notify when someone comes home" template to set up arrival alerts in one step — without duplicate notifications from regular zone alerts.
- Home Assistant integration upgraded: with MQTT connected, every camera now exposes a live stream and an event snapshot in HA — watch Yunkan live video right on your HA dashboard, and show the latest detection snapshot (with bounding boxes) as an image entity; MQTT / webhook notifications can embed snapshot links so alerts arrive with a picture.
- Much smaller installs, faster updates: the NVIDIA GPU edition shrank from ~16 GB to under 8 GB (more than half), the high-speed edition from ~24 GB to ~16 GB, and the CPU / integrated-GPU editions are noticeably smaller too — downloads, upgrades and first-time setup are all much faster. Day-to-day minor updates are also optimized to pull only a small delta instead of re-downloading gigabytes.
- One-tap disable / enable for cameras: temporarily retire a camera with one tap — live view, recording and detection all stop, and its past events are tucked away from lists; re-enable and everything comes back exactly as it was. Synced across web, Android and iOS.
- "Jump to playback" now lands right before the event: fixed event timestamps drifting late when the system was busy, and playback now starts 5 seconds early so you can see how the person or car entered the frame.
- Recording-only users can turn off "scene change" events: just want recordings without events and notifications? A new switch turns them off entirely — retention policies are unaffected.
- AI language models are now downloaded on demand: the models behind AI summaries / semantic search are no longer bundled in the install (part of the size reduction above); download them in the admin console when needed — the fastest mirror is picked automatically and offline import is supported. If you don't use semantic features, they no longer waste your disk.
- NVIDIA high-speed acceleration is less fussy: the acceleration page could show "unavailable" forever — fixed; and the dedicated acceleration engine generated on first use is now stored in the data directory, so system updates or container rebuilds no longer require regenerating it.
- A batch of web improvements: live view adds whole-wall fullscreen and an "Auto" adaptive layout (fills the screen even beyond 16 cameras); playback supports wheel / double-click / pinch zoom and pan; settings pages get "Restore defaults" (per page or all); detection-zone drawing was redone (auto-locks when finished to prevent accidental edits, Enter to complete, drag points to fine-tune); video codecs the browser can't decode (often H.265) now show a clear message instead of a silent black screen; "click to pan the camera" is now an opt-in switch, off by default, to prevent accidental PTZ moves; "copy direct link" works again over plain HTTP, with a new FLV direct-link option.
- Mobile improvements: logging in away from home is smooth now — sign-in and everyday connections automatically fall back between LAN / public addresses and http / https, no more half-minute hangs because a LAN address was configured; the home grid switches to a compact layout at 3+ columns so small cards stay readable; live view and snapshots keep the correct aspect ratio — non-16:9 cameras are no longer stretched; on the login page you can edit the address and username of a saved server directly instead of deleting and re-adding; storage page no longer shows absurd numbers for very large cloud drives; event pages add localized entry/exit direction labels.
- A batch of fixes: occasional corrupted camera snapshots; cameras without detection / recording being wrongly marked offline; GB28181 cameras having silent web live view / recordings and periodic stutter; the status panel not showing "running" when only cry detection was enabled; free-tier devices restarting repeatedly in the background and spamming logs; storage usage now measured from the recordings directory's real footprint for accuracy; fixed live-streaming temp files that could linger and slowly eat disk space over long uptimes (now cleaned automatically even after power loss / restarts); fixed background connections not being released promptly when web pages stayed open for a long time, causing slow resource growth.
- v0.9.16Highlight
Real-time AI detection restored · Landscape fullscreen playback with pinch zoom · Easier sign-in
- Fixed AI detection lagging noticeably with many cameras: with a larger camera count, AI detection could fall tens of seconds behind the live picture — events appeared in the Event Center ~30 seconds late, and "jump to playback" landed after the moment had passed. This is now fixed at the root: events appear almost instantly and playback jumps land exactly on the event. The more cameras you have, the bigger the improvement.
- Playback now supports landscape fullscreen + pinch zoom / pan (Android / iOS): rotate into fullscreen playback, pinch to zoom and drag to inspect details, with a draggable timeline, previous / next event, 15-second skip and playback speed — consistent with live view.
- Sign in with just a public address: the login page used to require a LAN address and would hang if you only had a public one — fixed; one reachable address is enough, and http-only public servers are detected automatically without fiddling with URL prefixes.
- Further fixes for black screen / no audio on some H.265 (HEVC) cameras.
- Steadier two-way talk: fixed occasional connection failures when starting push-to-talk.
- Web PTZ upgraded: Synology-NVR-style controls on web live view (wheel zoom, hold direction keys to pan), and the device-management live dialog can switch main / sub stream.
- System updates show download progress: a live progress bar during online updates — no more staring at a blank screen.
- Other improvements: removed a mobile motion-detection switch that didn't do what it claimed; eased occasional stutter caused by database contention; self-hosted updates are faster and lighter.
- v0.9.15
Interface translation completed + "ignore zone" fix
- Fixed "ignore zones" not working for birds and similar targets: with an ignore zone covering the whole frame and a target type selected (e.g. birds), birds kept triggering alerts — fixed. Ignore zones now ignore the selected target types unconditionally, regardless of detection confidence, so common nuisances like birds and swaying foliage can be silenced cleanly.
- English / Japanese / Traditional Chinese translations completed: detection-zone settings, common dialogs, camera audio capabilities, automation run history and the dashboard AI panel previously showed Chinese on non-Chinese interfaces — all translated now.
- Fixed saving edits to GB28181 cameras failing: cameras connected via the Chinese national standard protocol (some NVRs / industry cameras) could fail to save after editing — fixed.
- v0.9.14
Stability release: more reliable AI detection — fixes cameras stuck "waiting to start", adds frozen-feed self-healing
- Fixed AI detection silently stalling on "waiting to start" until toggled by hand: on some consumer cameras, detection could quietly stop while the picture stayed fine and no errors were logged — only re-toggling the detection switch revived it. Fixed, with multiple layers of self-healing: a stalled stream now reconnects automatically within seconds, no manual action needed.
- New frozen-feed ("zombie camera") detection and recovery: some cameras freeze on a single frame while still appearing online (an occasional firmware quirk of budget cameras); Yunkan used to treat them as healthy and silently detect nothing. It now recognizes the "picture stopped changing" state, reconnects once to try waking the camera, and if that fails marks it as faulty and notifies you — no more silent gaps in recording or detection.
- Fixed AI detection refusing to start on some licensed, online devices: machines with a valid license, working network and a panel showing "licensed" could still fail to start detection — fixed.
- Android pull-to-refresh polish: the spinner on the events page now disappears as soon as the list has refreshed.
- Fixed Android cold start showing empty screens (especially on mobile networks): after killing and reopening the app, live / playback / events pages could stay blank until you switched tabs — fixed; cold start now connects to the right server address and loads data immediately.
- v0.9.13Highlight
GB28181 cameras / NVRs now supported · Timelapse · One-click Home Assistant integration · Android pull-to-refresh
- GB28181 (GB/T 28181) cameras and NVRs connect with near-zero setup: Hikvision / Dahua / Uniview devices that support the Chinese national standard "upstream platform" simply register themselves once you enter Yunkan's connection details on the device; tick the channels you want under "pending devices" and you're done — no per-camera address entry, and an NVR's channels can be imported in bulk. Live view, recording, AI detection, snapshots and online status all work like any other camera.
- GB28181 PTZ and presets: pan / tilt / zoom plus saving, recalling and deleting presets.
- GB28181 voice talk: speak to GB28181 devices / two-way talk, also usable for automation voice announcements.
- GB28181 device-side playback: play footage stored on the device / NVR itself that Yunkan hasn't backed up, with the full timeline, pause, 0.5×–4× speed and seeking — identical to local playback; you can switch between GB28181 cameras right on the playback page.
- Timelapse: condense any time range of recordings into a sped-up clip for a quick review; consistent UI on Android / iOS.
- Android pull-to-refresh: home, events and automation pages refresh with a quick pull.
- Home Assistant integration with zero per-camera setup: enter your MQTT details once and every camera appears in Home Assistant automatically — online/offline status plus live switches for person / vehicle / animal / package / face / fall / baby-cry detections. Use them directly in HA automations (someone at the door → lights on; family member recognized → disarm; baby crying → phone alert). Cameras added or removed in Yunkan sync automatically with no orphaned devices.
- Smoother home/away network switching, faster app start (Android / iOS): the app now finds the right server faster when moving between home Wi-Fi and mobile data; after a cold start or a network change, live, playback, events and automation pages load on their own without tab-switching; fixed occasional "can't connect" while clearly online, and manual home/away switching not taking effect. Reconnecting on a familiar network is near-instant.
- Other improvements and fixes: clearer two-way-talk prompts; fixed face names not loading in automation forms; a background feature that failed to start now honestly reports "degraded" instead of "running". Also includes the earlier beta fixes for silent audio and non-working AI detection on some H.265 cameras.
- v0.9.13-beta.1
Beta: fix silent playback / live view / recordings on some H.265 cameras
- Fixed missing audio on some H.265 (HEVC) cameras: a few H.265 cameras had no sound in playback, web live view and recordings — fixed; audio now plays normally with video unaffected.
- v0.9.13-beta.2
Beta: fix AI detection not working on some H.265 cameras
- Fixed AI detection completely failing on some H.265 cameras: a few low-bitrate H.265 cameras produced no detection events at all (person / vehicle / package / face …) — fixed.
- v0.9.12Highlight
All-new People library · Sound restored on more cameras · Recording quotas & space management · Truer offline status
- The face library grew into a "People library" that recognizes and collects on its own: group multiple face shots under one person for steadier, more accurate recognition; as someone walks closer the system keeps collecting sharper samples, and only alerts once it's sure the face is a stranger — fewer false alarms. People is now a top-level menu with naming, merge, split, ignore and hide, synced across web / Android / iOS.
- Playback and live view finally have sound on more cameras: cameras using legacy audio codecs used to be silent in playback, web HLS and live view; audio is now converted automatically and plays everywhere.
- Recording space management: per-camera caps for "max disk usage / retention days" with oldest-first cleanup; when using 115 Cloud, deleting recordings also removes the cloud copies so they stop piling up; new "orphaned recordings" reconciliation hides entries whose files are gone from the timeline / playback / export, with one-click scan & clean. Storage settings moved into the Recordings page where they belong.
- Smoother web playback: recorded segments play back seamlessly, with new 15-second skip buttons, loading hints, a timeline that tracks your drag precisely, and cursor-anchored wheel zoom.
- Truer, friendlier offline status: the dashboard and live view reflect camera online/offline in near real time; offline cameras show a clean "offline" placeholder instead of broken images or endless "connecting", and hide the useless play button.
- Steadier offline notifications: jittery cameras no longer get misjudged as flapping on/offline and spam your phone; recovery detection is more robust too.
- Service health at a glance: a new top-bar user menu and service monitor on the web show each feature's status, errors and warnings for quick self-diagnosis.
- Better iOS live-view compatibility: fixed some H.265 (HEVC) cameras showing no picture on iOS; live view / talk now use the microphone sensibly and no longer occupy it without need.
- Notifications open faster: tapping a push now detects whether you're home or away before loading the event, with loading feedback throughout — fewer dead taps and spinners.
- Other fixes: fixed time-range exports failing to download whole segments from 115 Cloud; improved cry-detection and audio-detection stability; clearer activation / license-migration errors with the machine code shown, in four languages.
- v0.9.10Highlight
Fixes & polish: blank pages after upgrading, clearer plates, better event list and playback scrubbing
- Fixed some pages failing to open after the last upgrade: a few users saw blank "Devices", "Automations" or "Live" pages — fixed, recovers automatically after upgrading.
- License plates are easier to read: the detection-box outline no longer covers the plate itself, and plate badges look sharper.
- A better event list: thumbnails switch to a wider, picture-friendly ratio; plate / face results show right in the list — no need to open each event; unread markers are cleaner.
- Fixed iOS list not refreshing after "mark all read".
- Web playback scrubbing feels right: the red progress line follows your cursor with a time tooltip and seeks on release; wheel zoom anchors at the cursor instead of throwing you off the range you were watching.
- Small touches: removed a stray white ring on the iOS home play button, filled in a few missing translations.
- v0.9.11
Fixes recording-cleanup errors after upgrading from older versions, and 115 Cloud playback failures
- Fixed recording cleanup erroring after an upgrade: servers upgraded from older versions could hit a missing database column, making event-recording retention / cleanup fail repeatedly in the background. Fixed — the upgrade now repairs itself, no manual action needed.
- Fixed 115 Cloud recordings failing to play: with 115 Cloud storage, freshly uploaded recordings occasionally wouldn't play, and a few historical recordings existed in the cloud but weren't referenced. Fixed — new uploads play right away, and affected historical recordings are found and restored automatically.
- v0.9.9Highlight
A big one: AI summaries, smart event search, auto LAN/WAN switching, detection overlays on live view
- AI summaries: when enabled, each detection event gets a one-line natural-language description (like "a person carrying a package approaches the door"), visible right on event cards on mobile and web — understand what happened at a glance without opening pictures one by one.
- Smart event search: search past events by keyword on mobile and web, with semantic matching — searching "delivery" also finds "package" events.
- Automatic LAN/WAN address switching: configure both a LAN and a public address for the same server and the app picks whichever is reachable — LAN at home, WAN outside, no manual switching; the home page also gets a one-tap toggle. The public live-view address can be set in settings and takes effect immediately.
- Detection overlays on live view: live video can overlay recognition boxes and labels (person / vehicle / pet …), toggleable on all three platforms.
- Live playback upgraded: a new compatibility playback mode with automatic best-choice selection — lower latency and smoother streams on more networks.
- Live view & home screen redesigned on mobile — cleaner and more intuitive.
- "Add / edit camera" redesigned: card-based layout on mobile, now with the full set of options — motion sensitivity, per-type detection switches, PTZ auto-tracking, offline notifications — matching the web.
- Cycling events merged: someone riding past on a bicycle / motorbike is no longer split into a "person" and a "vehicle" notification — it's one "cyclist" event, which also gets AI summaries like everything else.
- Notifications open the event directly: tapping a push opens the event detail instead of dropping you on the timeline to hunt for it.
- Save event images to your photo library, complete with recognition boxes and labels.
- Motion-only notifications are tamer: on cameras without advanced recognition, scene changes become standalone events with a per-camera notification cooldown to stop the spam.
- Web event snapshots zoom: the Event Center gets a large viewer (wheel zoom + pan, boxes track the image); the playback sidebar can collapse; timeline and loading hints polished.
- AI summary usage panel: see processing volume, resource usage and success rate to judge whether cloud summaries are worth enabling.
- More reliable Android background staying-alive: better vendor auto-start guidance and background persistence, so Chinese-brand phones miss fewer pushes.
- More accurate plate recognition: better handling of distance and motion blur, with far fewer province-character mistakes; one vehicle now keeps one stable plate result, and plates fold into the vehicle event — one record per car.
- Unified event names: person / vehicle / pet / motion / face events now read identically on mobile and web, aligned with industry-standard naming.
- Removed "carried item" detection: backpack / handbag / luggage detection produced too many false positives for too little value — retired to cut notification noise.
- Stability fixes: occasional wrong online/offline status, continuous recordings cut short, live overlay boxes drifting, talkback failing behind reverse proxies, the system-log "cleanup" page showing blank; push title, event type and image now always agree (no more mismatched title / thumbnail / boxes); fixed the same phone piling up duplicates in "bound devices".
- v0.9.8Highlight
More accurate recognition, detection zones per target type
- More accurate recognition: a new self-trained model recognizes people, cars, bicycles, motorbikes, buses, trucks, birds, cats & dogs, and personal items (backpacks / handbags / luggage) more precisely.
- Detection / ignore zones can target specific types: e.g. "this ignore zone only ignores vehicles" while still catching passers-by — zones finally work the way you'd expect.
- More reliable recording: damaged segments self-repair, playback and seeking are steadier, and individual clips no longer fail to open.
- More resilient detection: cameras that drop offline or hiccup recover automatically — no more manual restarts to resume detection.
- Nicer zone drawing: dragging a vertex no longer adds stray points, and the per-zone-type hints are clearer.
- Fixed web playback of some cloud recordings failing with an error (403).
- v0.9.5
Fixes an Android crash when opening live view
- Fixed a crash on some Android devices when opening live view.
- Added crash-diagnostics export — attach it to bug reports so we can pinpoint issues faster.
- v0.9.6
Safer one-click upgrades: automatic rollback on failure
- One-click backend upgrades gain automatic rollback: if an upgrade goes wrong it restores the previous working version on its own — no more bricked services from an interrupted upgrade.
- The upgrade page shows real-time progress and the final outcome instead of an endless spinner.
- v0.9.7
Live view over the internet, smoother mobile playback
- Watch live video over the internet: view your cameras in real time away from home, across networks.
- Mobile playback upgrades: manually switch playback modes, pinch-zoom anywhere on the video, and a preview placeholder before the first frame instead of a black screen.
- Activating on a new machine unlocks membership features without a restart; the alert badge now clears properly once alerts are resolved.
- The website now supports international subscription payments, with domestic / international pricing tiers.
- v0.9.1
Activation applies instantly
- Entering an activation code now takes effect immediately — no more waiting or restarting the app to unlock features.
- v0.9.2
Simpler first-time setup
- First-run setup drops the database-selection step: open the app, create your admin account, and the database is ready automatically — much friendlier for home users (advanced users can still configure MySQL manually).
- v0.9.3
Faster first frame when viewing remotely
- Faster first frame when watching live video remotely / across networks: no more waiting out a connection timeout before the compatibility mode kicks in.
- The overview wall adapts to fit every camera thumbnail on one screen.
- Several fixes: toggles now save correctly when switched off, subscriptions take effect without reopening the app, and playback / download / export links work behind reverse proxies again.
- v0.9.4
Fixes automation settings not saving
- Fixed the automation settings page sometimes not responding to "Save".
- Fixed clients occasionally missing the "new version available" notice.
- v0.9.0Highlight
iOS on the App Store, plus a major round of membership and cross-platform upgrades
- The iOS app is live on the App Store with Apple subscription in-app purchase; new membership / subscription management, with status changes applying instantly.
- Live view and playback hardened end to end: safer access, and long viewing sessions auto-renew so streams don't suddenly drop.
- Camera management redesigned: new management pages, add-camera flow and live dialogs; thumbnails appear immediately after adding a camera.
- Smoother face-library enrollment.
- Web admin adds service management (restart individual modules) and log-disk cleanup.
- New automatic recording cleanup: old recordings are cleaned up past their retention period or when disk runs low.
- Member center / operations console visual overhaul, invite-code ordering, a dedicated password-change flow, and member nicknames.
- Better hardware-decoding compatibility across more cameras for steadier video.
- In-app language switching on mobile.
- Nine new platform deployment guides on the website (Synology, QNAP, PVE, Home Assistant and more).
- v0.7.9
Choose which stream recognition uses
- Smart recognition can now use the main or sub stream (auto / force sub / force main), switchable in settings with near-zero interruption.
- v0.8.0
Finer-grained performance monitoring
- Performance monitoring adds decode time and end-to-end processing time panels for a clearer view of each camera's load.
- New one-stop deployment template for Synology NAS.
- v0.7.5
Better recognition + visual detection tuning + big login & multi-server improvements
- More accurate recognition: upgraded detection model with much better night-time vehicle recognition, and first-time license-plate hits.
- Every detection parameter is tunable in the web admin: recognition thresholds and parameters no longer require config-file edits — change them online, effective immediately.
- Cleaner events: better debouncing (face-notification cooldown, suppression of duplicate boxes for the same target) — fewer "alarms when nothing moved" and notification bursts.
- Mobile multi-account / multi-server management and switching.
- Mobile login overhauled: separate address and protocol (HTTP / HTTPS) inputs, auto port completion for bare IPs, live reachability checking, and a show/hide password toggle.
- v0.7.6
PTZ preset management + device capability viewer
- PTZ control supports saving / deleting presets, with per-camera "return to preset when tracking loses the target".
- New camera "capabilities" viewer: vendor, model, firmware, PTZ and audio support at a glance.
- Four diagonal directions added to the PTZ pad for finer control.
- v0.7.8
Home Assistant add-on support
- New Home Assistant add-on install option — one-click install for HA users.
- ⚠️ This release changes the default container ports: after upgrading from an older version, update your browser bookmarks, mobile server addresses and reverse-proxy port settings.
- v0.6.1Maintenance· Release & build pipeline improvements
- v0.7.0Maintenance· Preparing for the iOS App Store
- v0.7.1
Automation zone cards redone
- The mobile automation page's zone-occupancy cards were redesigned — occupied / vacant / unknown states and times are much clearer.
- Fixed zone occupancy sometimes not refreshing on iOS.
- v0.7.2
LAN auto-discovery + important recording fixes
- The mobile login page auto-discovers Yunkan servers on your LAN — tap to fill, no typing addresses.
- Fixed deleted cameras continuing to record, and empty motion-mode clips not being cleaned up.
- v0.7.3
Mobile playback & live view, redesigned
- Playback rebuilt: tappable event filter chips, a smart-zooming timeline, 7-button playback controls, and a horizontal "today's events" thumbnail wall; iOS even gets true reverse playback.
- Live view: fullscreen / mute / quality moved onto the video overlay with only primary actions below; fullscreen is more reliable.
- v0.7.4
Fixes login failures in some setups
- Fixed browsers bouncing back to the login page after signing in ("ghost logout"), and mobile being unable to log in.
- v0.6.0
Website downloads & release automation
- The website download page now tracks the latest release automatically — QR codes and download buttons always serve the newest build.
- Fixed the website's Android app download link returning 404.
- v0.3.0
Licensing & communication hardening
- License validation and server communication hardened end to end (anti-tampering, anti-man-in-the-middle) to better protect your license from abuse.
- v0.4.0
One-click deploy script + new app icon + online WAN-access settings
- New one-click deploy script that detects your hardware and recommends the right edition.
- WAN access settings are now editable in the web admin and apply automatically — no more SSH-ing in to edit config files.
- Brand-new app icon across all platforms.
- ⚠️ Default container ports changed to avoid conflicts with existing services — see the install script when upgrading from older versions.
- v0.2.0Maintenance· Unified version management