Проблема ровно в том, что экземпляров ЕСМ несколько. Их не должно быть несколько — служба одна, а касс в ней много.
Порт агента драйвера ККТ (в конфиге модуля dkktPort, это и есть 4042)
общий для всех касс и не меняется. Поэтому второй запущенный ЕСМ честно пытается занять уже занятый порт и падает. Конфликтуют не кассы, а копии службы.
Как правильно: оставить один сервис ЕСМ и добавить в него второй, третий и так далее
экземпляр ККТ. Управляет этим оркестратор модуля — локальный сервис на 127.0.0.1, порт 51077. У каждой кассы своя уникальная пара портов, сетевой и программный, берут следующую свободную по порядку: 51401, 51402 и дальше. Число касс при этом не ограничено, меняются только серийный номер и пара портов.
Одна служба gRPC у Штриха — это не поломка, так и задумано: она обслуживает несколько устройств сразу.
Шаг, который забывают и потом долго ищут. После регистрации второй кассы в кассовой программе для неё нужно указать
её softPort. Если этого не сделать, программа продолжит стучаться на первую кассу, и внешне это выглядит как «вторая касса не проверяет коды».
Порядок действий с экземплярами и разбор всех портов связки:
1tspiot.ru/blog/neskolko-kass-na-odnom-esm/
1tspiot.ru/blog/porty-ts-piot/
И отдельно проверьте исходную посылку. Если фискальные регистраторы физически подключены к самому терминальному серверу — схема выше рабочая. Если же они висят на рабочих местах кассиров, то модуль нужен на каждом рабочем месте, а не на сервере: модуль сам опрашивает кассу и к удалённой дотянуться не может.