Possibility to convert csv-file with only L*A*B* values into a ArgyllCMS ti3 file

superjudge

Printing Apprentice
Joined
Nov 25, 2025
Messages
14
Reaction score
8
Points
18
Printer Model
ET-8550
Thanks for sharing. I don't know if you followed older threads, but, I have posted that as far as I can see for the ET-8550 all glossy and lustre or semi-glossy media settings are the same except ultra glossy which has a best quality setting that I think needs its own profiles.

I don't think there is any point using more than these media types and settings for profiling any 'real' photo paper.

Ultra glossy High
Ultra glossy Best
Matte High
VFA

All my ET-8550 profiles are annotated with UGH, UGB, MH, or VFA.

The photo quality ink jet media setting might be different, but, I don't know what kind of (other) photo paper you might want to use it for.
I found something of that sort out from Epson, because I was using the US drivers, and there was no “Epson Matte” option. Turned out all matte is the same, according to Epson support.

It’s really just metadata/filename text anyway, and we can certainly streamline it.

UGH, UGB, MH, and VFA might be too lean for me, personally—I’ll forget what they mean.

I have found that I HAVE to use the sticker paper option for vinyl sticker paper, or the ink output gets muddy, even puddly. If there’s anything else you think we could add or improve in the interaction, let me know. It’s kind of fun to tinker with.
 

Epatcola

Printer Guru
Joined
Mar 21, 2020
Messages
128
Reaction score
79
Points
110
Printer Model
various
I found something of that sort out from Epson, because I was using the US drivers, and there was no “Epson Matte” option. Turned out all matte is the same, according to Epson support.
Yep, Epson use some different media names in different regions.

My comment wasn't really a suggestion for the batch file just a heads up. When you profile a non-Epson paper the question is what is the best media and quality setting to use and I posted my conclusions.

If you inspect the Epson installed ET-8550 color profiles you will see all the glossy and semi or lustre ones only differ in name and description.

I can believe that sticker paper takes less ink and that media setting is makes a difference.
 

superjudge

Printing Apprentice
Joined
Nov 25, 2025
Messages
14
Reaction score
8
Points
18
Printer Model
ET-8550
I've made a few changes. You still set the defaults for the files, including the default ti2, but if you keep multiple targets in one folder, it'll read out a list to pick from.
1765311829350.png

This will be useful for running a second pass against a target generated from a previous ICC profile.

I've also done a little bit of digging, and reduced the paper type selection.
1765312043316.png
 

Attachments

  • Drop_CSV_On_Me.zip
    2.7 KB · Views: 73

superjudge

Printing Apprentice
Joined
Nov 25, 2025
Messages
14
Reaction score
8
Points
18
Printer Model
ET-8550
I turned the whole process into a PowerShell forms gui. There's a bat launcher that detects PS5 and PS7 (PowerShell Core), and launches the correct way, including bypassing Microsoft's ever stricter execution policies.

You can make it run just like a normal looking app by:
1. putting the PS1 and bat file wherever you prefer (I put them in C:\ProgramData\CSVtoICC_gui), then
2. creating a shortcut on the desktop
3. right click the shortcut, and click Properties
4. set Run to Minimized

1765746873916.png


From there, the shortcut will open the app window, and the console will be minimized if you want to see console output (handy if some bug pops up)
1765746893234.png

When it first opens, you'll have a bunch of Xes where things must be set:
1. Input CSV (needs to be set every time you open the app)
2. Targets
3. Output folder
4. Argyll CMS bin folder

And there are metadata optional settings
1. Printer Model (will set printer brand, and will populate the dropdown list)
2. Paper gsm

Most settings will be saved to %appdata%\CSV_ICC_UI\settings.ini so you don't have to set them again.

The picture above is how it looked after I'd already set everything and re-opened.

The app _should_ be able to read CSV locale independent, but I may need locale-specific CSVs to improve detection and formatting.

PowerShell hates double precision, and tries to reduce precision as far as turning numbers to integers, which ArgyllCMS doesn't like, so any double-precision number is locked at 5 decimal places to preserve precision.

I tried to turn this into an EXE using PS2EXE, but it turned out to be pretty complex, and I could never even get the GUI form to load.
 

Attachments

  • CSVtoICC_gui.zip
    9 KB · Views: 61

superjudge

Printing Apprentice
Joined
Nov 25, 2025
Messages
14
Reaction score
8
Points
18
Printer Model
ET-8550
Oh, couple of other things, if you uncheck the box that says "only use presets" next to Paper Type, it'll show you the machine-level paper types associated with the printer, but they're VERY rudimentary, and probably not very useful. The neat part is it'll let you select your actual installed printer, resolve the paper types and list them out, but I found the actual paper types are so far from the printer preference machinations that I didn't even save the preset checkbox--it's really just to help you create the metadata and filename.

Lastly, while only the first line of ICC Long Description helps create the ICC name, all of the multiline goes into the metadata for the profile.

Had I known PS2EXE was going to be so persnickety, I probably would have opted to start a Javascript/Chromium based app (NodeJS/React/Electron) instead, but that would have taken considerably longer to make a buildable EXE pipeline just to start making an app.

I’m pretty rudimentary in my PowerShell, especially with PS Winforms, so the tradeoff would have been a lot more setup that yielded a lot more flexibility and shorter design turnarounds.
 
Last edited:

superjudge

Printing Apprentice
Joined
Nov 25, 2025
Messages
14
Reaction score
8
Points
18
Printer Model
ET-8550
I just started scanning 800 patches, and the PowerShell GUI isn't working for them--it may be introducing additional complexities to the execution of colprof.exe or limiting the memory/processor capabilities in a way that's preventing it from finishing, so I'm going to call it a failure.
The batch script continues to work where the PS fails. PowerShell is the wrong tool for this job.
 

superjudge

Printing Apprentice
Joined
Nov 25, 2025
Messages
14
Reaction score
8
Points
18
Printer Model
ET-8550
Since I had made a lot of improvements in my pipeline before finding out that the PS script was going to bail on me, I back-ported a little convenience to the batch script:
* Set the path to your Targets and Dependencies folders instead of the specific files
* The batch script can detect comma and semicolon separated values and run the right awk script
* You can type multiple lines for the -D (Display Name) for the ICC profile, and it'll craft the name based on the first line (just press enter on an empty line to stop adding to the display name)
* The generated filename copies to the clipboard so you can paste it in if you want to edit it, or just press enter to accept the generated name
* It'll make a little temp folder in the working directory and ask you to delete it if you get a good ICC profile

CSV format detection between comma+period and semicolon+comma
1766167485217.png


Right click paste to edit name
1766167646284.png
 

Attachments

  • Drop_CSV_On_Me.zip
    2.6 KB · Views: 75

Epatcola

Printer Guru
Joined
Mar 21, 2020
Messages
128
Reaction score
79
Points
110
Printer Model
various
I just started scanning 800 patches, and the PowerShell GUI isn't working for them

My guess would be a bug in your script. Did you compare generated .ti3 files from your script and the working awk script?
 

superjudge

Printing Apprentice
Joined
Nov 25, 2025
Messages
14
Reaction score
8
Points
18
Printer Model
ET-8550
My guess would be a bug in your script. Did you compare generated .ti3 files from your script and the working awk script?
Maybe? Is converting 200, 300, and 450 patches different than 800 in some way I should look for?

Fortunately, it keeps the temp folder until it successfully finishes Colprof, and the process sticks on Colprof.

My guess was Start-Process, Start-Thread, Start-Job—the CSV to TI3 is relatively easy to do in Powershell, and I got that working consistently with little trouble. But, anytime you start a cmd process, which is required to run colprof, consistency and expectation go out the window. I wanted to background the job so the UI wouldn’t freeze, and that didn’t work. The logging would suddenly dump out after the ICC was completed, in either PS5 or PS7, and it hates the way you have to pass arguments to colprof.exe—which is _relatively_ standard.

Nothing should be more complicated, but sometimes it just is. At any rate, it should be easy enough to run a CSV through the GUI until it hangs, then run the TI3 through Colprof to verify it actually works, then work my way back through why more definitively.
 
Top