Grablo What's New

Version-by-version updates to the Grablo platform and controller.

1.29.1
The search features in this release belong to Spot, our new product. Reflex and Studio keep working exactly as before up to the point of writing the log, while span recording and the analysis speed improvements apply to every product. Spot requires device software 1.29.1 or later.

ReleaseIntroducing Spot, AI person search for CCTV

A new product that does one thing: find people in the camera footage you have already recorded. There are no rules to build and no devices to wire up. Add a camera and it starts keeping a log, which you can then search in the four ways described below.

FeatureA People tab that groups the same person together

People and faces in the log are grouped automatically by who they are. Until now, finding someone meant you had to find them first; open the People tab and everyone who passed through in that period is already grouped. You can choose whether to group by face or by appearance, so shots taken from an angle where the face is not visible are still grouped by clothing and build. Name a person card and you can search by that name from then on.

FeatureYou are asked before groups are merged

Groups that are not certain are never merged on their own. Several photos are placed side by side and you are asked whether this is the same person. Only what you confirm is merged, and a pair you reject is not raised again. A merge cannot be undone, so check the photos before you decide.

FeatureSearch in your own words

Describe the scene you are looking for and it finds the closest records. Type something like “person in a red coat” and the matching entries are gathered for you. This works for people who were never enrolled by name.

FeatureSearch by attributes

Search by top and bottom colour, age range, glasses, patterns on the top, skirts and boots, carried items such as bags, and the direction a person is facing. Colour search can be set to include nearby shades, so someone is not missed when lighting changes how the colour looks.

FeatureFind other records of the person you picked

While reviewing a record, press a person on screen and other records of that person are found for you. Searching by face needs no enrolled name, and searching by appearance takes clothing, build and carried items into account, so it works even from angles where the face cannot be seen.

FeatureRecording that lasts as long as the detection

Set the clip length to “while detected” instead of a fixed time and recording continues for as long as the condition holds, then stops when the situation ends. Use it when there is no way to know how long something will last. One camera can have one such recording at a time.

ImprovementMuch faster searching

Searching thirty days of records now takes around half a second instead of about four. Even where a very large number of records has built up, searches that took over thirty seconds finish in around three. The list of enrolled faces also opens instantly.

ImprovementNo analysis when nothing is moving

Analysis now rests while there is no movement in the frame, which lightens the load on the device. You can also set how many times per second to analyse, from once to ten times, to suit the device and the scene.

ImprovementDeleting really frees the space

Deleting a record also clears the data used to search for it, so the storage is genuinely reclaimed. The same applies when records are cleared automatically once their retention period has passed.

FixLog and camera fixes

Several issues have been corrected together: analysis failing to start on a camera that connected late, the screen appearing to freeze briefly while many records were being written, and person grouping stopping partway through.

1.29.0

FeatureVideo recording that includes the moments before an event

The camera view is now kept in a short rolling buffer, so when a condition triggers, the period before and after that moment is saved as a single video. What a single still image could never show, the run-up to the event, is now there from the seconds before it happened. The length of the pre-event and post-event segments can be set separately for each entry.

FeatureContinuous recording you start and stop yourself

New actions let you start and stop recording whenever you want, independently of any condition. This is useful when a whole work session needs to be kept, and if power is lost mid-recording, everything written up to that point still plays back.

FeaturePlay video directly from the log

A play badge now sits on the thumbnail in the log list, and pressing it plays the video right there. Photos and videos can be paged through left and right in the same viewer, so there is no need to close the window and hunt for the entry again, and a video you have already received opens instantly the next time. The playback bar marks the moment the event occurred, so you know exactly where to look.

FeatureChoose what a logging action records

A logging action can now pick exactly which cameras and which values to record. If a person is seen on camera 1, for example, video from cameras 2 and 3 can be kept as well, which means cameras that take no part in the decision can still be recorded. Each entry can have its own targets and clip lengths, and existing configurations carry over unchanged.

FeatureChoose how zone entry is decided

You can now choose how it is decided that an object has entered a zone: the point where a person or vehicle meets the ground, the centre of the object, or the percentage of overlap with the zone. Previously only the centre point was used, so with an angled camera the decision drifted away from where the subject actually stood. Using the ground contact point keeps distant subjects accurate as well. Existing projects behave exactly as before.

ImprovementTraining registrations recognised on any device

The controller now remembers which logged scenes have been registered as training samples. Open the project on another PC or another browser and the ones already registered are still marked, so the same scene never goes in twice, and progress is shared when several people review together. Delete a sample on the training screen and that scene becomes available to register again.

ImprovementAutomatic storage management

As photos and videos accumulate and free space runs low, the oldest files are cleared automatically. Log entries themselves are kept and only the files are removed, so the record of what happened and when remains intact. There is nothing to configure, and files saved to a path you specified yourself are never touched.

ImprovementSimpler recording settings

Values that are hard to judge, such as quality and buffer size, are now chosen automatically to suit the camera and the device. All you set is where to save and how long the segments before and after the event should be. On devices with memory to spare, up to five minutes of pre-event footage can be held.

FixCamera stuck on connecting

When the browser had been open for a long time, or after returning from another tab, the camera view could stay on connecting and only appear after a refresh. Cameras whose first frame takes a while to arrive could also fail to appear at all, and a stream that was already playing could fall back to connecting. All of these are fixed.

FixNetwork cameras reconnecting endlessly on some PCs

On PCs without graphics acceleration hardware and in virtual environments (Windows), a network camera could receive no frames at all and reconnect over and over. The available acceleration methods are now verified before use, and if none can be used the camera falls back to another method automatically.

FixSaved video played back completely black

Video saved by continuous recording could play back black for its entire length. This affected cameras whose frames are re-encoded before saving, such as USB webcams.

FixVideo misaligned when events came in quick succession

When events followed one another closely, videos were not saved per event: they cut each other short, and the most recent one would not play until the next event occurred. Each event now produces its own video with the full pre-event and post-event segments.

FixVideo files left behind after deleting a log entry

Deleting a log entry left its video files on disk. A related problem where only some of the photos were removed when an entry had several conditions is fixed as well.

FixAnalysis stalling on complex zones

Analysis could stall when a zone was drawn with a very large number of vertices.

FixVideo forced to full screen on iPhone and iPad

Playing a video switched automatically to full screen, which hid the event marker on the playback bar.

1.28.1

FixRegion labels drawn away from the region

On angled polygon regions the label floated in empty space far from the region it belonged to. The label is now attached to the topmost vertex of the shape, so it is immediately clear which region it names. Rectangular regions are unchanged.

FixMissing labels on regions drawn as polygons

Regions drawn as polygons were not labelled at all. With several regions in use it was impossible to tell them apart on screen; their names are now drawn as expected.

FixLabels cut off or hidden at the edges of the frame

When a region sat against the top or right edge of the frame, its label ran outside the frame and was clipped or hidden entirely. Labels are now always kept inside the frame.

ImprovementConsistent region colour

Regions were drawn in different colours depending on their shape, which made them easy to confuse with detection results. They now use a single colour regardless of shape, so detected objects and the regions you configured are easy to tell apart at a glance.

1.28.0

FeaturePolygon analysis regions

Analysis regions could previously only be rectangles. You can now draw them as polygons of any shape. For angled conveyors, walkways and similar scenes where a rectangle inevitably pulled in areas you did not want, you can now capture exactly the area you care about. This works the same way across every AI analysis.

FeatureTrain directly from recorded scenes

While reviewing recorded scenes, if you spot something the AI judged incorrectly, you can register it as a training sample right there. Collecting what was missed and what was wrongly detected and training again lets you steadily improve accuracy. Available for image classification, anomaly detection and face enrollment.

FeatureUntrained samples marked

The training screen now marks samples that were newly added and are not yet reflected in training. You can see at a glance what has come in and whether another training run is needed.

FeatureLive anomaly score display

The anomaly detection training and registration screens now show the current score together with the decision boundary. You can see how far the current scene deviates from normal while you adjust sensitivity.

FeatureChoose which variables an action records

A data logging action can now select exactly which variables to record. You no longer need a separate store for each kind of entry — everything can be kept together, which makes setup much simpler. Existing configurations continue to work unchanged.

ImprovementFaster anomaly detection

Anomaly detection now uses several processing cores together. The time needed to judge a single frame is greatly reduced, so video stays smooth even while analysis is running.

ImprovementCleaner defect highlighting

When highlighting areas judged to be anomalous, the surrounding area is now taken into account so isolated speckles are filtered out. Only the actual defect areas are shown, which makes the display much easier to read.

ImprovementSteadier text recognition results

Text recognition results used to flicker slightly from frame to frame. Several frames are now considered together and only the most reliable result is emitted, so values stay stable despite hand shake or changing lighting.

FixAccuracy of single-shot analysis results

When analyzing once on a trigger, the result from that moment could fail to reach the variable or an older value could remain. This has been corrected. When several actions share the same analysis, each result is now recorded accurately, and running alongside continuous analysis no longer interferes either way.

FixAnalysis region ignored by face recognition

Face recognition ignored the analysis region you specified and searched the whole frame. It now searches only within the region you set.

FixPreview not matching the actual analysis settings

Preview in the stopped state behaved differently from the values configured on the analyzer. Preview now runs with the same settings as the actual analysis, so what you confirm in preview carries over once you start running.

FixRecord storage, lookup and connection stability

Several record-related problems have been corrected together: records that had just been written disappearing silently, past records not being viewable while stopped, and connections failing once many records had accumulated. The anomaly detection preview freezing, and defect highlighting being drawn on a different basis from the actual decision, have also been fixed.

1.27.0

FeatureYour own image classifier (Custom Classification)

Register a few example images from the camera and the device trains its own image classifier right on the device — no separate server or online training required. It learns directly on the device and tells your chosen categories apart on its own.

FeatureCustom anomaly detection

Train it on images of the normal state and it automatically spots anything unusual or defective. It’s well suited to tasks like visual product inspection, where you need to catch “anything that differs from normal.”

FeatureLicense plate registration & management

Register and manage the vehicle plates you want to allow, right on the device. You can add, remove, and list plates with aliases, and instantly check whether a recognized plate is registered — handy for parking and access control.

FeatureLive face enrollment

Enroll faces on the spot while watching the camera view, without stopping the program. You can manage enrollment photos and preview the recognition result before enrolling.

FeatureNetwork audio input

You can now use the audio from an IP camera or network stream as the input for audio analysis, speech recognition, and AI sound analysis. Set the stream address and, if needed, a username and password (credentials).

FeatureAnalyze once on demand (single-shot analysis)

Send a signal at the moment you want and the AI runs the analysis just once, then records the result. You don’t have to leave analysis running continuously — it runs a single pass only when needed, for better efficiency.

ImprovementAI confidence display

You can now see the AI’s recognition confidence (%) live on screen.

ImprovementCustom Home Assistant display names

You can now set your own display name for items exposed to Home Assistant.

ImprovementAutomatic reconnection for network audio

If a network audio connection drops, it reconnects automatically so the sound input keeps flowing without interruption.

FixAutomatic device recovery and stability improvements

Communication and media devices now recover on their own from temporary errors. We also fixed several stability issues related to network audio and single-shot analysis.

1.26.0

FeatureAttach multiple files at once

AI chat, email, and Telegram notification actions can now attach several files at once. Previously only a single file could be sent; now you can send multiple photos, documents, and other files together. This works with fixed files as well as paths or variables that change depending on the situation.

ImprovementFaster, more reliable network camera connections

When connecting multiple network (ONVIF) cameras, they now connect at the same time instead of waiting for each one in turn, so setups with several cameras are ready much faster. The controller also remembers each camera’s address and connects directly next time, so the first connection after a restart is quicker too. Cameras that do not respond are skipped faster so they no longer hold up the rest.

FixFixed network camera connection issues

Fixed an issue where camera discovery could occasionally hang on Windows, and a rare case where a camera could appear as “not found” while several cameras were connecting at the same time. Overall connection stability has also been strengthened.

1.25.1

ImprovementMore reliable camera discovery and connection

We rebuilt how ONVIF IP cameras are discovered and connected so it follows the standard more closely. Some cameras that were found but would not connect (such as certain Dahua models) now connect reliably, and non-camera devices such as NAS units are filtered out of the search results.

FixFixed duplicate database saves

Fixed an issue where the database save action could store the same entry twice. We also improved stability when handling empty values and multi-row results.

1.25.0

FeatureNew “hold” timer option

The delay timer (PEND) now offers a “hold” option that keeps the output on for as long as the set condition stays true, letting you tailor timer behavior more precisely. The original timer was also cleaned up so it works exactly as intended.

FeatureImproved log management

You can now select and delete multiple recorded logs at once, and any captured photos or files stored with them are cleaned up together. The retention limit now also applies to manually recorded entries, and storage space is reclaimed automatically as logs are removed.

ImprovementBetter face enrollment list

The face recognition enrollment list now shows the number of samples registered for each person. Invalid characters that could corrupt the list are also no longer allowed in names.

FixAutomatic recovery for live camera video

Fixed an issue where the live camera video could get stuck while connecting in certain situations. The app now detects this state and recovers on its own.

FixMore reliable capture and storage

Improved detection of capture saves that could silently fail when storage was full, and corrected captures saved to subfolders as well as file-size calculation.

FixMore reliable video recognition

Fixed a rare error during video recognition processing for more stable operation.

1.24.0

FixCleaner detection boxes

Fixed an issue where detection boxes on the video could drag and leave a trailing afterimage between detections. Boxes now appear cleanly at a more accurate position.

ImprovementOptimized project startup

When a project starts, only the files needed by the features you actually use are downloaded. Files for unused features are skipped, so projects start faster and lighter.

FixMore reliable voice features

Fixed an issue where the voice announcement and speech recognition features could fail to load their voice models.

FixMessaging and device reliability

Fixed issues where MQTT message receiving and some Zigbee and Modbus device setups could fail to connect or run.

1.23.0

FeatureZoomed-In Region Detection

You can now select a specific area of the camera view to zoom into before recognition. Distant or small objects are detected more accurately because that area is enlarged first. This applies to all vision recognition, including objects, faces, pose, hands, color, QR codes, text, license plates, and fire detection. If no area is selected, the full screen is used as before.

ImprovementBetter Object Detection Accuracy

The object detection engine has been replaced with a new one for higher accuracy. You can choose from three levels, Fast, Balanced, and Accurate, to match your environment.

FeatureDetect Multiple Object Types at Once

A single command can now detect and filter several object types at once, such as people and cars together. The detection commands have also been simplified.

ImprovementDetection Rate Control and Steadier Display

You can now set a detection rate for each analysis item to cut unnecessary processing and reduce device load. Detection boxes also stay smooth between detections, without flickering or trailing afterimages.

ImprovementOptimized Push Notification Images

Images attached to push notifications are now automatically resized to fit the mobile notification banner, so alerts arrive faster and more reliably.

1.22.0

ImprovementSteadier AI Detection (Face, Fire & Object)

Face recognition, fire detection, and object/face detection results used to flicker on screen or switch on and off near the threshold. This release greatly reduces that. Instead of judging from a single frame, Grablo now combines several frames for a much steadier result.

Face recognition now shows a clearer three-state result — “No Face / Unknown / Registered Name” — and you can also view the list of enrolled faces.

FeatureData Folder for Saved Files

Added a dedicated data folder where result files — such as face-recognition snapshots — can be stored safely. It works the same way on Windows, macOS, and Linux, and your saved files are kept even after you update or reinstall the program.

FeatureView Images in Data Log Tables

When a data log table holds saved images, you can now view both the thumbnail and the full-screen image directly from the table.

ImprovementSharper Full-Screen Images

Images shown in full screen are now rendered to match your display resolution, so they look sharper — including on high-resolution displays such as 4K.

FixSchedule & Time Condition Fixes

Fixed several issues with scheduled execution: a repeat-count schedule that ran one time fewer than set, monthly and yearly repeat schedules that never fired, and start/end times that are the same are now correctly treated as all day (24 hours).

FixSkipping Disabled Items

When an action calls another action or control that has been turned off (disabled), Grablo now skips it smoothly instead of stopping with an error, so turning off a few items no longer halts the whole flow.

1.21.0

ImprovementFaster Startup & Lower Resource Use

When you run a project, Grablo now prepares only the settings your project actually uses. Unused cameras, analyzers, and other settings are skipped at startup, so projects with many heavy settings start faster and use less memory and resources.

1.20.0

FeatureHome Assistant Add-on & Docker Support

You can now install Grablo as a Home Assistant add-on or with Docker. When installed as a Home Assistant add-on, it connects automatically with no server address or credentials needed.

  • Home Assistant add-on: github.com/grablo/grablo-hass-addons
  • Docker: github.com/grablo/grablo-docker

FixBug Fixes & Stability Improvements

Improved camera reconnection stability and fixed several bugs, including handling of Windows folder paths that contain Korean (non-ASCII) characters.

1.19.1

ImprovementVariables in Push Notification Attachment Path

You can now set the attachment file path for push notifications using variables or expressions, not just a fixed value. For example, you can combine the temporary folder path with a file name to automatically attach a file that is created freshly on each run.

FixKorean (Non-ASCII) Paths on Windows

Fixed an issue on Windows where paths containing Korean or other non-ASCII characters in folder or file names were not found correctly. Files in such paths are now read and saved properly. (Supported on Windows 10 and later.)

1.19.0

FeatureSimpler AI Analysis Detection Zone

When using object, face, color, and anomaly detection in AI analysis actions, you can now set the detection zone directly in the main command, without a separate command. Draw a zone to analyze only that area, or leave it unset to analyze the whole screen. Your existing actions keep working as before.

FeatureTemporary Folder Path in File Actions

Added a command that returns the system’s temporary folder path in file actions. It automatically uses the correct temporary folder for each operating system on Windows, macOS, and Linux, which is handy for saving files you only need briefly.

FixCorrected AI Anomaly Detection Overlay Position

Fixed an issue where AI anomaly detection results were drawn misaligned in a corner of the screen, so they now appear accurately at the actual detected location.

FixImproved Overall Stability

Prevented several situations where the program could shut down unexpectedly due to abnormal input or external data, and strengthened the handling of variable save failures and file uploads. Normal use is unaffected.

1.18.0

FeatureAI Camera Region of Interest (ROI)

You can now choose which area of the AI Camera view to analyze or capture. Create named regions in the camera settings, then select a region in your AI analyzers and image capture actions to process only the part you want.

  • Draw and add regions in the camera settings (works regardless of screen resolution)
  • Analyze only the selected region in AI analyzers
  • Save only the selected region in image capture actions

ImprovementCleaner Image Capture

Image capture now saves the clean original camera image, without the on-screen information (such as frame rate) and analysis overlays.

FixImproved AI Video Analysis Stability

Fixed an issue where AI video analysis could stop under certain conditions, and corrected the misalignment between the analysis region and overlays when the view was rotated.

1.17.0

FeatureNeck Tilt Measurement Added to Pose Analysis

AI Camera pose analysis can now measure how far the neck is tilted to the side. Used together with the existing Spine Tilt, it lets you check posture more precisely.

FixAI Camera Analysis Command Fixes

Fixed an issue where some AI Camera analysis commands did not run.

  • Finger state detection in Hand analysis
  • Joint angle measurement in Pose analysis
  • Specific class check in Image classification
1.16.2

ImprovementMore Stable Modbus Slave Communication

When Grablo runs as a Modbus slave, communication is now handled on a dedicated background task for improved stability and responsiveness. Unexpected communication errors are cleaned up safely without affecting the rest of your setup, and unnecessary CPU usage while idle has been reduced.

FixModbus Connection Failure on Windows

Fixed an issue where connecting to a Modbus device could fail on some Windows systems. Modbus communication now connects correctly on Windows as well.

FixImproved Setting Input Cleanup

The automatic input formatting cleanup added in the previous update did not apply to some fields, such as Home Assistant addresses, camera addresses, and file paths. This has been corrected, so minor formatting differences are now tidied up across more setting fields.

1.16.1

ImprovementMore Forgiving Setting Inputs

Many input fields—addresses (URLs), file and folder paths, email, device ports, and more—now tidy up minor formatting differences automatically. Leading or trailing spaces and quotation marks that sneak in when you copy and paste are removed, and if you omit the http:// prefix in an address it is filled in for you. Email recipients can be separated by semicolons or line breaks as well as commas, and device MAC addresses can be entered without separators. This greatly reduces connection and execution failures caused by small input mistakes.

FixConsistent Home Assistant Address Handling

Fixed an issue where, in some cases, the entered Home Assistant address was not correctly applied to live entity and service lookups. Saving settings and live lookups now handle the address the same way.

1.16.0

FeatureMore Languages for Speech Recognition and Synthesis

We’ve greatly expanded the per-language models available in Speech-to-Text (STT) and Text-to-Speech (TTS). Speech recognition now supports English, Korean, Chinese, Japanese, German, Spanish, Portuguese, and Russian, plus a new multilingual model that recognizes Korean, Chinese, Japanese, English, and Cantonese all at once. Speech synthesis adds new voices for English, Chinese, German, French, Portuguese, and Hindi. You can also specify your own model if it isn’t in the list.

FeatureInput Source Selection for Speech Recognition

Speech-to-Text (STT) now lets you choose the audio input source. In addition to the microphone, you can select the sound played through the device (speaker output) as the recognition target, making it easy to transcribe audio that is currently playing.

1.15.0

FeatureLLM AI Query — New Action Type

A new action type LLM AI Query has been added. Send a query text (prompt) to LLM providers such as OpenAI, Anthropic, Google Gemini, Ollama, and OpenAI Compatible, and store the response in a variable. Image attachments (JPEG/PNG/WebP) are supported by all providers; PDFs are supported by OpenAI and Anthropic. Attached images are automatically downscaled to speed up transfers and reduce cost. Register each provider’s API key and model in [Setting] > [LLM AI] before use.

FeaturePush Notification — File Attachment

The push notification action now supports file attachments. Captured images or document files can be delivered alongside the notification.

1.14.1

FixFile Read/Write — Corrected Error Message on Windows Text Mode

Fixed an issue where reading text files on Windows could produce a misleading “File read error: No error” message. The Windows C runtime performs CRLF→LF translation in text mode, so the actual number of bytes read can be smaller than the requested size at end-of-file, which previously tripped a false-positive error path. EOF is no longer treated as an error — only genuine I/O failures are reported. The underlying file read/write behavior is unchanged.

1.14.0

FeatureLPR Quality Presets — 99.3% Korean Plate Accuracy

License Plate Recognition (LPR) now supports FAST and ACCURATE quality presets. FAST suits low-power boards like the Raspberry Pi 4, while ACCURATE targets mini PCs and amd64 environments. The Korean plate model has been replaced with a v2 model reaching 99.3% measured recognition accuracy.

FeatureData Logging — Manual Record Action

Each data logging channel’s automatic interval recording can now be toggled on or off, and a new action type (data logging) records the channel once. This enables trigger-based snapshots such as event-driven logging.

FixHome Assistant Connection — Auto-Detect and Reconnect

Fixed an issue where Grablo failed to detect a dropped Home Assistant session after an HA restart, requiring a STOP→RUN cycle to recover. An RFC 6455 PING/PONG heartbeat every 30 seconds now detects dead sessions and reconnects automatically within about 30 seconds.

1.13.2

FixBundled System Assets for Legacy Example Project Compatibility

System asset files referenced by legacy gallery example projects (v0.x~v1.2.x) via absolute paths are now bundled directly into the Linux package. Imported legacy examples now work immediately without additional downloads. Bundled assets: SoundFont (TimGM6mb.sf2), sample media (sample.mid/mp3/wav/jpg), and OPC-UA certificates (cert.der/key.der).

1.13.1

FixUnified License Plate Recognition Confidence Output Units

Fixed an issue where the License Plate Recognition (LPR) “Confidence (%)” output variable reported values in the 0–1 range, inconsistent with the label’s “%” notation. It is now corrected to the 0–100 range, matching the scale of the “Min Confidence (%)” input. The confidence field in the “Scan All” JSON output is now unified to 0–100 as well.

1.13.0

FeatureLicense Plate Recognition (LPR)

The AI camera now supports automatic license plate recognition. Two models are available — Latin scripts (Europe, US, etc.) and Korean plates. The Latin model reaches about 97.4% plate accuracy on a 66-country validation set, and the Korean model reaches about 96.5%. Multi-frame majority voting automatically corrects single-frame misreads to deliver stable results. Models are downloaded on first use and continue to work offline thereafter.

ImprovementStable Home Assistant Connection

Home Assistant initialization no longer blocks other modules from starting. The “Timeout” errors that previously appeared under heavy load (such as multiple cameras and AI features starting together) are gone — the action now shows “Connecting to server…” while the background connection completes, then resumes naturally once connected. The reconnection interval has also been shortened from 60 to 30 seconds.

1.12.2

ImprovementSelf-Recovery of AI Model Files After Power Loss

If power is cut while AI models are being downloaded or extracted, the system automatically detects damaged model files on the next start and reinstalls them. No manual folder cleanup is required, and AI features such as line crossing, face recognition, and speech recognition resume normal operation on the next RUN.

ImprovementStronger Post-Download Disk Persistence

Right after model downloads and archive extraction complete, data is now flushed to disk immediately. This significantly reduces the risk of file corruption from sudden power loss on SD-card environments such as Raspberry Pi.

1.12.1

ImprovementLower AI Camera CPU Load

AI camera analysis now uses about half the CPU compared with the previous version. Detection-box ghosting on screen is also gone, producing cleaner results.

ImprovementFaster Voice and Audio Recognition

Speech-to-text and audio classification automatically use the acceleration method best suited to each operating system and device. The same input now returns a faster response.

ImprovementFaster AI on Newer Raspberry Pi and Mac Devices

On newer chips such as Raspberry Pi 5 and Apple Silicon Mac, AI video analysis automatically uses a faster processing path. The same hardware can now analyze more frames in the same time.

FixVideo Encoding Stability

Fixed an issue where camera recording or streaming could fail on systems with the latest system video library.

1.12.0

FeaturePhoto Spoofing Protection

A new feature blocks attempts to fool face recognition with photos or videos shown on a screen. The system automatically tells real faces apart from on-screen images, providing safer use. You can turn this feature on or off to match your situation.

ImprovementSmoother Movement Detection

Movements of hands, feet, shoulders, and other body parts are now shown more smoothly. Jitter in the video is reduced, so motion looks much more natural.

ImprovementMore Reliable Person & Object Tracking

When following a person or object on video, the system now stays locked on the same target even when the image briefly becomes unclear.

FixFace Recognition Stability

Fixed several minor issues that occurred during face enrollment and recognition.

1.11.0

FeatureMulti-sample Face Enrollment

You can now enroll multiple samples per person at different angles (front, left, right) or with different expressions. Recognition uses the best match among all enrolled samples, providing stable identification across various poses and expressions.

1.10.1

FixAudio Compatibility on Debian Trixie / Newer Raspberry Pi OS

Fixed an issue where voice recognition, voice synthesis, and media playback could fail on Debian Trixie (13) or PipeWire-based Raspberry Pi OS releases. The installer now detects the user-session PipeWire audio socket automatically, so sound features work out of the box without any manual configuration.

1.10.0

ImprovementVoice Recognition Model Auto-download

The model used for voice recognition is now downloaded automatically the first time it is used instead of being bundled in the installer. The installer is smaller, so installation is faster.

ImprovementFire Detection Accuracy

Fire detection now analyzes video in finer detail, so small or distant flames are detected more reliably than before. You can also choose a precision mode for the camera analyzer (Fast / Balanced / Accurate).

FixRemote Video Display Stability

Fixed an issue where remote video could remain frozen on a black screen after a brief network interruption. The video now resumes automatically once reconnected.

FixZigbee Device Registration Stability

Closing the Zigbee device-add modal no longer stops device discovery, and devices currently being interviewed are now shown in the list so you can track progress.

1.9.0

FeatureHistoric Chart Usability Improvements

The chart time picker has been redesigned in a Grafana-style unified UI — quick presets, calendar, and absolute datetime input are all available in one place, and ◀ ▶ buttons let you shift to the previous/next interval quickly. View settings such as chart type, time range, and Y-axis are now saved per widget and restored when reopened. In addition, continuously accumulating values such as energy or production count can be displayed as per-interval deltas (hourly, daily, monthly) in bar charts.

FeaturePre-installed Raspberry Pi Image

Raspberry Pi OS images with Grablo pre-installed are now available. Just flash to an SD card and boot.

FixP2P Connection Stability

Fixed issues where the frontend could get stuck on “Connecting…” after the controller restarted, and where closing the modal after a forced update would terminate the P2P connection.

FixData Log Interval Setting

Fixed an issue where the collection interval setting of the Data Log component was ignored and fell back to the 1-second default. The interval specified in the project is now respected exactly.

1.8.4

ImprovementCamera Auto-Reconnect Stability

Improved how the camera recovers when the connection is briefly interrupted. Previously, accumulated transient errors could disable hardware-accelerated decoding or cause repeated reconnect attempts in rare cases. With this update, every reconnect starts from a clean state — the same pattern used by industrial NVR systems such as Frigate and go2rtc. For ONVIF-compatible cameras, an immediate keyframe request restores video within about 200 ms.

ImprovementZigbee Download Modal Stability

Unified the progress state between RUN cycle cloud downloads and Zigbee runtime installs into a single session. The modal now displays consistently across multiple tabs or after page refresh during download, and intermediate stage flicker has been eliminated.

1.8.3

FeatureZigbee Runtime On-Demand Download

The Zigbee runtime is now downloaded only when you actually use a Zigbee dongle. Users who don’t use Zigbee benefit from a ~30 MB smaller installer, and first-time Zigbee users get the required files automatically downloaded at the moment they need them. The download is cached for instant startup on subsequent runs. Existing Zigbee users are unaffected — the runtime continues to work as before with no extra download.

ImprovementStability Hardening

Resolved rare crashes in modules that rely on external libraries — STT (speech-to-text), TTS (text-to-speech), Modbus, OPC UA. Also fixed a crash that could occur during ONVIF camera auto-discovery on networks with unusual configurations.

ImprovementMore Stable People & Object Tracking

Reduced cases where tracking IDs would incorrectly swap when people or objects were temporarily occluded. Tracking-based features such as pedestrian line counting are now more accurate.

1.8.2

ImprovementBetter macOS Camera Compatibility

RTSP and USB cameras now display reliably on macOS. Resolves cases where some cameras showed gray/green frames or distorted colors.

FixImproved First-Time Connection for Network Cameras

When an RTSP/ONVIF camera fails to connect right after the controller starts, Grablo now automatically retries once. Connection success rate is noticeably higher.

ChangeRaspberry Pi 32-bit Support Discontinued

Starting with 1.8.2, the 32-bit Raspberry Pi OS (armhf) build is no longer distributed. Users on Raspberry Pi 3 or newer should switch to the 64-bit Raspberry Pi OS (arm64) and use the arm64 build. Users on Pi 0/Zero/Pi 2 can continue using 1.8.1.

1.8.1

ImprovementStronger Auto-Reconnect for Controller Restarts

The frontend now reconnects faster and more reliably after controller restarts, upgrades, or transient network drops. Resolves the previous “Connecting” stuck state — video resumes within 5–15 seconds once the controller is back up.

FixMulti-Camera Concurrent Streaming Stability

Fixed an issue where, when streaming two or more cameras simultaneously, only one camera would resume or others would take much longer. After minimizing the browser or returning the mobile app from the background, all cameras now resume immediately and concurrently.

ImprovementAuto-Selected Hardware Encoder/Decoder

The runtime now auto-detects the host hardware and selects the best H.264 encoder/decoder. Leverages macOS VideoToolbox, NVIDIA NVENC/NVDEC, Intel Quick Sync, Raspberry Pi BCM2711 V4L2 M2M, Rockchip MPP, and others to minimize CPU load.

FixStability and Crash Prevention

Fixed encoder init races during rapid RUN/STOP cycles, permanent stuck states caused by SRTP replay detection on quick reconnects, and various other streaming stability issues.

1.8.0

FeatureHome Assistant Integration

Connect to Home Assistant in real time. Link multiple Home Assistant servers at once, control smart-home sensors, switches, and lights directly from Grablo, or expose Grablo variables to Home Assistant.

FeatureZigbee Auto-Recovery

Automatically detects and recovers when the Zigbee dongle is unplugged and reconnected or when the Zigbee service stops unexpectedly. Normal operation resumes without user intervention.

FeatureGPU Acceleration Toggle for AI Models

Turn GPU acceleration on or off per AI analysis model. Choose CPU or GPU for each model based on your hardware situation or the performance balance with other tasks.

1.7.0

FeatureZigbee Device Support

Connect over 3,400 types of Zigbee devices — including smart lights, temperature/humidity sensors, switches, and buttons — directly to Grablo. Add devices discovered in the settings screen, then read sensor values or control them in an action.

FeatureData Logging

Automatically record variable changes over time. Configure storage limits by maximum size, record count, or retention days to safely manage long-term monitoring data.

FeatureNew AI Analysis Models

Five new AI analysis models have been added.

ImprovementSimpler AI Detection Zone Setup

Previously, detection zones and reference points had to be entered as separate X1, Y1, X2, and Y2 values. You can now draw and place them directly on the video preview by dragging. This applies to object, face, pose, hand, color, and QR/barcode detection.

1.6.2

ImprovementBetter IP Camera Video Quality

When connecting to IP cameras (ONVIF), higher quality video is now automatically selected. H.264/H.265 video is prioritized, improving both image quality and streaming efficiency.

FixImproved Latest Linux Compatibility

Fixed an issue where installation did not proceed correctly on the latest Linux environments such as Debian 13.

1.6.1

ImprovementProduct Name Change

The product name has been changed from Grablo to Grablo IoT Core.

FixImproved Linux Compatibility

Installation and runtime stability has been improved across various Linux distributions including Debian 11-13, Ubuntu 22.04/24.04, and Raspberry Pi OS.

FixLighter Installation Package

Unnecessary components have been removed, resulting in a smaller package size and faster installation.

1.6.0

FeatureONVIF/RTSP Camera Support

ONVIF-compatible network cameras (IP cameras) can now be automatically discovered and connected. Stream camera video in real time, and cameras are automatically recognized even when their IP address changes.

FeaturePush Notifications

Send push notifications to the user’s mobile app. You can freely customize the title and message, and even include variable values. For example, you can receive an alert like “Current temperature: 35°C” when the temperature exceeds a certain threshold.

ImprovementSignificantly Faster Camera Streaming

The time it takes for camera video to appear has been greatly reduced. Previously it took 5 to 10 seconds for the stream to start, but now it appears almost instantly.

1.5.2

FixImproved sleep mode stability

Fixed an intermittent crash that occurred when entering sleep mode.

ImprovementAutomatic reconnection after wake

Web browser connections are now automatically restored after waking from sleep mode.

1.5.1

FixImproved sleep/wake stability

Fixed an issue where the program would crash when the device resumed from sleep mode. Grablo now automatically resumes normal operation after waking from sleep.

  • Sleep/wake support on all platforms: Windows, macOS, and Linux
  • MQTT connections and network safely disconnected before sleep
  • Automatic reconnection and execution resume after wake

ImprovementLog optimization

Reduced repetitive warning logs to improve log file readability.

1.5.0

FeaturemacOS Support

Grablo is now available on macOS! Both Apple Silicon (M1/M2/M3/M4) and Intel Macs are supported. You can download and install it just like on other platforms.

FeatureBluetooth SPP Dynamic Channel

Bluetooth serial communication now automatically finds available channels, so you no longer need to set the channel number manually. This works on Linux, Windows, and macOS.

ImprovementEnhanced Security

MQTT connection credentials are now stored more securely with stronger protection applied.

1.4.3

ImprovementCamera Streaming Stability

WebRTC-based camera video streaming stability has been improved. Non-trickle ICE has been applied for better renegotiation reliability, and race conditions and data races in video track management have been fixed.

FixSTT Speech Recognition Stability

When speech is detected but cannot be converted to text, it is now handled as a successful completion with empty text instead of an error. This resolves unnecessary errors that occurred especially with Korean language models.

FixDuplicate Command Stability

Duplicate calls to already-running commands (recording, timer, audio analysis, etc.) are now handled gracefully without errors.

1.4.2

ReleaseGrablo for Windows

Grablo is now available on Windows PC. Simply install it with the installer and run it from the system tray. Updates are delivered automatically when new versions are released.

ImprovementNetwork Host Address Input

When entering host addresses for MQTT, Modbus TCP, HTTP, and other network modules, prefixes like http:// or trailing slashes are now handled automatically.

FixFTDI SPI Initialization Error

Fixed an issue where SPI communication initialization failed on FTDI devices.

1.4.1

FixAI Camera Stability Improvement

AI camera analysis results are now more stable. Improved stability across all AI vision features including Object Detection, Face Detection/Recognition, Pose Estimation, Hand Tracking, Color Tracking, Teachable Machine, and EdgeImpulse.

ImprovementSpeech Recognition (STT) Accuracy

The voice detection model has been upgraded to the latest version. More accurate detection of speech start and end points improves overall speech recognition accuracy.

1.4.0

ImprovementTTS/STT Language-Based Model Selection

The model selection for On Device TTS/STT settings has been improved. Previously, all language models were shown in a single list. Now, you first select a language, and only the models for that language are displayed.

1.3.0

FeatureTTS/STT Multi-Language Support

Language support for Text-to-Speech (TTS) and Speech-to-Text (STT) has been greatly expanded.

  • TTS: Korean, English, Chinese, German, French, Spanish, Portuguese, Hindi, Arabic, Russian (10 languages)
  • STT: Korean, English, Chinese, Japanese, German, Spanish, Portuguese, Russian (8 languages)

ImprovementAI/TTS/STT Model Auto Download

Models required for AI, TTS, and STT are now automatically downloaded from the cloud. The controller installation size has been significantly reduced as models are no longer bundled.

FeatureRemote Connection Data Usage

You can now check your remote connection data usage in your profile. 3GB of free monthly traffic is provided.

ImprovementFile Upload Storage Increase

The per-file upload limit has been increased to 250MB, and total storage has been increased to 1GB.

ImprovementCamera Streaming over External Networks

Camera streaming is now available when connecting from external networks.

FixWidget Bug Fixes

Fixed bugs in the Stepper and Dropdown widgets.

1.2.0

Feature5 New Dashboard Widgets

Five new widget types have been added to the dashboard.

  • Dropdown: Select a value from a predefined list of options to write to a variable.
  • Stepper: Increment or decrement numeric values step by step using +/- buttons.
  • Level Bar: Visualizes numeric values as a segmented bar indicator.
  • Image Switch: Displays different images based on the current variable value.
  • Image Button: A push button that uses custom images for ON/OFF states.

FeatureImage Upload (My Storage)

A per-account image storage has been added. Upload images to the cloud and use them in dashboard widgets. Supports gallery view, drag-and-drop upload, and file quota management.

FeatureCloud File Download

Cloud files used in the project are automatically downloaded to the controller when RUN is executed. Download progress can be monitored in real time, and file integrity is ensured through SHA-256 verification.

FeatureCommunity

A community feature has been added for sharing projects and interacting with other users. Supports project publishing, likes, bookmarks, comments, and notifications.

1.1.0

FeatureQR Code / Barcode Recognition

Recognize QR codes and barcodes in real time using the camera. Supports various code types including EAN-13, Code 128, and QR-Code.

FeatureOCR (Text Recognition)

Recognize text from camera feed in real time. Supports multiple languages with stabilization to prevent flickering of recognition results.

FeatureLine Tracking

Added line tracking for line-following robots. Supports 3 modes: dark line, light line, and custom color. Outputs line position and angle information.

FeatureHand Gesture Recognition

Added gesture recognition to hand tracking. Recognizes 33 different gestures.

FeatureEmotion Recognition & Age/Gender Estimation

Added emotion recognition and age/gender estimation to face detection. Classifies 8 emotions and estimates age and gender.

ImprovementColor Tracking Enhancement

Improved accuracy and stability of color tracking. Sensitivity settings now apply to all color modes, and tracking jitter has been reduced.

FixAI Camera Stability Improvements

Overall stability of AI camera has been improved. Fixed freezing issues during analysis, and improved stability of Speech-to-Text (STT) and Text-to-Speech (TTS).

1.0.6

FixNon-Raspberry Pi Board Compatibility

Fixed raspi-config related errors that occurred during package installation on non-Raspberry Pi boards such as BeagleBone and Jetson.

ImprovementP2P Connection Stability

Simplified IP handling logic in the P2P server for remote connections, improving connection stability.

1.0.5

FixJetson Nano Startup Reliability

Fixed an issue where the Grablo service could fail to start on Jetson Nano after installation. The service now starts reliably on first boot.

FixStability Improvements

Improved overall system stability and reliability during long-term operation.

1.0.4

FixPublic IP Detection Reliability

Fixed an issue where public IP detection could fail on first boot. The system now automatically detects network changes for more stable P2P remote connections.

FixMemory Leaks and Stability Issues

Fixed memory leaks and crash issues that could occur during long-term operation. Overall system stability has been improved.

1.0.3

FixRUN/STOP Mode Transition Issue

Fixed an issue where the controller could get stuck during RUN/STOP mode transitions. Also resolved duplicate request handling that could cause unexpected behavior when rapidly switching modes.

FixH.264 Video Streaming

Fixed H.264 video streaming issues by adding the required GStreamer plugins dependency. Video streaming now works reliably across all supported platforms.

ImprovementPublic IP Detection Reliability

Improved the reliability of public IP address detection for P2P connections. Added AWS checkip service, retry logic, and better error handling to ensure stable remote connections even in challenging network environments.

1.0.2

ImprovementDebian 13 Support

Now works reliably on the latest Debian 13 operating system. Enhanced stability for P2P connections and audio analysis features.

FixMedia Playback Issue in LXQT Environment

Fixed the issue where videos would not play in the LXQT desktop environment. Supports various display managers including SDDM and LightDM, ensuring media playback works properly across all major desktop environments such as GNOME, KDE, XFCE, and LXQT.

1.0.1

ImprovementH.264 Streaming Stability

Video streaming is now more resilient to network instability. Packet loss recovery is handled natively using standard WebRTC mechanisms, replacing the previous custom implementation for more reliable video recovery.

1.0.0
Important: This update introduces a new connection protocol that is not backward compatible. Please update your device to Grablo 1.0.0. Your existing projects will continue to work without any changes.

FeatureImproved Device Connection & Auto Updates

We’ve redesigned how devices connect. No more typing IP addresses manually.

  • Auto-discovery for devices on your local network
  • Connect to remote devices using device ID
  • Devices are saved to your account
  • Automatic update notifications and one-click updates

FeaturePer-Project Board Configuration

Select your target board when creating a project. The editor automatically adapts to your board—displaying visual pin maps, filtering compatible devices, scanning I2C devices, and enabling ADC/DAC/PWM channel selection.

Supported Boards

  • Raspberry Pi Zero / 1 / 2 / 3 / 4 / 5
  • Jetson Nano, Orin Nano, AGX Orin
  • Radxa Rock 5A / 5B / 5C, Zero 3W
  • BeagleBone Black / Green, PocketBeagle 1 / 2

FeatureBlockly Editor Enhancements

Create and edit variables directly in the Blockly editor.

FeatureCopy & Paste Support

Copy logic blocks or dashboard widgets and paste them anywhere in your project.

FeatureDeletion Protection

Variables and devices in use are protected from accidental deletion.

0.23.0

FeatureAI Analyzer – Face Recognition Database Setting

A new database name input field has been added to [Settings] → [AI Analyzer] for face recognition. This allows you to create and manage multiple face databases for different use cases.

  • Specify a custom database name to store and look up recognized faces
  • Create separate databases for different projects or environments
  • Database is automatically created if the specified name doesn’t exist
0.22.0

FeatureAI Analysis – Custom Model Support

AI Analysis now supports custom models trained with Teachable Machine and Edge Impulse. You can perform image classification, object detection, and anomaly detection using your own trained models.

Teachable Machine Classification

  • Supports image classification models trained with Google Teachable Machine
  • Get classification result, check specific class, and retrieve all results

Edge Impulse Classification

  • Supports image/audio classification models trained with Edge Impulse
  • Get classification result, check specific class, anomaly detection status and score

Edge Impulse Object Detection

  • Supports object detection models trained with Edge Impulse
  • Detect specific/any objects, count objects, retrieve object info (position, size)
  • Includes anomaly detection result checking

Edge Impulse Visual Anomaly

  • Supports Edge Impulse Visual Anomaly Detection models
  • Get mean/max anomaly scores, check anomaly status, retrieve grid info

ChangeAudio Analysis – Audio Source Setting Location

Audio source selection for Audio Analysis has been moved from [Action] → [Audio Analysis] to [Settings] → [AI Analyzer].

  • Before: Select audio source (Microphone/Speaker) in [Action] → [Audio Analysis]
  • After: Configure audio source in [Settings] → [AI Analyzer] when media type is set to “Audio”
0.21.0
Release Date: December 25, 2025

FeatureAudio Analysis

Audio analysis has been separated into a standalone action. You can now use audio analysis with any audio input/output device, not just media playback or audio recording.

  • Before: Audio analysis was only available within Media Playback and Audio Recording actions
  • After: Dedicated Audio Analysis action can be applied to any audio source

FeatureAI Analysis

AI analysis has been separated from the Camera action into a standalone action. This allows for more flexible AI vision pipeline configurations.

  • The former “AI Camera” action has been renamed to “Camera”
  • AI analysis features (Object Detection, Face Detection, Pose Estimation, Hand Tracking, Color Tracking, Face Recognition) are now configured in the dedicated AI Analysis action
  • New: Face Recognition feature has been added. You can enroll and recognize faces to identify individuals

FeatureAction Group Range Repeat

A new “By Range” repeat option has been added to Action Groups. Similar to a for-loop in programming, you can specify start value, end value, and step value for repeated execution.

  • Index Variable: Variable to store the current iteration index
  • From: Starting value
  • To: Ending value
  • Step: Increment value for each iteration
0.9.1
Grablo is now in beta.