[rusEfi] ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post Reply
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

Запостил основной PR бутлоадера.
Надеюсь, кому-то мои старания тоже пригодятся... :roll:
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by AndreyB »

Крутая штука! Я медленно можно буду потихоньку вкуривать?

1) я тупо скопировал первые три файла. Можно тебя попросить попробовать merge from remote master в себя - цель отщипывать по одному файлику из PR, чтоб несколькими шагами всё очень подробно прочитать и понять?

2) dfu.h наводит меня на подозрения, что где-то есть документация на этот протокол? Можно тебя попросить прямо в dfu.h добавить ссылку, откуда идёт сакральное знание например #define DFU_GO_CMD 0x21?

3) меня бесит немного эта ST DFU поделка, она не поддерживает командную строку и вообще ужас-ужас. Если делать хорошо, то нам получается нужно сделать вкусный программатор на java в консоль? Или для начала ST поделку заставить работать с параметрами командной строки? Или она умеет, и я что-то упускаю?

А вообще - я прямо в шоке, как круто и хорошо!
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by AndreyB »

PS: сейчас https://github.com/rusefi/rusefi/pull/434/files "Files Changed: 16", хочу попробовать сделать сначала 13, потом 12 и так далее?
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
meXanicus
contributor
contributor
Posts: 314
Joined: Sat Dec 21, 2013 2:42 pm
Location: Russia, Rostov-na-Donu

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by meXanicus »

Блин все так круто! Слежу с большим удовольствием за работой @andreika!
Я на Drive2 Alfa Romeo 156 SW
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

russian wrote:Крутая штука! Я медленно можно буду потихоньку вкуривать?
1) я тупо скопировал первые три файла. Можно тебя попросить попробовать merge from remote master в себя - цель отщипывать по одному файлику из PR, чтоб несколькими шагами всё очень подробно прочитать и понять?" сейчас "Files Changed: 16", хочу попробовать сделать сначала 13, потом 12 и так далее?
Спасибо за интерес, сделал merge. Только ты хоть что-нибудь от моего PR оставь в конце, не выбрасывай, а то не будет понятно, откуда этот бутлоадер вообще взялся :lol:
russian wrote:2) dfu.h наводит меня на подозрения, что где-то есть документация на этот протокол? Можно тебя попросить прямо в dfu.h добавить ссылку, откуда идёт сакральное знание например #define DFU_GO_CMD 0x21?
Да, есть документация на протокол. Добавил ссылку на соответствующий appnote.
russian wrote:3) меня бесит немного эта ST DFU поделка, она не поддерживает командную строку и вообще ужас-ужас. Или для начала ST поделку заставить работать с параметрами командной строки? Или она умеет, и я что-то упускаю?
Внутри FLASHER-STM32 (flash_loader_demo_v2.8.0) есть два исполняемых файла:
1) "STMFlashLoader Demo.exe" - это GUI, скриншоты с которого я опубликовал. Качество реализации действительно так себе, на уровне Demo...
2) "STMFlashLoader.exe" - версия для командной строки. Она полнофункциональна и умеет всё то же, что и GUI-версия - куча параметров!
Так что можно смело встраивать это дело в скрипты и т.п. 8-)
Кстати, сам протокол довольно хорошо описан и стандартизирован на уровне ST - его используют DfuSe (для USB), STM32Cube (Expansion_AN4852) и т.д.
russian wrote:Если делать хорошо, то нам получается нужно сделать вкусный программатор на java в консоль?
Да, в конечном итоге нужно будет сделать единую интегрированную среду, куда встроить программатор. Но это уже задачи для последующих итераций, в духе agile-парадигмы.

Кстати, как я уже писал, свой программатор встроен и в TunerStudio. Но там, похоже, закрытый протокол, доступный только для MS3. Хотя, если немножко подсмотреть "в замочную скважину" ;), то можно и его раскрутить: он посылает команду 0xb7 (да, уже не текстовая!), а в ответ надо вернуть { 0xdc, 'M', 'S', '3' } и так далее... :roll:
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

Пока я томился в ожидании мержда бутлоадера :lol:, написал простенький код инициализации для модуля Bluetooth!
Точнее, он оказался не очень простенький, т.к. требует динамической смены битрейта UART-порта и временного отключения Консоли.
На этот раз заранее написал readme с описанием. Если вкратце, то код добавляет команду bluetooth_hc06 для инициализации модуля HC-06 (но предусмотрено добавление и других видов модулей в будущем). Команда просит юзера на время отключить шнурок связи по UART, после чего начинает общаться с модулем bluetooth по тому же самому UART, меняя при этом baudrate.
Код проверил в работе - всё ок. Но, по традиции, по умолчанию отключил его. Включается в efifeatures.h: "EFI_BLUETOOTH_SETUP=TRUE".

В общем, после PR с бутлоадером, Андрея уже ждёт следующий весёлый PR... ;)
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

andreika wrote:написал простенький код инициализации для модуля Bluetooth!
Спасибо Андрею за оперативное добавление этой фичи! Заодно добавили код и для модуля HC-05.
Теперь осталось разобраться с бутлоадером. Мы уже проделали несколько итераций по улучшению кода, осталось только добавить всё это добро в основную ветку. :roll:
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by puff »

круто!
там же надо какой-то дополнительный пин использовать для конфигурации?
главное - добавить доку, как выяснить, какой перед тобой модуль))
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

puff wrote:там же надо какой-то дополнительный пин использовать для конфигурации?
Да, вроде для некоторых модулей нужно ещё пин дёрнуть. Для HC-06, к счастью, не надо. По крайней мере, теперь у нас есть программная часть, в которую можно добавлять и другие модули.

P.S. Андрей, спасибо за мердж бутлоадера! :D
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by AndreyB »

тебе спасибо за код :)

как твоя плата в целом, когда уже тыр-тыр? :)
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

russian wrote:как твоя плата в целом, когда уже тыр-тыр? :)
Гаражные испытания, по плану, на этой неделе.
Правда, нужно ещё управление питанием дописать. Иначе плата с существующей проводкой нормально работать не будет.
В текущей версии кода mainRelay включается, но не выключается :) А мне нужно, чтобы при пропадании напряжения vbatt он отключался.
Планирую сделать примерно так:
1) в system_fsio.txt добавить:

Code: Select all

MAIN_RELAY_LOGIC=(time_since_boot < 2) | (vbatt > 5)
2) в fsio_impl.cpp:

Code: Select all

// initFsioImpl() {
if (boardConfiguration->mainRelayPin != GPIO_UNASSIGNED)
		mainRelayLogic = sysPool.parseExpression(MAIN_RELAY_LOGIC);
//...
// runFsio(void) {
// instead of enginePins.mainRelay.setValue(true);
setPinState("main_relay", &enginePins.mainRelay, mainRelayLogic, engine);
3) Ну и обернуть это дело в дефайн, чтобы не сломать текущее поведение...

Но это самый тупой вариант, т.к. при отключении напряжения нужно бы ещё корректно всё шатдаунить: например, вызвать stopEngine() (а оно рабочее?), записать настройки во флеш и т.п.
А я пока код знаю плохо, и всё никак не соберусь духом туда залезть... Из-за этого гаражные испытания всё время откладываются. :(
Last edited by andreika on Tue Jun 06, 2017 1:02 pm, edited 1 time in total.
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by AndreyB »

stopEngine точно работает
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

Спаял всю проводку платы:
pcb_harness.jpg
pcb_harness.jpg (221.18 KiB) Viewed 23434 times
Также собрал все разъёмы для подключения к проводке:
harness_connectors.jpg
harness_connectors.jpg (133.56 KiB) Viewed 23434 times
Разъёмы те же, что были в блоке SECU, за исключением нового разъёма ДАД, который решил вынести наружу корпуса:
map_sensor_with_connector.jpg
map_sensor_with_connector.jpg (17.26 KiB) Viewed 23434 times
Теперь можно нормально подключать к плате все датчики. С ними-то и начались проблемы.

1. Во-первых, неправильно показывает ДАД. Должно быть около 100кПа, а TS показывает 88... Начал разбираться, в чём дело, и выяснилось, что неправильно считается напряжение по значению АЦП. В adc_math.h задана странная константа:

Code: Select all

#define ADC_VCC 3.0f
Почему именно 3.0, а не 3.3 (или 3.278 В, как у меня на плате) - непонятно... Как я понимаю, значение должно соответствовать напряжению на ножке VREF+, которое через НЧ-фильтр берётся с VDD, которое выдаёт линейный стабилизатор 3.3В (по схеме Frankenso стоит LM2937). Пришлось мне поставить в эту константу ADC_VCC = 3.3В, и ДАД стал показывать более-менее правильно - около 97 кПа. Скорее всего, я просто не до конца разобрался в ситуации, и надо как-то по-другому исправлять, потому что мне трудно поверить в то, что такую бяку никто не заметил...
Есть ещё мелкий нюанс: у меня датчик MPX4250A, а есть ещё другая разновидность, MPX4250, без буквы "А". Они немного отличаются характеристиками. Но в прошивке под видом "MPX4250" забиты значения, которые немного не соответствуют ни даташиту MPX4250, ни MPX4250A :? Правда, эта разница уже не критична (<0.5кПа).
В общем, после исправления ADC_VCC, значение MAP пока сойдёт для старта. Но вопрос по-прежнему остаётся: что с этим делать?..

2. Во-вторых, обнаружилось, что я не могу задать свои кривые для датчиков ДТОЖ (CLT) и ДТВ (IAT), как в СЕКУ. Похоже, что rusEFI просто линейно интерполирует по трём фиксированным точкам... :( Причём, можно задать только значения сопротивлений датчиков, а не измеряемых напряжений (что было бы удобно для калибровки кривых "на лету", при подключенном датчике).
Забавно, но мне казалось, что раз у rusEFI гораздо больше RAM, то тут должна быть более гибкая настройка с большим количеством таблиц/графиков, чтобы свести к минимуму погрешности измерений. Так что в этом направлении тоже нужно будет поработать. А пока кое-как задал по точкам, с погрешностью в несколько градусов...
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by AndreyB »

Красиво сделал!

1. т.е. зависит от компонентов на плате, чип-то работает в диапазоне значений. значит должно стать настраиваемым значением https://github.com/rusefi/rusefi/issues/442 - вот только это будет несовместимое изменение, значит на переходное вмемя всё-таки компилировать будем.

2. ай как обижаешь, "линейно по трём точкам" :( А ведь прямо вверху https://github.com/rusefi/rusefi/blob/master/firmware/controllers/sensors/thermistors.cpp есть ссылка на https://en.wikipedia.org/wiki/Steinhart%E2%80%93Hart_equation. Мне кажется, что эта модель как раз точнее большого массива с интерполяцией?
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

russian wrote:1. т.е. зависит от компонентов на плате, чип-то работает в диапазоне значений. значит должно стать настраиваемым значением https://github.com/rusefi/rusefi/issues/442 - вот только это будет несовместимое изменение, значит на переходное вмемя всё-таки компилировать будем.
Согласен. Давай тогда пока сейчас сделаем как-то так:

Code: Select all

--- a/firmware/hw_layer/algo/adc_math.h
+++ b/firmware/hw_layer/algo/adc_math.h
@@ -9,7 +9,9 @@
 #define ADC_MATH_H_
 
 // it is important that this constant is a float, not double literal
+#ifndef ADC_VCC
 #define ADC_VCC 3.0f
+#endif
 #define ADC_MAX_VALUE 4095
 
 #define adcToVolts(adc) (ADC_VCC / ADC_MAX_VALUE * (adc))
А я себе ADC_VCC вынесу в свой efifeatures.h...
А у вас там на плате действительно стабилизатор на 3.0В стоит? Просто на схеме Frankenso чётко написано 3.3В...
russian wrote:2. ай как обижаешь, "линейно по трём точкам" Мне кажется, что эта модель как раз точнее большого массива с интерполяцией?
Виноват, в реализацию ещё не заглядывал. Увидел три пары значений в TS и, думаю, "ну всё"... :lol:
С датчиками есть определённые трудности. Есть обычные резистивные, с кривульками, которые логарифмически аппроксимируются. А есть полупроводниковые, с квазилинейной характеристикой. Я ещё более подробно про них напишу, чуть позже...
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by AndreyB »

сделал
andreika wrote: А у вас там на плате действительно стабилизатор на 3.0В стоит? Просто на схеме Frankenso чётко написано 3.3В...

...
С датчиками есть определённые трудности. Есть обычные резистивные, с кривульками, которые логарифмически аппроксимируются. А есть интегральные, с квазилинейной характеристикой. Я ещё более подробно про них напишу, чуть позже...
Точнее в схеме дискавери, потому что по факту - дискавери. Там мутно - схема говорит U1 LD3985M33R - а вольтметр показывает 3.0? Может диоды? Я программист :(

С датчиками значит я сталкивался пока только с обычными.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

Вот, например, один из хитрых ДТОЖ, о которых я говорил выше.
Датчик 19.3828 от Волги ГАЗ 31105: http://car-exotic.com/gaz-cars/gaz-31105-engine-management-system-8.html
Там, по ссылке приведена его характеристика. Я её построил, вот (в табличке одна опечатка):
GAZ-19.3828.png
GAZ-19.3828.png (3.81 KiB) Viewed 23422 times
Она квазилинейна, потому что рабочий элемент там не термистор, а двуханодный стабилитрон:
Image
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by AndreyB »

Если он линеен, то нужно проверить как https://en.wikipedia.org/wiki/Steinhart%E2%80%93Hart_equation отреагирует на три точки на одной прямой.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

russian wrote:Если он линеен, то нужно проверить как https://en.wikipedia.org/wiki/Steinhart%E2%80%93Hart_equation отреагирует на три точки на одной прямой.
К сожалению, он плохо реагирует - возникают экстремумы:
steinhart_linearization_test.png
steinhart_linearization_test.png (8.61 KiB) Viewed 23405 times
(Красный цвет - заданная прямая, Синий цвет - график Стейнхарта, построенный по коэффициентам заданной прямой).
Так что, похоже, надо добавлять в thermistor_conf_s параметр temperature_sensor_type (0="thermistor", 1="linear zener")... По умолчанию он будет 0 у всех, правильно? Андрей, сделаешь?
А потом уже допилить thermistors.cpp и добавить туда сэмплинг ломаной...

* * *

Был в гараже:
- Датчики ДТОЖ и ДТВ пока показывают температуру на Марсе. Просто подогнал параметры так, чтобы хотя бы при текущей температуре они показывали более-менее правду. Но с ними надо что-то делать. У меня ДТОЖ как раз линейный, от ГАЗа (см.выше).
- ДПДЗ работает сносно, пока оставлю как есть.
- ДАД показывает терпимо, но потом нужно будет перепроверить. К сожалению, у меня нет точного вакуумметра - не с чем сравнить.
- ДФ, ДД и лямбду пока не проверял.
- ДПКВ буду проверять завтра.

Вот что меня беспокоит - это РХХ (шаговый):
- двигается медленно (раза в 3-4 медленнее, чем в СЕКУ). :(
- движется не в ту сторону (инверсии направления в прошивке нет?), но это не смертельно;
- не умеет двигаться в нулевое положение ("парковаться") при отключении питания.
В общем, с ним надо будет ещё разбираться...

Кстати, о питании. Сделал простейшее управление главным реле по напряжению (см.выше). Работает! Но на данный момент просто обрубает питание блока, пока без деинициализации. Это нехорошо, но пусть хотя бы так будет - иначе вообще при отключении зажигания ничего не будет происходить, и движок продолжит молотить, пока не сдёрнуть фишку ДПКВ.
Выложить PR?
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

andreika wrote:Вот что меня беспокоит - это РХХ (шаговый):
- двигается медленно (раза в 3-4 медленнее, чем в СЕКУ). :(
Посмотрел, какая скорость была в СЕКУ и выставил идентичную:

Code: Select all

#define ST_DELAY_MS 2
И всё заработало чётко и быстро! :D
Это означает, что нам нужно бы добавить в engineConfiguration соответствующий параметр (idleStepperPulseDuration?), чтобы юзер мог задать скорость для своего РХХ.
Ну а пока что, по аналогии с ADC_VCC, желательно принять также и временные меры, чтобы я смог оверрайдить это значение:

Code: Select all

+#ifndef ST_DELAY_MS
+// todo: migrate to engineConfiguration->idleStepperPulseDuration
#define ST_DELAY_MS 10
+#endif /* ST_DELAY_MS */
Также нужно будет добавить параметр для направления (инверсии stepperDirectionPin) - я, кажется, даже видел какой-то issue, с этим связанный...
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by AndreyB »

https://github.com/rusefi/rusefi/issues/351

stepper кажется не использует никто, так что про него мне не страшно делать несовместимое изменение.

https://github.com/rusefi/rusefi/commit/4e91b721c366f68680a1a971c2f298fa578b14ed и https://github.com/rusefi/rusefi/commit/0893e5094928667b386eab4437232c8bf55003d4
https://github.com/rusefi/rusefi/commit/ec47e857ef3e1ce792836279468811d710f6f60b

про useLinear - можно начнём с порнографии использования странным образом существующих полей конфигурации странным образом?

У меня этот июнь необычно геморройный месяц, извиняюсь за лаконичность.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
meXanicus
contributor
contributor
Posts: 314
Joined: Sat Dec 21, 2013 2:42 pm
Location: Russia, Rostov-na-Donu

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by meXanicus »

О отлично. У меня с ДАД и термисторами, тоже были непонятности. Я вбивал известные мне тарировки из Января, на котором и ездил мой Ситроен. Но цифры температур и давлений которые показывал русЕФИ были кривыми. Я грешил на делители в схеме. Пытался подбирать пары резисторов поточнее, цифры улучшились, но совсем проблема не решилась. Хорошо, что появился такой человек как Ты, кто может посмотреть код и сделать тесты внутри софта. Я не могу. Спасибо!
Я на Drive2 Alfa Romeo 156 SW
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by puff »

andreika, скажи про шаговик, что нужна галочка инверсии хода (ведь в секу наверняка есть!?)
тьфу. прочитал issue - я еще в январе об этом говорил)
тьфу, а это и есть январское! :D :D
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

russian wrote:У меня этот июнь необычно геморройный месяц, извиняюсь за лаконичность.
Спасибо, что находишь время на проект и на мои "хотелки"!
puff wrote:я еще в январе об этом говорил
Да, именно твой issue я и видел.
И как раз написал небольшой PR на эту тему! :roll:
Правда, в самих настройках его пока нет (я туда не лезу - боюсь сломать совместимость - это лучше Андрею делать), но сам функционал инверсии я добавил, и он уже работает!
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

andreika wrote:И как раз написал небольшой PR на эту тему!
Спасибо Андрею, что оперативно добавил поддержку stepperDirectionPinMode! :D
Также большая просьба добавить ещё один параметр в rusefi_config - starterBlockPin, по аналогии с mainRelayPin (И заодно, если найдётся свободное место, starterBlockPinMode).
Я завтра под это дело хотел бы написать соответствующий PR... :oops:
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by AndreyB »

А нужны ли для таких необычных дел выделенные стандартные пины? это очень похоже на fsio пины настраиваемые?
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

russian wrote:А нужны ли для таких необычных дел выделенные стандартные пины? это очень похоже на fsio пины настраиваемые?
Я исходил из того, что это стандартная фича платы, под которую изначально закреплён выделенный пин. Т.е. на плате есть универсальные Out1 и Out2, которые юзер как раз может назначать через fsio, а есть mainRelay, ECF (fan), starterblock, fuelpump. Т.е. я отношу starterBlock именно к стандартным фичам, в отличие от, скажем, shift light, потому что стартёр есть практически у всех, и все его используют. Это востребованная фича, практически без недостатков. Да и для управления втягивающим реле стартёра достаточно всего лишь обычного реле - это доступно многим. Кроме того, управление реле стартёра относится непосредственно к компетенции ЭСУД, т.к. оно завязано на пороговое сравнение rpm и cranking_rpm.

Конечно, я согласен, что fsio, по задумке, идеально подходит для таких вещей. Но у текущей реализации, на мой взгляд, есть несколько недостатков:
- fsio пока не полностью представлен в GUI. Выбор пинов есть, но ввод формул - только через команды Консоли; Как мне добавить этот новый fsio, без резета моего текущего конфига? Через команды. А что будет в случае резета конфига? Они потеряются. Значит, нужно дублировать их и в коде.
- если формула зашита программно в прошивке (типа "setFsio(1, GPIOE_6, COMBINED_WARNING_LIGHT)"), то как её потом отредактировать (дописать) в настройках Консоли/TS? А как временно отключить, не потеряв маппинг пина?..
- нет удобной возможности посмотреть, какой функционал уже назначен на какие fsio-пины (в Консоли нужна обратная конвертация из RPN в human readable форму?);
- у формул (выражений) и пинов нет кастом-имён, и неискушенный сторонний юзер может не понять (вспомнить), к чему относится тот или иной пин/выражение;
- нет готовых презетов выражений с описаниями (или хотя бы с говорящими именами), которые юзер мог бы просто выбрать из списка (combo-box), чтобы не вводить руками;
Сразу оговорюсь, что я не критикую, а излагаю свои примитивные представления о ситуации (которые вполне могут быть ошибочны :oops:).

Хотя, если подумать, то проблема кроется не столько в fsio, сколько в текущей реализации конфигурации (настроек) как таковой... Похоже, что недостаточная гибкость в представлении данных (и их сериализации) несколько затрудняет добавление новых фичей. Например, нет банальной возможности зашить мои текущие настройки в качестве дефолтного конфига в .hex прошивки (или в качестве исходников a la config/engines/). В общем, ситуация неоднозначная и, как говорится, at your discretion... :roll:
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by AndreyB »

Очень хорошие идеи, их надо реализовывать :) невозможно реализовать в прошивке все сценарии, настраиваемые ввод-вывод очень потенциально полезны. https://github.com/rusefi/rusefi/issues/369

в моих розовых мечтах и стратегия рассчёта топлива, и еще много, много чего могли бы писаться на своём предметно-ориентированном языке
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
andreika
donator
donator
Posts: 461
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by andreika »

russian wrote:настраиваемые ввод-вывод очень потенциально полезны.
По такому случаю я позволил себе легонько доработать блокировку стартёра через fsio - см. соответствующий PR.
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977)

Post by AndreyB »

Красота :) Последние три недели ты пишешь кода больше, чем я :)
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Post Reply