Всякие глупые вопросы, терзающие меня

Это оффтопик или флудилка или курилка
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

лучше на вопрос ответь! (ну правда)
при переполнении - соседние переменные не задеваются?
счет переполняемой переменной начинается с начала?

и про одометр скажи своё экспертное мнение, плз - я его сделал и проверил на своей приборке с разными коэффициентами датчика скорости и с проверкой правдоподобности счета (в меру своих умений - выставлял скорость, с секундомером считал время пройденного пути, сверял скорость на спидометре и расчетную - все совпадало), а russian измывается и отказывается пулреквест принимать. скажи ему, что если не менять всего смысла его каунтера одометра не получится..
User avatar
Maxi
Sr Consultant
Sr Consultant
Posts: 786
Joined: Wed Oct 23, 2013 4:25 pm

Re: Всякие глупые вопросы, терзающие меня

Post by Maxi »

А Я не знаю. Потому что это просто не нужно знать! Просто откомпилируй и посмотри код (всегда так делаю когда что то не знаю).
Но это опять же совет для нормальных людей - у которых один и тот же компилятор гарантировано дает один и тот же код и которые сами себе проблемы на ровном месте не изобретают.
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

Вот! компиляторы менять - зло!
А про одометр?
User avatar
Maxi
Sr Consultant
Sr Consultant
Posts: 786
Joined: Wed Oct 23, 2013 4:25 pm

Re: Всякие глупые вопросы, терзающие меня

Post by Maxi »

puff wrote:Вот! компиляторы менять - зло!
А про одометр?
А что одометр? по моему все разжевано про одометр. Если кто то не понимает как работает подобная парадигма - ну это точно не мои проблемы.
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

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

Re: Всякие глупые вопросы, терзающие меня

Post by andreika »

puff wrote:так у меня как раз все ок, за исключением того что пул-реквест не взяли.
Может быть, попробовать убрать все магические числа из кода? Засунуть их в говорящую константу или дефайн с комментариями, чтобы не было вот этих "0.277*2.58)*256":

Code: Select all

engine->engineState.mazdaOdoCounter += (uint16_t)(engineConfiguration->vehicleSpeedCoef * speedConversionCoef);
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

может быть. но как туда vsseventcounter впендюрить и зачем?
и еще хз как работают эти оптимизации. преобразование типов тоже же небесплатное?
у меня оно случалось один раз при инициализации, а потом - быстрое целочисленное сложение. скорее всего компилятор его, конечно, оптимизирует, но to be on the safe side, я это прямо прописал...
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: Всякие глупые вопросы, терзающие меня

Post by AndreyB »

puff wrote: и еще хз как работают эти оптимизации. преобразование типов тоже же небесплатное?
http://wiki.c2.com/?PrematureOptimization
Плюс в твоём случае еще и оптимизация ценой дефекта - с твой оптимизацией замена коэффициента в онлайне не отрабатывает.
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
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

тоесть давайте хором просирать ресурсы, а потом думать, за счет чего бы их высвободить? ну ты сам-то головой думай?
к тому же
The key is balance. There are no answers, only questions.
тебе же и думать не пришлось...

про дефект - я не считаю это дефектом.
вот когда надо перезагружать плату, чтобы заработала выставленная в тюнер-студии частота RPM - вот это я считаю дефектом.
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: Всякие глупые вопросы, терзающие меня

Post by AndreyB »

@, наши мнения про использования ресурсов расходятся. Демократии в https://github.com/rusefi/rusefi совсем нет - поэтому твой PR в основную ветку не может пойти.
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
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

в предложеном @andreika виде войдет?
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: Всякие глупые вопросы, терзающие меня

Post by AndreyB »

puff wrote:в предложеном @andreika виде войдет?
Нет, потому что mazdaOdoCounter - это кажется всего-лишь engine->engineState.vssDebugEventCounter, на что-то умноженный.
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
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

осознал.
теперь хз как отменить всю ту байду что я понапечатал. как вернуться к первоначальной версии и отменить изменения?
вот уже час пытаюсь найти хоть какое-то разумное описалово.
делете форк, креате форк, клон, и опять прокачивать гигабайты по сети?
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: Всякие глупые вопросы, терзающие меня

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
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Всякие глупые вопросы, терзающие меня

Post by AndreyB »

Ты пожалуйста свои PR проверяй по возможности.
FATAL error: VSS: Not input pin PC2
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
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

фак. каюсь, не залил.
руководствовался второй картинкой отсюда
http://rusefi.com/forum/viewtopic.php?t=359
а почему ошибка?
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: Всякие глупые вопросы, терзающие меня

Post by AndreyB »

Так VSS это не аналоговых вход, это вход цифровых событий - как триггер, PA5 PC6 и так далее по списку, TIMxCH1 & TIMxCH2. ищи в коде по тексу ошибки, увидешь код проверки - увидишь список.
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
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

понял. вот зачем там эти зеленые провода. тогда придется оставить на pa5 - хотя туда были планы датчик холла повесить (оставшийся с трамблера)
хз какие пины там еще доступны на франкенштейне, так что пока так.
кстати, пока искал код
#if STM32_ICU_USE_TIM8
if (hwPin == GPIOC_6 ||
hwPin == GPIOC_7) {
return &ICUD9;
}
#endif
#if STM32_ICU_USE_TIM9
if (hwPin == GPIOA_2 ||
hwPin == GPIOA_3 ||
hwPin == GPIOE_5 ||
hwPin == GPIOE_6) {
return &ICUD9;
во всех остальных таймерах return &ICUD и номер таймера, а в TIM08почему-то выдается ICUD9 (хз что это все означает)
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: Всякие глупые вопросы, терзающие меня

Post by AndreyB »

puff wrote:во всех остальных таймерах return &ICUD и номер таймера, а в TIM08почему-то выдается ICUD9 (хз что это все означает)
https://github.com/rusefi/rusefi/commit/3e9ff64c8d7f4198bbd7f699f3a19820604cf316
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
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

а сейчас на билд-сервере какая реализация усб/уарта?

я все со своей траблой (в надежде что исправитс когда-нибудь) с рабочего бука обновил только что плату и девконсоль.
и если раньше в девконсоли разница между ожидаемым и полученным была 192-256-320 байт, то теперь проверил на последнем десятке пакетов - каждый раз не хватает только 64 байт!!! то есть очеивдно, улучшения есть. а теперь вопрос - почему так?
может там какую-то минимальную задержку вставить перед тем, как формировать пакет усб?
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

а еще судя по всему даже несмотря на эту проблему с усб мне удалось переключиться на свой конфиг мотора - иначе я не могу этого объяснить:
на буке делаю st-flash erase, свежая прошивка, свежая консоль, set engine_type 10 в условиях постоянного дисконнекта.

потом на стационарный комп, обновляю только консоль, подключаюсь к плате - а там уже родной ровер.

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

Re: Всякие глупые вопросы, терзающие меня

Post by andreika »

puff wrote:очеивдно, улучшения есть. а теперь вопрос - почему так?
Может, из-за недавних мелких оптимизаций типа CH_DBG_STATISTICS=FALSE?

P.S. puff, а где твоя ветка в "Машинах, газонокосилках"? http://rusefi.com/forum/viewtopic.php?f=3&t=586 - она?
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

а там писать пока не о чем
http://rusefi.com/forum/viewtopic.php?f=3&t=586

надо до машины добраться и хоть что-то собрать.

вкратце: карбовый мотор, есть желание переделать на инжектор.

куплен инжекторный впуск (правда, работоспособность форсунок под вопросом. как я понял, можно туда от жигулей-волги воткнуть)
поставлен репер 36/1 и датчик со схемой на lm1815. зимой перегонял авто в друго гараж - мой самопальный тахометр работал от этой без проблем. но осциллографом не смотрел и дискавери не подключал еще.

куплен модуль зажигания от жигулей с логическим управлением, но завести от русефи почему-то не удалось (есть подозрение что сам дурак, надо было сигнал инвертировать). по-быстрому собрал на ардуине - работала ок. нужно проверить и если все ок - купить второй.
куплен спартановский датчик кислорода - надо вварить гайку для установки.
куплен корпус под эбу.

нужно все привести в порядок, в корпус запихнуть и проводку провести. но вот уже очерденое лето, но пока никакой движухи..
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: Всякие глупые вопросы, терзающие меня

Post by AndreyB »

puff wrote:а сейчас на билд-сервере какая реализация усб/уарта?
сейчас там не-DMA, потому что там предпочтение отданно HIP-у.

Пойми меня - я 99% времени живу на USB, я не понимаю, почему оно не работает у тебя :( Что-то где не так. На винде работает? На mac не работает? Тогда нужно искать chibios demo и воспроизводить проблему на ней - пытаться локализовать, что именно сломанно? Может сломанно в chibios?

А еще есть https://github.com/rusefi/rusefi/issues/429 - он готов. Там можно сделать blockingFactor 200 или 150 и попробовать? Я это сделал ради телеметрии по радио, я там вообще на 9600 работаю.

Ой, правда 9600 кажется нужно руками прописывать. Давай-ка я тикет заведу https://github.com/rusefi/rusefi/issues/437
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
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

да блин, я сам не понимаю. оно перестало работать послет того, как эпыл переделала в новой ос свой усб-стек (может там в ohci и uhci поменялось что-то, или еще какие-то вещи).
но суть в том, что на старой макоси все окей работает - и тюнерстудия, и консоль.
а в новой макоси работает только тюнерстудия, а консоль - нет.

получается, в тюнерстудии работа с усб выполнена корректнее, чем в девконсоли
или тюнерстудия не использует тех команд, на которых консоль в новой оси спотыкается..

но пока что я отметил в свежей прошивке уменьшение этого расхождения, плюс то, что оно стало стабильным...
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

я опять с глупым вопросом.

научился рулить бензострелкой

теперь на приборке остались гореть значки!
(ABS)
((!))
руль со знаком восклицания
и ремни безопасности

полез гуглить контакты, набрел на эту страницу
http://rusefi.com/wiki/index.php?title=Vehicle:Mazda_Rx8_2004
The CAN-bus id's in the case of the RX-8 (and likely Mazda6 / MX-5)
ID 300 is turn off Steering Warning Light, minimum 0.5 sec timing. ID 212 is abs, dsc off, traction control warning and brake warning, minimum 0.5 sec timing. ID 420 is temp, oil pressure gauge, coolent level, battery (alternator), oil warning and check engine light, minimum 5 second timing.
а на гитхабе

Code: Select all

#define CAN_MAZDA_RX_RPM_SPEED 0x201
#define CAN_MAZDA_RX_STATUS_1 0x212
#define CAN_MAZDA_RX_STATUS_2 0x420
то есть 300 пакета вовсе нету

Code: Select all

	commonTxInit(CAN_MAZDA_RX_STATUS_2);
	txmsg.data8[0] = 0xFE; //Unknown
	txmsg.data8[1] = 0xFE; //Unknown
	txmsg.data8[2] = 0xFE; //Unknown
	txmsg.data8[3] = 0x34; //DSC OFF in combo with byte 5 Live data only seen 0x34
	txmsg.data8[4] = 0x00; // B01000000; // Brake warning B00001000;  //ABS warning
	txmsg.data8[5] = 0x40; // TCS in combo with byte 3
	txmsg.data8[6] = 0x00; // Unknown
	txmsg.data8[7] = 0x00; // Unused

	commonTxInit(CAN_MAZDA_RX_STATUS_2);
	txmsg.data8[0] = (uint8_t)(engine->sensors.clt + 69); //temp gauge //~170 is red, ~165 last bar, 152 centre, 90 first bar, 92 second bar
	txmsg.data8[1] = ((int16_t)(engine->engineState.vssEventCounter*(engineConfiguration->vehicleSpeedCoef*0.277*2.58))) & 0xff;
	txmsg.data8[2] = 0x00; // unknown
	txmsg.data8[3] = 0x00; //unknown
	txmsg.data8[4] = 0x01; //Oil Pressure (not really a gauge)
	txmsg.data8[5] = 0x00; //check engine light
	txmsg.data8[6] = 0x00; //Coolant, oil and battery
	if ((getRpmE(engine)>0) && (engine->sensors.vBatt<13)) {
		setTxBit(6, 6); // battery light
	}
	if (engine->sensors.clt > 105) {
		setTxBit(6, 1); // coolant light, 101 - red zone, light means its get too hot
	}
	//oil pressure warning lamp bit is 7
	txmsg.data8[7] = 0x00; //unused
	sendMessage();
а тут два раза commonTxInit и только один раз sendMessage()

про 300 пакет пока нашел только такой кусок кода (типа пустой пакет отправляют?)

Code: Select all

/* Turn off steering Warning */

if(steering == 0 ) {
   CAN.setMessageID (message_id_300);
   CAN.sendByte (0); 
}
глупый вопрос такой: чем оправдывается необходимость даже для малейшего изменения заводить пул-реквест? если речь о скорости - так ли уж это быстрее с точки зрения разработчика?
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: Всякие глупые вопросы, терзающие меня

Post by AndreyB »

О! ты прав - там пакет 300 не посылался совсем, и пакет CAN_MAZDA_RX_STATUS_1 кажется формировался и не посылался? и два раза было CAN_MAZDA_RX_STATUS_2 по ошибке? как-то починил, уж не знаю - стало ли лучше. https://github.com/rusefi/rusefi/commit/115a2c1c010b9b1bf3f025e436ccacc5b0d876a8 и https://github.com/rusefi/rusefi/commit/abbfdff5c4dc0e7806f90e9eaf5f390ce9e57a6c
puff wrote:глупый вопрос такой: чем оправдывается необходимость даже для малейшего изменения заводить пул-реквест? если речь о скорости - так ли уж это быстрее с точки зрения разработчика?
А какие альтернативы?
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
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

возвращаясь к своему барану, а сейчас есть возможность увидеть кол-во событий vss или тот debugcount устранен и все, теперь нет такой возможности? (чтобы можно было проехать сто метров, посмотреть счетчик и посчитать коэффициент)
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: Всякие глупые вопросы, терзающие меня

Post by AndreyB »

Добавил информацию в http://rusefi.com/wiki/index.php?title=Manual:Debug_fields

debugMode=VSS
if (engineConfiguration->debugMode == DBG_VEHICLE_SPEED_SENSOR) {
tsOutputChannels->debugIntField1 = engine->engineState.vssEventCounter;
}
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
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Всякие глупые вопросы, терзающие меня

Post by puff »

попался под руку usb-serial шнурок на пролифике
ну я его и подключил.
сначала он не хотел соединяться с консолью - на скорости 115К
я по мануалу подключил на 38К к терминалу, он ответил ок.
Снимок экрана 2017-08-04 в 14.06.24.png
Снимок экрана 2017-08-04 в 14.06.24.png (263.89 KiB) Viewed 18426 times
тогда я выставил эту скорость и на консоли - вроде подключилось.
но! в заголовке firmware=n/a- так и остается.
плюс раньше там вроде был удобный счетчик, мол, прошивка живая - теперь его нету...
Снимок экрана 2017-08-04 в 14.12.35.png
Снимок экрана 2017-08-04 в 14.12.35.png (271.75 KiB) Viewed 18426 times
то есть вроде как за решение сойдет - отдельный адаптер к плате.
но на что это указывает? очевидно, что-то не так в драйвере усб в чибиосе?

про debug fields - осталось понять, как применять эту табличку. в консоли ничего похожего не нашел. в описании в вики - понятно, для чего, но решительно не понятно, как пользоваться.
Post Reply