EyePoint S
==========

ПО для поиска неисправностей на печатных платах с использованием аналоговых сигнатурных анализаторов EyePoint IVM. Может работать как с одним, так и с двумя устройствами.

Возможности
-----------

* Непрерывное измерение ВАХ с возможностью быстрой перестройки параметров измерителя.
* Сравнение ВАХ в реальном времени с двух каналов.
* Создание плана тестирования – файла с набором эталонных ВАХ, снятых для различных точек с заданными параметрами.
* Тестирование с использованием ранее созданного плана тестирования (с автоматической установкой параметров измерителя).
* Сохранение ВАХ в виде изображений.

## Запуск релиза в Windows

1. Установите [MSVC 2013 redistributable](https://www.microsoft.com/en-us/download/details.aspx?id=40784) (разрядность должна совпадать с разрядностью Python).

2. Подключите устройства к ПК и с помощью диспетчера устройств Windows определите номера соответствующих COM-портов. Если Вы не видите в диспетчере устройств COM-порты, убедитесь, что Вы установили драйвер устройства EyePoint IVM (драйверы находятся в папке `driver`).

3. Запустите файл `launch.bat`:

   ```
   launch.bat
   ```

   Выберите устройства и нажмите "Далее".

4. Запустите скрипт `launch_command.bat`:

   ```
   launch_command.bat
   ```

   Чтобы запустить ПО с новыми устройствами, удалите файл `launch_command.bat` и повторите шаги 2-3.

## Запуск релиза в Linux

1. Перед первым запуском обычно нужно прописать в системе VID и PID устройства для драйвера виртуального COM-порта. В Ubuntu это можно сделать так:

   ```
   sudo sh -c 'echo 1CBC 0007 > /sys/bus/usb/drivers/cdc_acm/new_id'
   ```

2. Для корректной работы ПО с COM-портами пользователь должен находиться в группе `dialout`. Чтобы добавить пользователя в эту группу, выполните команду (здесь предполагается, что имя пользователя `username`):

   ```
   sudo adduser username dialout
   ```

3. Запустите файл `launch.sh`:

   ```
   bash launch.sh
   ```

   Выберите устройства и нажмите "Далее".

4. Запустите скрипт `launch_command.sh`:

   ```
   bash launch_command.sh
   ```

   Чтобы запустить ПО с новыми устройствами, удалите файл `launch_command.sh` и повторите шаги 3-4.

Если при открытии устройств возникают какие-то проблемы, попробуйте запустить ПО с правами `root`.

Если при запуске ПО возникает ошибка:

```
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found
```

выполните команды:

```
export QT_DEBUG_PLUGINS=1
sudo apt-get install --reinstall libxcb-xinerama0
```

## Дополнительные опции при запуске ПО в Windows и Linux

Есть возможность запустить ПО с дополнительными опциями. Для этого нужно дописать дополнительные опции к строке запуска в файле `launch_command.bat` или `launch_command.sh`.

Дополнительные опции:

- `--debug` - включение режима отладки, в котором выводится дополнительная отладочная информация;
- `--en` - английская версия интерфейса;
- `--hide-cursor` - не отображать курсор в окне приложения;
- `--no-score` - отключение вычисления степени различия ВАХов тестового и опорного (эталонного) измерителей;
- `--no-sound` - отключение звука;
- `--screenshot-external-media-path` - указание фиксированного пути для сохранения файлов;
- `--window embedded` - запуск интерфейса, адаптированного под сенсорный экран;
- `--window pc` - запуск интерфейса, адаптированного под обычный ПК (режим по умолчанию).

Для сохранения скриншотов и эталонных плат нужно создать папку, которая будет содержать внутри себя ровно одну папку. Верхнюю папку нужно передать в качестве аргумента командной строки `--screenshot-external-media-path`. Например, создаём папку `С:\EyePoint\EyePoint_data`. Параметр задаём так:

```
--screenshot-external-media-path="С:\EyePoint"
```
