purebasic.info

PureBasic forum
Текущее время: Пт фев 21, 2020 6:57 pm

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 13 ] 
Автор Сообщение
СообщениеДобавлено: Пт дек 13, 2019 5:08 am 
Не в сети
доцент

Зарегистрирован: Пт окт 13, 2017 12:42 pm
Сообщений: 43
Благодарил (а): 11 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Всем привет.
Суть темы, у меня в очередной раз после попытки заменить старые алименты на новые(отпаивал от плюса к минусу, припаивал в обратном порядке, всё как рекомендовали в нете), заблокировался родной МК батареи ноута, и я плюнул нашел время, методом проб и ошибок, сделал собственный контроллер для акб ноутбука, плату протравил(пока тестовую, для устранения нюансов), написал программу для этого контролера, отладил, всё работает. Решил нарисовать универсальную плату, уменьшить в размерах(чтобы влазила во все нотбучные корпуса акб) с последующим заказом на заводе её тиража, после сборки и наладки, поделится с окружающим миром, за небольшую оплату, но встал вопрос, человек который приобретет данный контроллер, как ему прописать напряжение, ток, ёмкость и т.д. Можно конечно организовать через СOM порт но, это дополнительно человеку придётся покупать эмулятор СOM, что не удобно и затратно !, я могу программно прописать адреса(свободные) в прошивке мк, при обращении к которым со стороны ПК, МК будет знать, что далее будут следовать данные. Пример, ПК обратился по адресу 0x10, значит дальше пойдут данные напряжения конца заряда акб, ПК обратился по адресу 0x11, значит дальше пойдут данные тока заряда акб и т.д, и т.п.

Нужно обращаться к МК через штатный разъём акб ноутбука, может можно как-то через драйвер, это организовать, но слать нужно свои адреса(пример выше) !, в нете примеров не нашел, может это в обще невозможно сделать программным путём, и нужно писать собственный драйвер и работать через него !.

Поделитесь, может у кого-то есть знания в этой сфере, или пример на Purebasic, готов отблагодарить финансово.
Заранее благодарю !!!


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пт дек 13, 2019 1:38 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11587
Благодарил (а): 4 раз.
Поблагодарили: 485 раз.
Нужно искать сведения как на аппаратном уровне осуществляется обмен между компом и контроллером батареи, т. е. какие адреса, команда и т. д. Это не зависит от языка. Вполне возможно что адреса могут быть разные в зависимости от модели ноутбука.
Если в ноутбуке есть свободный внутренний USB порт, контроллер можно подключить в нему (у МК желательно чтобы был аппаратный модуль USB).

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пт дек 13, 2019 2:22 pm 
Не в сети
док
Аватар пользователя

Зарегистрирован: Ср июн 18, 2014 6:34 pm
Сообщений: 195
Благодарил (а): 3 раз.
Поблагодарили: 5 раз.
Пункты репутации: 0
kolya писал(а):
Поделитесь, может у кого-то есть знания в этой сфере

У меня есть опыт, я перепаковывал батарею на Фуджи Сименс.
Старые элементы надо удалить и специальной программой сбросить всё к нулю в памяти контроллера, в часности, счётчик циклов.
Потом приварить новые элементы, именно приварить, а не припаять.
После этого, в точности как у вас, на выходе батареи напряжения будет ноль, ибо, контроллер не инициализирован.
Для инициализирования, кратковременно замыкаются два плюса, один плюс со сборки внутри замыкается с плюсом на выходе собранной АКБ.
Напряжение появляется и батарея готова к использованию.
Но.... есть большое НО.
Это так проходит далеко не у всех моделей ноутов.
Многие модели ноутов, вообще, перепаковать невозможно, в принципе, ибо, контроллер блокируется навсегда.
Обойти это невозможно, ибо это сделано специально, чтоб заставить купить новую акб.
А какие это модели и где это посмотреть?
А посмотреть это можно было на двух форумах, в частности на Авалон, но оба форума прекратили своё существование.
Теперича, далее...
Относительно написания самостоятельного драйвера к фирменной батарее это абсолютная утопия.
Это такая же утопия, как моя мечта найти новый драйвер для Вин 7 для старой видеокарты, которая только для ХР.
Остаётся только возможность собрать свою АКБ, поставить к ней свой контроллер с Алиекспрес, и питать ноутбук через стандартное гнездо питания.
Понятное дело, что этой АКБ Винда не увидит и с этим придётся смириться..


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пт дек 13, 2019 4:38 pm 
Не в сети
доцент

Зарегистрирован: Пт окт 13, 2017 12:42 pm
Сообщений: 43
Благодарил (а): 11 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Пётр писал(а):
Нужно искать сведения как на аппаратном уровне осуществляется обмен между компом и контроллером батареи, т. е. какие адреса, команда и т. д. Это не зависит от языка. Вполне возможно что адреса могут быть разные в зависимости от модели ноутбука.
Если в ноутбуке есть свободный внутренний USB порт, контроллер можно подключить в нему (у МК желательно чтобы был аппаратный модуль USB).


Добрый день.
Я разобрался с обменом данных ноут-акб(адреса и команды я вычислил), мой контролёр работает с ноутом через стандартный разъём акб, в корпусе самого акб то есть, родную плату мозгов я выкинул, а на её место протравил и установил свою(тестовую, для отладки ПО и комплектации деталей), обмен данными идёт по протоколу SMBus, ноут обращается по адресу(в DEC это 23) к акб с битом чтения, и ждёт ответ, всё это я методом проб и ошибок вычислил, у меня около 10-ка плат мозгов с разных акб ноутбуков(заблокированных), я проверил у всех у них адрес один и тот же адрес, в DEC это 23, по этому адресу откликается контролер акб, и далее идёт общение, ноут шлёт адрес к примеру какой нужен ток для заряда и мозги акб ему отвечают.
Нашел на просторах нета, только один пример на Делфи, но там в примере идёт чтение через setupapi.dll, то есть что считала система то этот пример перехватил, но это не то что мне нужно !, мне нужно обратится из под винды к мозгам акб(через драйвер или как-то ещё) по тому же адресу (23) и далее слать данные в мозги акб.

По поводу ЮСБ я думал но, плату то увеличивать в размерах не хочется, в связи с тем что это дополнительный обвес деталями и нужен дополнительно программный код дописывать в контролёр.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пт дек 13, 2019 4:57 pm 
Не в сети
доцент

Зарегистрирован: Пт окт 13, 2017 12:42 pm
Сообщений: 43
Благодарил (а): 11 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Дегтярёв писал(а):
kolya писал(а):
Поделитесь, может у кого-то есть знания в этой сфере

У меня есть опыт, я перепаковывал батарею на Фуджи Сименс.
Старые элементы надо удалить и специальной программой сбросить всё к нулю в памяти контроллера, в часности, счётчик циклов.
Потом приварить новые элементы, именно приварить, а не припаять.
После этого, в точности как у вас, на выходе батареи напряжения будет ноль, ибо, контроллер не инициализирован.
Для инициализирования, кратковременно замыкаются два плюса, один плюс со сборки внутри замыкается с плюсом на выходе собранной АКБ.
Напряжение появляется и батарея готова к использованию.
Но.... есть большое НО.
Это так проходит далеко не у всех моделей ноутов.
Многие модели ноутов, вообще, перепаковать невозможно, в принципе, ибо, контроллер блокируется навсегда.
Обойти это невозможно, ибо это сделано специально, чтоб заставить купить новую акб.
А какие это модели и где это посмотреть?
А посмотреть это можно было на двух форумах, в частности на Авалон, но оба форума прекратили своё существование.
Теперича, далее...
Относительно написания самостоятельного драйвера к фирменной батарее это абсолютная утопия.
Это такая же утопия, как моя мечта найти новый драйвер для Вин 7 для старой видеокарты, которая только для ХР.
Остаётся только возможность собрать свою АКБ, поставить к ней свой контроллер с Алиекспрес, и питать ноутбук через стандартное гнездо питания.
Понятное дело, что этой АКБ Винда не увидит и с этим придётся смириться..


Добрый день.
Всё это я тоже проходил, мой контролер заблокировался так как в нём исчезли данные ёмкости, напряжения, остаточной ёмкости, после того как я поменял ячейки акб, я думаю там такая защита, после смены ячеек идёт стирание данных а чтобы их прописать по новой нужно покупать программу !, для одного акб очень дорого, другое дело когда ремонтируешь кучу акб то тогда можно купить, но где гарантия что ячейки прослужат долго, в случае чего то что опять покупать программу !
Моя задумка заключается в том чтобы контролер не блокировался после замены ячеек, сейчас у меня на программном уровне реализована калибровка замыканием ножки на землю, или когда мк обнаружит что ёмкость от предыдущий стала меньше на 20%, в память заносится бит о том что нужна калибровка, далее мк ждёт полного заряда и последующего разряда, после чего обновляет данную остаточную ёмкость тем самым вычисляется износ акб что тоже заносится в память, после бит калибровки сбрасывается и так по кругу.
По поводу драйвера, то я привел как пример для разъяснения знающими людьми, но то что невозможно обратится к акб из под винды я не верю, ведь контролер свой для акб тоже не кто не делал, наверно думали тоже что невозможно.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пт дек 13, 2019 5:41 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11587
Благодарил (а): 4 раз.
Поблагодарили: 485 раз.
kolya писал(а):
мне нужно обратится из под винды к мозгам акб(через драйвер или как-то ещё)
Нужно через драйвер. Его можно найти готовый или написать свой, типа такого но для него нужна цифровая подпись, особенно для x64 систем.

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пт дек 13, 2019 6:16 pm 
Не в сети
доцент

Зарегистрирован: Пт окт 13, 2017 12:42 pm
Сообщений: 43
Благодарил (а): 11 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Пётр писал(а):
kolya писал(а):
мне нужно обратится из под винды к мозгам акб(через драйвер или как-то ещё)
Нужно через драйвер. Его можно найти готовый или написать свой, типа такого но для него нужна цифровая подпись, особенно для x64 систем.


Благодарю.
Драйвер свой написать я конечно не в силах, готовый искать пробовал не нашел.
Я что заметил, ноут когда выключен то с акб он всё равно общается, может есть какой-то другой путь ?!


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пт дек 13, 2019 11:14 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11587
Благодарил (а): 4 раз.
Поблагодарили: 485 раз.
Можно сделать протокол обмена как у оригинального контролера. Тогда винда сможет из него считывать данные.

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб дек 14, 2019 1:03 am 
Не в сети
доцент

Зарегистрирован: Пт окт 13, 2017 12:42 pm
Сообщений: 43
Благодарил (а): 11 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Пётр писал(а):
Можно сделать протокол обмена как у оригинального контролера. Тогда винда сможет из него считывать данные.


Вы меня не поняли, или я не достаточно прояснил суть проблемы !
У меня так и сделано то есть, мой контролер полный аналог контролера акб, со всеми данными и адресами. Система общается с моим контролером только в режиме чтения, приходит запрос со стороны ноута на отсылку ему данных о состоянии акб, что мой контролер и отсылает успешно, ноут работает на акб без проблем, также отображается в аида64 все, ток, ёмкость, износ, время на которое хватит заряда акб при текущей нагрузке, но мне нужно средствами виндовс отослать обратно в мой контролер через тот же разъём куда подключен акб данные !


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб дек 14, 2019 3:44 am 
Не в сети
док
Аватар пользователя

Зарегистрирован: Сб мар 28, 2015 11:06 pm
Сообщений: 192
Откуда: Україна
Благодарил (а): 13 раз.
Поблагодарили: 26 раз.
Пункты репутации: 9
ну записать данные в контроллер тебе(клиенту) ж надо единоразово? ну если в винде это проблематично, то в лиуксе это вроде сделать попроще.. (собрать live-cd для усб-флешки с линуксом и необходимыми скриптами)
smbus2: https://pypi.org/project/smbus2/
всякие примеры https://www.programcreek.com/python/exa ... mbus.SMBus
16 страница со стандартными командами http://www.ti.com/lit/ug/sluuac9a/sluuac9a.pdf

зы: http://rweverything.com/screenshots/


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб дек 14, 2019 3:55 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11587
Благодарил (а): 4 раз.
Поблагодарили: 485 раз.
Судя по всему запись в контроллер производится как я писал выше, через драйвер доступа к портам.

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вс дек 15, 2019 1:04 am 
Не в сети
доцент

Зарегистрирован: Пт окт 13, 2017 12:42 pm
Сообщений: 43
Благодарил (а): 11 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
В общем пришла мне идея :D , сделаю по типу бут-лоадера в МК(благо память для расширения функционала в контролере ещё есть), при подключении в этом режиме старой акб к моей плате, будет считываться вся инфа, в память моего контролера, клиенту только останется выйти из режима бут(снятием перемычки) подпаять хорошие ячейки, вставить в корпус и вставить в ноутбук, далее провести заряд-разряд чтобы МК определил реальную ёмкость ячеек, после МК запомнит ёмкость, сбросит счетчика циклов, и всё вперед в работу. Остальное параметры(токи заряда, напряжения, ид.оборудования и т.д) будет как в родном контролере акб, единственное не получится это обновить дату производства акб на текущую, но думаю это не важно !, главное работа от акб.

Всех благодарю за отклик.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн дек 16, 2019 1:10 am 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11587
Благодарил (а): 4 раз.
Поблагодарили: 485 раз.
Дальнейшие сообщения не по теме будут удаляться.

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 13 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB