8.6.0-beta.1
Released: August 14, 2026
New Features
Barcode
- Added decoding of the DotCode Code Set B first-position "Macro" codewords (97-100), which expand to the corresponding ISO/IEC 15434 format envelopes. Previously these symbols decoded to incorrect data.
- Added Extended Channel Interpretation (ECI) support for DotCode. Symbols that switch character sets (for example to Cyrillic or another code page) now report the correct per-segment encoding. As part of this, the default character set for DotCode is now reported as ISO 8859-1 instead of ASCII.
- Added structured append support for DotCode. The "m of n" sequencing metadata is now stripped from the barcode data and exposed via
sc_barcode_get_segment_indexandsc_barcode_get_segment_count. DotCode has no file ID, so segments are not automatically grouped by the buffered barcode session.
Performance Improvements
Barcode
- Reduced the false positive rate for EAN13, UPCA, EAN8, and UPC-E.
- Improved ITF decoding robustness, reducing the number of unscanned codes.
- Improved MicroQR decoding for rotated codes and cluttered backgrounds.
Id
- Improved PDF417 scanning on Quebec, Alaska, and Oklahoma driver’s licenses.
Behavioral Changes
Barcode
- Enabled detection and decoding of mirrored MaxiCodes by default. Previously this required enabling the symbology extension
mirrored, which has been removed. - Limited the GS1 format flag for DotCode to genuine GS1 openings (a leading digit pair without FNC1) per AIM DotCode v3.0, instead of defaulting all symbols to GS1.
- Disabled enhanced low-resolution scanning of QR codes (introduced in 8.5.0) for MatrixScan modes. Customers who need this feature should contact Scandit support.
Core
- Exposed the structured append segment fields on
Barcode(segment_index,segment_count,file_id) via the Python API, matching the C API'ssc_barcode_get_segment_index,sc_barcode_get_segment_count, andsc_barcode_get_file_id.
Bug Fixes
Barcode
- Fixed rare cases where DotCode Code Set C symbols using the date/lot macro decoded to incorrect data due to a dropped leading zero in a digit pair.
- Fixed a regression where short ITF codes with low wide/narrow ratio were not decoded.
Core
- Fixed
sc_camera_get_framehanging indefinitely when the camera is disconnected while streaming. It now returns promptly instead of blocking. - Fixed the Python camera sample (
CommandLineBarcodeScannerCameraSample.py) crashing at startup.
8.5.3
Released: August 18, 2026
Behavioral Changes
Barcode
- Disabled enhanced low-resolution scanning of QR codes (introduced in 8.5.0) for MatrixScan modes. Customers who need this feature should contact Scandit support.
8.5.2
Released: July 31, 2026
No updates for this framework in this release.
8.5.1
Released: July 20, 2026
Bug Fixes
Barcode
- Fixed the Python camera sample (
CommandLineBarcodeScannerCameraSample.py) crashing at startup.
8.5.0
Released: July 9, 2026
Performance Improvements
Barcode
- Enhanced detection of low-resolution QR codes, improving scan rates for QR codes with degraded print quality or unfavorable capture conditions. This improvement applies to QR codes of versions 1, 2, and 3 (21×21, 25×25, and 29×29 modules).
- codes is now enabled by default, improving scan rates for challenging QR codes with degraded print quality or unfavorable capture conditions. This improvement applies to QR codes of versions 1, 2, and 3 (21×21, 25×25, and 29×29 modules).
- Improved scanning of micro-QR codes affected by quiet zone violations and perspective distortion.
Core
- Improved Python API typing in
scanditsdkfor code-location and image-layout constants, allowing direct comparisons againstCODE_LOCATION_*andIMAGE_LAYOUT_*while keeping mypy checks clean.
Behavioral Changes
Barcode
- Reduced Code 128 minimum symbol count from 6 to 4; short codes (4 & 5 symbols) use stricter matching rules than longer codes. To explicitly exclude short codes, disable symbol counts 4 & 5 via
sc_symbology_settings_set_active_symbol_counts()for Code 128. Note that if you previously enabled short code scanning, more strict settings are now in effect to reduce the chance of false positives, which are more likely for very short codes. - Tightened Code 39 false positive filter thresholds by default; to restore the previous behavior, enable the
relaxedextension on Code 39 viasc_symbology_settings_set_extension_enabled(). This is only advised when external validation measures are available, for example, scanning against a known list of valid codes or when codes contain structured data.
Bug Fixes
Barcode
- Fixed PDF417 macro block file ID decoding to correctly handle numeric formatting according to the ISO/IEC 15438:2015 specification.
- Fixed rare cases of incorrect (tiny) PDF417 location outlines.
Core
- Fixed camera initialization failure on devices where buffer allocation fails for the multi-planar capture interface; the camera now enumerates supported capture modes via VIDIOC_QUERYCAP and falls back to single-plane capture if multi-planar buffer allocation fails.
8.4.1
Released: June 23, 2026
No updates for this framework in this release.
8.4.0
Released: May 18, 2026
Performance Improvements
Barcode
- Improved Code 128 scan robustness for codes with uneven blur and geometric distortions. Available on all platforms except WebAssembly without SIMD and ARM without FP16.
- Improved 1D barcode scanning speed and reduced false positives for linear symbologies.
- Further improved scanning of square DataMatrix codes with damaged or occluded timing patterns.
Behavioral Changes
Barcode
- Smart Scan Intention now continuously adapts between Single Scan and Selection modes during a scanning session when Smart Scan Selection is enabled, switching back to Single Scan when the scene no longer requires Selection mode. Previously, once Selection mode was activated it remained active for the rest of the session.
- Changed ITF scanning to reduce false positives by introducing checksum-dependent scoring. ITF has an optional checksum which is mandated to be enabled by many of the standards that use ITF as the data carrier. Starting with this release, checksum-passing ITF codes are scanned with more relaxed conditions than codes that don't pass the checksum test. This happens even if the optional mod 10 checksum isn't enabled. To disable this behavior, enable the
no_checksum_dependent_validationsymbology extension for the ITF symbology. - Removed the Abseil library dependency.
- Reduced Code 39 false positives.
Bug Fixes
Barcode
- Fixed PDF417 macro block file ID decoding to correctly handle numeric formatting according to the ISO/IEC 15438:2015 specification.
- Fixed a crash that could occur when scanning barcodes with the k-out-of-n filter enabled, if some detected barcodes were not subject to filtering.
8.3.1
Released: April 14, 2026
No updates for this framework in this release.
8.3.0
Released: March 26, 2026
Performance Improvements
Barcode
- Improved EAN8 false positive filtering in strict mode
- Fixed incorrect smart scan intention setup for the barcode scanner settings preset
SC_PRESET_SINGLE_CODE_HAND_HELD
8.2.1
Released: March 5, 2026
No updates for this framework in this release.
8.2.0
Released: February 13, 2026
New Features
Barcode
- Added PDF417 barcode generation, including compact mode (
compact), compaction selection (compactionwith values auto/text/byte/numeric), error-correction levels 0–8 (errorCorrectionLevel), and optional dimension bounds
Performance Improvements
Core
- Reduced intermittent memory spikes while configuring the barcode scanner across all capture modes
- Barcode Generator: Improved DataMatrix encoding efficiency, which depending on input data may result in smaller generated codes
Bug Fixes
Barcode
- Improved the Smart Scan Intention logic for detecting main codes + five-digit add on codes. This improves the rate of complete main + add-on code pairs.
8.1.6
Released: July 29, 2026
No updates for this framework in this release.
8.1.5
Released: June 10, 2026
No updates for this framework in this release.
8.1.4
Released: April 21, 2026
Bug Fixes
Barcode
- Fixed a crash that could occur when scanning barcodes with the k-out-of-n filter enabled, if some detected barcodes were not subject to filtering.
8.1.3
Released: March 25, 2026
No updates for this framework in this release.
8.1.2
Released: March 9, 2026
No updates for this framework in this release.
8.1.1
Released: February 5, 2026
Performance Improvements
Core
- Reduced intermittent memory spikes while configuring the barcode scanner across all capture modes
Bug Fixes
Barcode
- Fixed a typo in the ProcessFrameResult.message function of SDK Python bindings
8.1.0
Released: December 17, 2025
New Features
Barcode
- Extended Aztec codes reader to support scanning mirrored codes.
- Added support for square DataMatrix codes with one-sided damage or occlusion. This feature is only enabled in Barcode Capture and SparkScan.
Performance Improvements
Barcode
- Improved MicroQR detector tolerance to quiet zone violations
- Improved suppression of incorrect Codabar recognitions when using the “strict" symbology extension
Behavioral Changes
Barcode
- Enabling the “ocr_fallback" symbology extension with missing OCR model resources now triggers the context error 28 (“Missing Resource”)
Bug Fixes
Barcode
- Fixed a rare out-of-bound memory access crash when scanning low-resolution or blurry
EAN13/UPCAcodes at a specific distance
8.0.1
Released: January 14, 2026
Bug Fixes
Barcode
- Fixed a rare out-of-bound memory access crash when scanning low-resolution or blurry
EAN13/UPCAcodes at a specific distance
8.0.0
Released: November 4, 2025
New Features
Scandit's SDK 8.0 marks the evolution of data capture from a high-performing scanning tool into an intelligent AI-powered workflow enabler. As frontline operations face mounting pressures with more data points to capture, increasingly complex workflows to navigate, and tighter resource constraints, SDK 8.0 delivers a set of innovations that:
- Adapt its scanning settings and UI to context by analyzing the scanning environment and user intent;
- Automate the capture of any data format, barcode clustering, task handling or camera settings;
- Accelerate critical use cases to maximize ROI through intuitive, streamlined scanning workflows, using interactive AR-guidance, adaptive UI and out-of-the-box custom-branded passenger experiences.
With SDK 8.0 businesses can transform data capture from a basic function to a strategic advantage. It enables intelligent scanning that:
-
Understands not just what is being scanned, but also what you want to scan and why you’re scanning it
-
Adapts accordingly by adjusting scanning settings and/or UI, understanding what comes next and how to guide users through sophisticated tasks to ensure the highest level of productivity.
-
Updated
ScProcessFrameResultstruct definition with additional detailed error information. -
Modified
sc_barcode_scanner_apply_settingsto returnScContextStatuswith detailed error information. -
Added
sc_context_status_freeto public API to freeScContextStatusstructures holding detailed error information. -
Added
sc_process_frame_result_freeto public API to freeScProcessFrameResultstructures holding detailed error information. -
Modified
sc_parser_new_with_contextto takeScContextStatus *as the last param instead of just theScContextStatusFlag *. -
Improved and accelerated scanning for 1D symbologies at low resolution, in particular Code 128.
Bug Fixes
- Updated Minimum Android API Level to 24 (from 21).
- Unscanned default barcode locations are no longer added as a result to the scan session.
- Removed the following barcode scanner settings APIs in favor of the new max locations to process per frame APIs:
sc_barcode_scanner_settings_get_max_number_of_codes_per_frame(usesc_barcode_scanner_settings_get_max_num_locations_to_process_per_frame)sc_barcode_scanner_settings_set_max_number_of_codes_per_frame(usesc_barcode_scanner_settings_set_max_num_locations_to_process_per_frame)- Added corresponding Python bindings:
max_num_locations_to_process_per_frameproperty onBarcodeScannerSettings
- Added corresponding Python bindings:
- Added barcode scanner settings option to switch from single to multi-scan scanning. Multi-scan requires a tracking license.
sc_barcode_scanner_settings_set_multi_scan_enabledsc_barcode_scanner_settings_get_multi_scan_enabled- Python: added
BarcodeScannerSettings.multi_scan_enabledproperty
- Python: added
- Replaced Royal Mail symbology string identifier from
rm4scctoroyal-mail-4state. - Removed
sc_barcode_scanner_new_with_settingsAPI in favor of newly addedsc_barcode_scanner_newthat does not accept settings. New scanner instance must be configured bysc_barcode_scanner_apply_settingscall. - Removed
sc_context_status_flag_get_message. - Removed deprecated focus mode APIs:
- Removed
sc_barcode_scanner_settings_get_focus_modeandsc_barcode_scanner_settings_set_focus_mode. Set code direction hint toSC_CODE_DIRECTION_NONEfor devices without auto-focus. - Python API: removed
focus_modeproperty fromBarcodeScannerSettingsclass - Removed
focusModefield from barcode scanner settings JSON serialization
- Removed
- Removed deprecated constant
SC_SYMBOLOGY_RM4SCC(useSC_SYMBOLOGY_ROYAL_MAIL_4STATEinstead). - In the public API, changed all
_retainand_releasefunctions on opaque pointers to accept const pointers.
7.6.5
Find earlier versions in the release notes section of version 7