Commit Graph

137 Commits (master)

Author SHA1 Message Date
Solomon Peachy 4df4b44224 hiti: Revamp heat table loading & parsing
* Get rid of modelname prefix on filenames
 * Move from table-based to algorithmic-based filename derivation
 * Load and parse heat tables at job load time
 * Construct final SHPTC at job load time

NOTE:  the 'p' quality/mode tables are not handled.
2023-11-29 20:57:08 -05:00
Solomon Peachy e03bb3b8ae hiti: Move heattable structure from ctx into job structure.
First step in pushing heattable loading into job parsing
2023-11-29 20:57:00 -05:00
Solomon Peachy b55d721630 hiti: Revamp the color correction table handling
* Remove static list of allowed filenames in favor of an
   algorithmic approach, assembling filename based on
   model, media type+version, print mode, color mode, etc.
 * Lose the printer name prefix on correciton table files
 * Add in the CL and I correction tables
2023-11-29 20:57:00 -05:00
Solomon Peachy 68adbc63d8 hiti: Properly assemble SHPTC from the contents of heattable_v2 files!
Currently it's treated as a soft failure.

Additionally, only send EFD_CHS if we fail to send a SHPTC over!

*** Note: Completely untested! ***
2023-11-29 20:57:00 -05:00
Solomon Peachy 55577028b3 hiti: Specify a default ribbon type for test modes 2023-11-29 20:55:46 -05:00
Solomon Peachy ff2a237d2f hiti: More updates. 2023-11-27 22:13:07 -05:00
Solomon Peachy 7d8a8d428b hiti: P520/P525 now uses the correct RI/RI1 data tables.
Also learned how to decode the rest of ERDC_RS

Coming in the near future:

 * Proper assembling of SHPTC!
 * Revamp of how we select the data files
2023-11-27 21:58:55 -05:00
Solomon Peachy e2dd3e8217 misc: Another round of CONSTification 2023-11-01 21:17:43 -04:00
Solomon Peachy f1c2004666 misc: misc fixes to make cppcheck & clang-analyze happier
Most of these are CONSTifying arguments, but there are some memory leaks too
2023-11-01 16:16:26 -04:00
Solomon Peachy aada0892b0 mistu9820: Initial support for the CP9820DW-AG model.
_Probably_ won't print yet.
2023-10-02 09:31:35 -04:00
Solomon Peachy 1a099eff42 hiti: properly byteswap hettable_v2 version strings 2023-06-20 20:09:38 -04:00
Solomon Peachy c3dbf63115 hiti: Fix a typo in the P525L firmware check 2023-06-17 10:06:41 -04:00
Solomon Peachy a30c8dbec1 hiti: Send the correct command ID in the cmd_8010 code path 2023-06-17 09:56:07 -04:00
Solomon Peachy c9ccf11cc1 hiti: Figured out matte mode on the P461. 2023-06-11 16:03:19 -04:00
Solomon Peachy dd64a8f78f hiti: Initial support for P320 series. Just detection and tables.
This is where things will stand until I get one in my hands.
2023-06-05 22:26:09 -04:00
Solomon Peachy 7a6c82828c hiti: Beginnings of support for the HiTi P310 series
Just basic detection and data tables for now

And replace some magic numbers with proper names
2023-06-04 00:03:01 -04:00
Solomon Peachy ccf7fd1d93 hiti: Correct errors in the data data table filenames
Most of these are filling in gaps and changing 'default' to only apply
if it's a higher media version number than we know about.
2023-05-20 20:18:40 -04:00
Solomon Peachy f7e14cb73b hiti: Add in all known heattable files for the P520/P525 series
They'll be ignored for the most part, but that will change.
2023-05-04 15:48:15 -04:00
Solomon Peachy e34bdd143a hiti: Log the detected heattable version
This comes on the heels of adding a _lot_ of heattable decoding stuff

Getting incrementally closer...
2023-05-04 12:26:37 -04:00
Solomon Peachy f82889068d hiti: Fix error in turning on Matte mode. 2023-05-03 16:01:07 -04:00
Solomon Peachy e475160089 hiti: Update error code list and other documentation 2023-05-02 10:32:13 -04:00
Solomon Peachy 63ae3242dd hiti: Allow media version to be overridden by the printjob 2023-04-24 14:47:03 -04:00
Solomon Peachy b3258299c4 hiti: hardcode ribbonvendor code
It's what HiTi's drivers do.  the sub-verison code is a PPD option!
2023-04-23 17:58:35 -04:00
Solomon Peachy 490647876b hiti: Document a few more commands seen in the FW update process 2023-04-23 11:49:46 -04:00
Solomon Peachy 42fc2bb2bd hiti: Add support for the P461 'Prinhome'
There are still some unknowns:

 * Matte mode
 * Ribbon vendor/subtype (needed for color correction / heat table selection)
2023-04-22 11:51:22 -04:00
Solomon Peachy 3f30912f96 hiti: Document a couple more things, and fix the log messages for media type 2023-04-16 23:33:20 -04:00
Solomon Peachy 38bcf551b0 hiti: Add in correction table and heat table for P461.
We need to figure out where the ribbon vendor stuff comes from still.

Otherwise it's code complete, I think?
2023-04-16 20:48:51 -04:00
Solomon Peachy 62ae9f74f3 hiti: Implement (and decode) CMD_RDC_ROC 2023-04-14 14:06:08 -04:00
Solomon Peachy 2f5e58eab9 hiti: Add in some more heat tables for the P51x, P52x, and P72x series 2023-04-14 12:18:54 -04:00
Solomon Peachy 20bf68fc0e hiti: Updates along the way to get P461 working 2023-04-14 10:07:59 -04:00
Solomon Peachy d9147f6cac hiti: doc update 2023-04-04 12:01:16 -04:00
Solomon Peachy 79c555e195 hiti: Beginning of P461 support. Doesn't work yet! 2023-03-31 19:03:30 -04:00
Solomon Peachy 88dbbf5014 hiti: Documentation & TODO update 2023-03-20 11:46:54 -04:00
Solomon Peachy c2bf60c6eb hiti: Add P525L to usb blacklist and improve debug output slightly 2023-03-17 15:00:19 -04:00
Solomon Peachy 7c0f42ac1e hiti: Update copyright year. 2023-03-17 13:16:05 -04:00
Solomon Peachy ee1a6056f8 hiti: P525 has some differences with the P520
* Different firmware version strings
 * Use 'ri1' data files instead of 'ri'
 * CMD_EFD_CHS doesn't work
2023-03-17 13:10:48 -04:00
Solomon Peachy 7fa4515e0d hiti: P52x firmware is up to v1.28 now 2023-03-16 18:22:08 -04:00
Solomon Peachy a2ea304f5d hiti: Fix heattable_v2 read on the P52x series (nothing defined yet) 2023-03-16 18:08:47 -04:00
Solomon Peachy 247d294350 hiti: Increase buffer size for CMD_RDC_RS
P525's message is 14 bytes longer than the rest.  Details unknown.
2023-03-12 09:55:55 -04:00
Solomon Peachy 14d3709158 hiti: Correct the USB PID of the P525L 2023-03-11 13:15:13 -05:00
Solomon Peachy 7e5d0b7ed1 Revert "hiti: Fix data length specified in CMD_SEPD"
This reverts commit 49a606d5a8.

I made the change in the wrong place, and it turns out it was fine.
2022-10-29 11:20:16 -04:00
Solomon Peachy 49a606d5a8 hiti: Fix data length specified in CMD_SEPD
It should be buffer_len + 8, not + 5.  For some reason the P520L (and
supposedly the P510L) worked just fine but apparently the P510S doesn't.

Fingers crossed that this is the main problem.
2022-10-29 10:53:25 -04:00
Solomon Peachy f753005e7e hiti: set HITI_NODATA in the environment to disable data table sends
2022-10-29 10:27:51 -04:00
Solomon Peachy 7fc8ba7088 hiti: Major improvements in parsing v2 heattable data files.
* Properly decode length
 * Handle secondary/embedded tables
 * Document the known field types
2022-10-28 01:33:25 -04:00
Solomon Peachy e5df30205c hiti: Refactor the p51x heat table loading code a bit 2022-10-27 05:17:51 -04:00
Solomon Peachy adc7d669a1 hiti: Matrix table (aka nvram) is actually 512 bytes 2022-10-22 22:03:21 -04:00
Solomon Peachy 498fde721d hiti: fix compile error (missed a chunk when commiting) 2022-10-21 17:31:25 -04:00
Solomon Peachy 3e26608a69 hiti: Query the matrix data on p51x 2022-10-20 20:56:40 -04:00
Solomon Peachy 89700f105f hiti: Fix incorrect data accounting if we retry a plane. 2022-10-01 21:31:22 -04:00
Solomon Peachy 1e908e0422 hiti: Properly check the job status flag.
An unknown flag is ocming up that's signifying an error state.
2022-10-01 21:10:30 -04:00