- Saved searches
- Use saved searches to filter your results more quickly
- mia-0/b6mon
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README.rst
- About
- Saved searches
- Use saved searches to filter your results more quickly
- License
- a-iv/imax
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README.md
- About
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
mia-0 / b6mon Public archive
Logging tool for SkyRC iMAX B6 Mini (and possibly similar) chargers. Runs on Linux.
mia-0/b6mon
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.rst
Logging tool for SkyRC iMAX B6 Mini (and possibly similar) chargers
This tool can monitor and log data from Chinese 4-button battery chargers that come with a USB port.
Right now, only SkyRC’s iMAX B6 Mini charger is supported, but it’s very possible that many other, similar chargers use the same HID-based protocol.
cc b6mon.c -o b6mon $(pkg-config —cflags —libs libudev) -lm
This tool needs write access to the USB device, so either run as root or set up access through udev rules.
Option | Effect |
---|---|
-p | Monitor process status until end of process. |
-s | Continuously monitor system status (cell voltage only) |
To do (aka patches welcome)
- Reverse engineer the rest of the protocol (config, maybe fw update)
- Support more chargers (e.g. those that can charge 8 cell batteries)
Live plotting with gnuplot
Run gnuplot (sample file included):
This software is available under the terms of the ISC license.
About
Logging tool for SkyRC iMAX B6 Mini (and possibly similar) chargers. Runs on Linux.
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
Proxy data from iMAX B6AC V2 to LogView
License
a-iv/imax
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
Проект предназначен для передачи данных с зарядных устройств SkyRC iMAX B6AC V2, подключенных через шатный USB порт, в популярную программу для сбора и анализа логов LogView V2.
Должен работать на SkyRC iMAX B6 Mini. Однако работа с реальным устройство не проверялась.
LogView успешно используется для построения графиков зарядки и разрядки аккумуляторных батарей различными устройствами. Для подключения iMAX B6 интузиасты использовали самодельные переходники, подключая выходы термодатчика iMAX к COM порту. iMAX B6AC V2 и B6 Mini обладают штатным micro-USB портом. Однако в качестве интерфейса теперь используется USB HID. Формат передачи данных также был изменен.
Покупая iMAX B6AC V2 я был уверен, что смогу передавать данные в LogView. Однако из коробки в LogView V2 отсутствует настройки для iMAX B6AC V2 и B6 Mini. А настройки для других iMAX требуют указания COM порта, которого просто нет. Более новая версия LogView Studio позволяет выбрать iMAX B6AC V2 и указать USB HID устройство. Оно отправляет запросы к iMax и получает ответы. Однако не видит полезных данных.
Больше суток моей жизни ушли на эксперименты и поиск информации чтобы понять, что я делаю всё верно и LogView на новых устройствах из коробки действитель ничего не видет.
Потом ещё сутки ушли на поиск информации о настройке LogView и на тщетные самостоятельные попытки. Дело в том, что в 2014 году поддержка программы прекралисаль. А все темы, по моей теме на различных форумах и языках просто остаются без ответа. От отчаяния люди заняли реверсинженирингом и тихонечко для себя делают программы для получения данных, а иногда даже для визуализации. А кто-то вообще делает другие прошивки с поддержкой LogView:
К слову сказать по первой ссылке можно найти очень много полезной информации.
Такие варианты меня не устроили, я хотел как бородатые мужики использовать LogView. Тем более на создание решения у меня ушло значительно меньше времени, чем на предыдущие этапы.
Приложение постоянно опрашивает iMAX через USB HID и из полученного ответа достаёт полезные данные. Оформляет их в соответствии с форматом OpenFormat и отправляет в витруальный COM порт. C помощью null-modem emulator данные из этого порта отправляются в другой витруальный COM порт, который уже читает LogView в формате iMAX B6AC.
Два виртуальных потра необходимы, так как две программы не могут взаимодействовать друг с другом через один COM порт.
- Скачать Null-modem emulator (тестировалось на версии 3.0.0.0): https://sourceforge.net/projects/com0com/
- Установить приложение. За ненадобностью при установке можно отключить CNCA0 CNCB0 .
- Запустить и запомнить номара первого и второго созданного виртуального порта. При необходимости можно изменить номера портов и нажать на кнопку Apply .
- Приложение можно закрыть. Для его работы ничего запускать не потребуется.
iMAX B6AC V2 LogView Proxy
- Подключить iMax B6AC V2 через USB к ПК.
- Запустить приложение.
- Открыть созданный proxy.ini в блокноте.
- Указать числовой номер первого виртуального порта, позданного в Null-modem emelator (у меня: port_number = 3 ).
- Сохранить изменения.
- Запустить приложение.
- Проверить появление окна с текстом INFO: New state: user stop .
- Через экран iMAX запустить необходимый процесс (например, разрядку).
- Проверить появление в окне текста INFO: New state: running .
После корректного завершения процесса должно появиться INFO: New state: imax finish .
- Скачать и установить LogView V2 (тестировалось на версии 2.7.6.511): http://logview.info/forum/index.php?resources/logview-v2.1/
- Запусить LogView.
- Выбрать язык, не выбирать порт и устройство, остальные настройки выбрать по вашему усмотрению.
- Скопировать OpenFormat.ini и OpenFormat.jpg из папки iMAX B6AC V2 LogView Proxy в %AppData%\LogView\Geraete\ .
- Скопировать OpenFormat.lvt из папки iMAX B6AC V2 LogView Proxy в %AppData%\LogView\Templates Grafik\ .
- Выбрать пункт меню Device → Choose device and port .
- В поле Device выбрать OpenFormat , а в Connection port выбрать второй виртуальный порт (у меня COM4 ).
- При желании можно включить Automatic start recording .
- Нажать Close .
- Выбрать пункт меню Device → Open port / recording .
- При желании можно выбрать пункт меню Graph → Open draft graph и открыть OpenFormat.lvt .
- В папке iMAX B6AC V2 LogView Proxy открыть proxy.ini в блокноте.
- Вместо use_studio = False указать use_studio = True .
- Сохранить изменения.
- Перезапустить приложение.
- Скачать и установить LogView Studio (тестировалось на версии 1.0.3662.0903): http://www.logview.info/forum/index.php?resources/logview-studio.9/
- Запусить LogView.
- Нажать New Project .
- Выбрать папку, внутри которой будет создан проект.
- Нажать на кнонку папки с плюсом справа.
- Указать имя проекта.
- Нажать OK .
- Нажать Finish .
- Нажать на кнопку Device .
- В выпадающем списке выбрать OpenFormat INI .
- Нажать Source .
- В выпадающем списке выбрать второй виртуальный порт (у меня COM4 ).
- Нажать OK .
- Рядом с OpenFormat INI включить флажок.
- В открывшееся окно вставить полный путь до OpenFormat.ini . Никогда не оставляйте это поле пустым.
- Нажать OK .
- Выбрать Channel и нажать на кнопку Chart .
Чтобы каждый раз не указывать путь до OpenFormat.ini , его можно скопировать в папку установки приложения (у меня C:\Program Files (x86)\LogView Studio ).
- Проверить, что ChargeMaster v2 видит iMAX B6AC V2.
- Проверить, что в диспетчере устройств в разделе Устройства HID (Human Interface Devices) при подключении iMAX появляются HID-совместимое устройство и USB-устройство ввода .
- Проверить, что в диспетчере устройств в разделе Порты (COM и LPT) отображается оба виртуальных порта com0com .
- В LogView V2 в нижней части экрана открыть Serial logging и убедиться в получении данных.
- В LogView Studio выбрать OpenFormat INI , нажать Device monitoring и убедиться в получении данных.
- Установить Python 3 (у меня Python 3.4.4 64bit из https://www.python.org/downloads/release/python-344/).
- pip install -r requirements.txt
- python proxy.py
К сожалению py2exe 0.9.2.2 отказался собирать бинарный файл на Python 3.6.2. Поэтому я воспользовался Python 3.4.4.
About
Proxy data from iMAX B6AC V2 to LogView