Repository navigation
Releases
pyToneRIP 1.0.0.248 Beta
pyToneRIP 1.0.0.248 Beta
This prerelease adds the Epson ET-18100/L18050/L8050 family, model-specific print-stream corrections, direct-USB cancellation finalization, and photo cropping/fill controls in the optional Soft Proof preview.
Printer support
- New separate entries for Epson EcoTank ET-18100, Epson L18050 and Epson L8050, with audited modes, paper selectors, drop levels, margins and available borderless formats.
- Corrected leading/trailing pass planning for P50/T50/T60 and the applicable Stylus Photo R models, preserving model-specific origins and head offsets.
- Corrected separate head/feed geometry and edge handling for ET-14000/ET-14100, ET-8500/ET-8550/L8160/L8180, ET-18100/L18050/L8050 and F500. The P50 correction is not enabled globally.
- T3200/T5200/T7200 use their verified firmware-weave transport path; F500 has corrected mode-dependent drop depth and command geometry.
- Replaced the incompatible T5400 catalog/profile with its own 20 paper entries, 36 mode rows, 23 fixed page sizes, physical feed choices and verified paper-selector codes. Existing T5400 users may need to select paper and mode again.
USB and preview
- Improved USB discovery matching for repeated manufacturer prefixes, including P50.
- Added abort/finalization handling for direct USB cancellation on P50/T50/T60 and ET-18100/L18050/L8050, with sheet ejection on sheet jobs and no added form feed on roll jobs.
- Added four side crop handles, separate from the corner resize handles, and icon buttons with tooltips for Fit Photo to Page and Fill Photo to Page.
- Preserved crop/rotation through job updates without replacing original 16-bit image resources with preview pixels.
- Preserved Photo Placement when Soft Proof is toggled or refreshed.
The 8-bit and 16-bit processing paths remain independent. Soft Proof remains optional: use a print ICC profile or compare the built-in paper/OBA and D50-D65 viewing-light simulations. Preview controls do not modify the selected .quad printing curves.
Validation and beta scope
Sources were transferred using the curated publication script and verified by file contents. All 67 targeted USB, new-family and photo-placement checks passed. The complete runtime, Manager MSIX and installer were built and checked from the publication checkout.
Physical improvement at the start of printing was confirmed on the tested P50 setup. Stream reconstruction on other models is not a substitute for physical testing. T5400 secondary nozzle banks are not implemented. Roll/borderless operation, physical cancellation/ejection and additional printer/paper combinations still need hardware validation. The previously reported P900 configuration issue is not confirmed resolved.
Install
Windows 11 x64 build 26100 or later is required. Run pyToneRIP-Setup-1.0.0.248-Beta.exe, approve the administrator request and add your printer in the Manager.
The bootstrap EXE is not Authenticode signed. Its MSIX payload uses the development signing certificate; the installer imports the public certificate into the local machine's Trusted People store. Windows can display a publisher/SmartScreen warning.
Installer size: 68,758,557 bytes.
SHA-256:
b7259cf4e2b4c74dd46c2c59ee02947b42effe26debdf018dd5fecaff23a0475
pyToneRIP 1.0.0.244 Beta
Changes since beta 229
- Added optional Soft Proof preview with an optional print ICC profile, paper/OBA approximation, viewing-light control, thumbnails, rulers, zoom and print-job details.
- Added mouse-driven photo placement, resizing, rotation, centering, independent Fit Page/Fit Photo controls, a leading-edge indicator and the selected dithering algorithm in the information panel.
- Added settings editing, print-and-close and cancel-and-close controls in preview, with localized explanations across all 27 application languages.
- Fixed printing after preview edits, including the Windows stream
NotImplementedException, and corrected several placement, orientation, OBA and settings-dialog regressions. - Added Epson Stylus Photo P50, T50 and T60; expanded 1500W / Artisan 1430 paper, drying, roll-feed and borderless handling.
- Corrected P6000/P8000/P7000/P9000 feed, black-selection, metric-size and left-origin handling. Removed the incorrect LLK entry from Commercial Edition; Violet remains unsupported.
- Restored the complete 0.1–1.5 mm paper-thickness range for wide-format P models and 7890/9890. Clarified the Premium Glossy / Satin choice and handled distinct sheet/roll media codes.
- Fixed XP-750 A6 combinations, the green channel marker, localized toolbar sizing and preview settings layout. Expanded local support-report evidence.
The independent 8-bit and experimental 16-bit processing paths remain available.
Installation and limitations
Windows 11 x64 build 26100 or later is required. Run pyToneRIP-Setup-1.0.0.244-Beta.exe. The bootstrap EXE is not Authenticode signed and may trigger a SmartScreen/publisher warning; the included MSIX is signed with the development certificate, which the installer imports into Trusted People.
This is a prerelease. Paper/OBA simulation without a measured print ICC profile is approximate. Physical output, borderless operation and roll handling have not been qualified on every model. Commercial Edition Violet printing is not implemented. Preparation/transmission progress is not a universal confirmation of physical sheet completion. The original P900 tester configuration failure is not confirmed fixed.
Installer verification
Size: 68670303 bytes
SHA-256:
5abf8688e362691d204357b207a2cb6e5d901dbe89029299393b83c658e5d59f
The installer is built from the curated publication checkout with a complete Python/Cython runtime rebuild. Source/build inputs and the uploaded installer are verified before publication is reported complete.
pyToneRIP 1.0.0.229 Beta
This prerelease updates P900 paper-size compatibility, initial Windows settings recovery, uninstall behavior and support diagnostics. Changes are relative to public beta 224.
Changes
- P900 paper sizes: exact sheet geometry and public Windows Print Schema identities are retained. Six alternative labels now use Windows built-in form names to address duplicate entries such as Japanese Postcard / 100 x 148 mm. Saved selection IDs remain stable.
- Borderless in print dialogs: separate named choices are exposed to older applications such as Paint/Sumatra as well as modern dialogs. Selecting one also selects the standard borderless feature. Localized labels have been shortened to fit the Windows form-name limit, including 4 x 6 inch borderless.
- Initial P900 settings recovery: after both the normal user PrintTicket read and DEVMODE read fail, the Manager can read queue configuration XML through the Windows CIM provider. This third path is used only when no per-user DEVMODE exists. It does not skip validation or hide save/readback errors.
- Diagnostics aimed at causes: support reports distinguish provider-opening failures from DEVMODE conversion and PDC/PDR/PrintCapabilities failures. They retain original HRESULTs and available Windows explanations. Actual Manager/helper user hashes, session, elevation, AppContainer and COM context can be compared, and activation events retain process and correlation information. Reports remain local until the user shares them.
- Per-user removal: the uninstaller identifies the original user before elevation and targets that user's package and virtual queues. Resources still needed by another Windows user are retained without marking removal as failed.
- Start menu and setup: the uninstall entry has its own identity and sits directly in the programs list. The installer includes new welcome/header artwork matching the application.
- Runtime cleanup: unused Tcl/Tk, the remaining Pillow AVIF decoder, and optional imagecodecs HEIF/JPEG XS/Jetraw modules are omitted. Standard TIFF codecs and the experimental 16-bit path remain available. TIFF pages using an excluded codec are unsupported.
- Native renderer maintenance: expanded English explanations of the high-precision Windows XPS bridge and its conversion steps, alongside the native safety checks developed for this branch.
Known limitations
- The P900 catalog contains 21 physical sheet sizes plus 7 named borderless variants. Five sizes from the Epson driver remain omitted: 5 x 8 inch, 16:9 Wide (101.6 x 180.6 mm), 11 x 14 inch, 12 x 12 inch and 16 x 20 inch.
- The original tester-specific P900
E_FAILis not confirmed fixed. The XML recovery path and new diagnostics need validation on that PC. Updated paper labels and the borderless 4 x 6 entry need confirmation after installation. - Experimental 16-bit processing cannot restore tonal information already lost in an 8-bit source. Physical output and paper handling have not been checked on every printer model.
Installation and verification
Windows 11 x64, build 26100 or later. Run pyToneRIP-Setup-1.0.0.229-Beta.exe and follow its prompts. The bootstrap EXE is not Authenticode signed, so Windows may show an unknown-publisher or SmartScreen warning. The enclosed MSIX is signed with the project's development certificate; setup requests administrator approval to trust its public certificate.
Installer size: 67,554,885 bytes.
SHA-256:
4bce9de05b8e50f92558212d2027c0dc7e1088f6f778956a3e40e94135e26af7
pyToneRIP 1.0.0.224 Beta
pyToneRIP 1.0.0.224 Beta
This update brings the work completed since the public 219 beta. The main changes are experimental 16-bit processing, lower memory demands for large pages, and buffered USB printing.
- Experimental 16-bit processing: the new checkbox in Printer Preferences enables higher-precision tone, curve, resampling, and dithering calculations across supported models. Windows print jobs use a dedicated high-precision XPS renderer instead of the usual 8-bit converter. An 8-bit source, or an application that has already reduced its precision, cannot regain missing tones by enabling this option. Leave it off for the established 8-bit path when comparing results.
- Large-format printing: page preparation, resolution conversion, and raster processing now work with bounded strips and row caches instead of allocating an entire image at printer resolution. This reduces peak memory and temporary-file demands on A1/A0 and larger jobs. Windows input rasterization can still create a full source TIFF in 8-bit mode; sufficient free disk space is still required.
- USB delivery: a bounded buffer and a separate sender allow the RIP to prepare data while USB writes are in progress. Initial buffering helps absorb short processing pauses; it cannot guarantee continuous head movement if rendering or the connection is too slow. Cancellation and transfer diagnostics have also been improved.
- Dithering and page completion: corrected the paired-channel error-diffusion calculations and improved handling of blank areas and the page tail. These changes address uneven paired-ink output and unnecessary processing delays near the end of a page.
- Resampling controls: choose the resolution-conversion method even when RIP Layout is disabled and the source application controls placement. Added Mitchell resampling and explanations beside the resampling and dithering selectors in all 27 interface languages. The job log identifies the selected resampling method.
- Clearer progress: streaming logs distinguish raster preparation from sending data. While output is still being generated, the byte total is shown as unknown rather than presenting a misleading fixed total.
- Printer settings: improved handling of Windows PrintTickets and legacy application settings. This does not claim to resolve every Paint/Sumatra default-setting issue or the reported P900 configuration failure on one tester's system.
- Drying controls: added a drying-delay setting for supported XP-750/XP-960 modes. Availability depends on the selected model; physical results need to be checked with the actual paper and ink.
- Installation and support: removed the redundant Start menu shortcut and expanded technical diagnostics for Windows printer configuration failures. Support archives are created locally and are not automatically uploaded; review them before sharing.
- Package size: omitted the optional AVIF and JPEG XL modules from imagecodecs. TIFF with JPEG XL compression is no longer supported by the RIP input decoder. Standard TIFF compression and the 16-bit path remain available.
This is a prerelease. Automated and native rendering tests have passed, but physical output, paper handling, and print quality have not been verified on every supported printer. The reported P900 case with only eight paper-size entries remains under investigation.
Installation
Download pyToneRIP-Setup-1.0.0.224-Beta.exe and run it on Windows 11 x64, build 26100 or later. If you normally uninstall the previous beta first, continue with that procedure; keep copies of your QUAD profiles and important settings.
The setup EXE is not Authenticode signed, so Windows may show a publisher or SmartScreen warning. The included MSIX is signed with the project's development certificate, whose public certificate is imported during installation.
Installer size: 73821554 bytes
SHA-256: dfa60090734a28f9feeea9c6355eb457b48641ce84fbe395c35c9dfcc160e2bf
pyToneRIP 1.0.0.219 Beta
Rebuilt 219 installer: P900 channel correction. This replaces the earlier 219 binary. The original USB transport is retained; the new buffered USB sender is not included.
- P900 preserves both K and MK from
K,C,M,Y,LC,LM,LK,LLK,V,MKQUAD profiles, with independent physical routing and simultaneous output on glossy or matte paper. - Earlier automatic channel lists missing MK are repaired while retaining saved K assignments.
pyToneRIP 1.0.0.219 Beta
- Added streaming X2Y1 dithering with tone-dependent modulation and serpentine traversal.
- Added Coupled ED variants for C/M and C/M + LC/LM, filtered by printer ink-channel compatibility.
- Enabled live multipage output before all pages finish rendering and reduced repeated preparation work.
- Added 360/720 DPI Windows input raster options for all models.
- Added the P800 720 x 1440 photo mode and restored missing 3880 sheet formats, including 4 x 6 inches (25 sheet formats total).
- Corrected Preferences handling of legacy per-user defaults, expanded support diagnostics, and extended explicit native-command variants.
Install on Windows 11 x64, build 26100 or later. The bootstrap EXE is not Authenticode signed; Windows may show a publisher or SmartScreen warning. The contained MSIX is signed with a development certificate that the installer imports with administrator approval.
Software checks do not establish print quality or uninterrupted USB output on every supported printer. The Stylus Pro 3880 supports cut sheets, not roll feed.
Built from the publication checkout with a full Python/Cython runtime rebuild.
Installer: pyToneRIP-Setup-1.0.0.219-Beta.exe
Size: 56,995,970 bytes
SHA-256: 898cccbbecc9bb9597da77c8617bfc5e290343aa17a4b709caea0dfb1df51b59
pyToneRIP 1.0.0.215 Beta
pyToneRIP 1.0.0.215 Beta
This prerelease improves print placement, printer settings, and the Windows print pipeline.
Printing and calibration
- Corrected absolute raster placement for the Epson Stylus Photo R2880 and SureColor P900. The corrections cover sheet, roll, and borderless geometry, including native page setup and the initial paper feed.
- Refined P700/P900 resolution and weave selection so the selected quality uses the intended raster and printer coordinate grids.
- Added collation to printer capabilities and handled collated and uncollated multipage copies.
- Requested lossless PNG from the Windows GDI-to-XPS converter for all output-quality settings. This prevents that conversion stage from adding JPEG damage to RGB calibration selectors. It does not disable application color management or undo changes already made to the image.
- Removed a redundant TIFF decode during job preparation.
Printer settings and interface
- Exposed supported model controls, including paper thickness, platen gap, and roll-paper saving, with model-specific availability.
- Localized additional printer settings and values across 27 languages.
- Clarified the printer IPv4 field with explanatory text and corrected system text colors during editing, including dark themes.
Source and verification
- Generated printer capability files, PDC/PDR resources, compiled runtime files, and installers are excluded from the source tree. The build regenerates its required resources from the printer catalog.
- Historical local research generators are kept out of the publication checkout.
- The installer is built independently from this release's publication checkout, using a fresh environment created with
uv sync --lockedand a full Python/Cython runtime rebuild.
Verification
- Selected source regression suite: 657 passed, 5 skipped.
- Native command and raster-placement tests using the independent publication environment: 517 passed.
- Publication transfer and dependency checks: 14 passed.
- All 174 visible models have a physical paper feed; no Auto feed is advertised.
- Full Python/Cython runtime rebuild, signed MSIX build, independent package audit, and installer build completed in the publication checkout.
Installation and limitations
Use Windows 11 x64, build 26100 or later. Download pyToneRIP-Setup-1.0.0.215-Beta.exe below and run it with administrator approval.
The bootstrap EXE is not Authenticode signed; Windows may show a publisher or SmartScreen warning. The MSIX inside uses the development signing certificate; the installer imports its public certificate into the local machine's Trusted People store.
This is a beta. Software regression checks do not replace physical printing tests on each model. For calibration targets, preserve numeric RGB values: application profile conversions, image adjustments, and resampling can invalidate a target even when the spool images are lossless.
Installer integrity
File: pyToneRIP-Setup-1.0.0.215-Beta.exe
Size: 56,889,820 bytes
SHA-256
e779a45c1281cbc61b458a04b44dbadf9c091f4ad2e3cac2c0a6249d1ab2418b
To calculate the checksum in PowerShell:
Get-FileHash .\pyToneRIP-Setup-1.0.0.215-Beta.exe -Algorithm SHA256pyToneRIP 1.0.0.210 Beta
pyToneRIP 1.0.0.210 Beta
This release improves USB printer status reporting, connection setup, and installation.
New
- USB printer status support, including direct ink-level queries when a printer exposes the required status channel.
- The connection interface is localized in all 27 supported languages.
Improvements
- Clearer connection setup and required-field validation.
- Controls that adapt to the selected Windows theme.
- Safer printer removal.
- Improved installer upgrade behavior.
Installation
Requires Windows 11 build 26100 or later. Setup asks for administrator approval to trust the package certificate and install the Manager.
The bootstrap EXE is not Authenticode-signed, so Windows may show a publisher or SmartScreen warning. The MSIX package inside is signed with the pyToneRIP development certificate.
Installer: pyToneRIP-Setup-1.0.0.210-Beta.exe
Size: 58,063,123 bytes
SHA-256: 3FB7B3F770CF8012B9ECA74C96E4B1EDAC616741CF2BB5A205A3268C957F7BB8
pyToneRIP 1.0.0.208 Beta
What's new
- Adds Windows dark-theme support to the Manager.
- Keeps JIS B4 distinct from ISO B4.
- Updates the printer catalog with seven package entries.
- Retains USB discovery and output through a compatible Windows RAW USB queue.
Install notes
- Requires Windows 11 build 26100 or later.
- The bootstrap EXE is not Authenticode-signed; Windows SmartScreen may show a warning.
- The embedded MSIX uses the local development signing certificate. The installer requests administrator approval to trust it.
Installer
- SHA-256:
602CDA215328D963884EE11278150F9A8DEF10CD02A7A22C7DA3A5614DCC2FA2
pyToneRIP 1.0.0.203 Beta
pyToneRIP 1.0.0.203 Beta
First public beta of pyToneRIP, an open-source monochrome photo printing RIP for Epson printers.
Download and install
Download pyToneRIP-Setup-1.0.0.203-Beta.exe from the assets below and run it.
- Windows 11 x64, build 26100 or later.
- Administrator approval is required to install the application and trust its beta package certificate.
- The bootstrap installer is not Authenticode signed; Windows may show an unknown publisher or SmartScreen prompt. The bundled MSIX is signed with the project's development certificate.
- SHA256SUMS.txt contains the installer's SHA-256 checksum.
Features
- Python/Cython monochrome raster engine with custom tone curves and paper calibration.
- Eight selectable dithering algorithms: Ordered, Adaptive Hybrid, Fast, Very Fast, Blue Noise (FM), Ostromoukhov (2001), Zhou-Fang (2003), and Entropy-Constrained Zhou-Fang.
- Direct ink channel control and network printing.
- A catalog of 174 Epson printer models; physical printer testing is ongoing.
- Windows virtual printer management and Print Support App preferences.
- Shared printer profiles, 300/600 DPI raster selection, and localized UI.
- Printer support audited and improved for Epson SureColor P700/P900, EcoTank ET-8550, and Stylus Photo R2880.
- Enter opens the selected printer's settings in the Manager.
Known issues
- Paint's Page Setup dialog can crash when switching between Portrait and Landscape. Investigation is ongoing.
- ET-8550 Microweave Quality selection (Normal/High/Super) is not implemented yet. Printing uses the current RIP weave algorithm.
Feedback and support
Please report issues at https://github.com/dfoxelf/pyToneRIP/issues with the printer model, printing application, selected media/page settings, and steps to reproduce.
Developed by Alexander Eichhorn. Contact: df11@mail.de.
Financial support, paid printer setup, calibration, and sponsored development are welcome; see README.