auto-sync
This commit is contained in:
parent
29c56ac36c
commit
2fee72c75e
|
@ -9,25 +9,33 @@
|
|||
|
||||
#include "main.h"
|
||||
#include "GY6_139QMB.h"
|
||||
#include "engine_math.h"
|
||||
|
||||
void setGy6139qmbDefaultEngineConfiguration(
|
||||
engine_configuration_s *engineConfiguration) {
|
||||
board_configuration_s *boardConfiguration = &engineConfiguration->bc;
|
||||
|
||||
void setGy6139qmbDefaultEngineConfiguration(engine_configuration_s *engineConfiguration) {
|
||||
engineConfiguration->rpmHardLimit = 9000;
|
||||
engineConfiguration->cranking.rpm = 800;
|
||||
engineConfiguration->cranking.rpm = 1100;
|
||||
engineConfiguration->analogInputDividerCoefficient = 1.52;
|
||||
engineConfiguration->algorithm = LM_MAP;
|
||||
engineConfiguration->globalTriggerAngleOffset = 15;
|
||||
engineConfiguration->globalTriggerAngleOffset = 45;
|
||||
engineConfiguration->bc.analogChartMode = AC_MAP;
|
||||
engineConfiguration->specs.displacement = 0.072; // 72cc
|
||||
engineConfiguration->cylindersCount = 1;
|
||||
setOperationMode(engineConfiguration, FOUR_STROKE_CRANK_SENSOR);
|
||||
|
||||
engineConfiguration->firingOrder = FO_ONE_CYLINDER;
|
||||
|
||||
/**
|
||||
* We treat the trigger as 1/0 toothed wheel
|
||||
* We treat the trigger as 8-1 toothed wheel
|
||||
*/
|
||||
engineConfiguration->trigger.type = TT_TOOTHED_WHEEL;
|
||||
engineConfiguration->trigger.customTotalToothCount = 1;
|
||||
engineConfiguration->trigger.customSkippedToothCount = 0;
|
||||
engineConfiguration->trigger.customIsSynchronizationNeeded = false;
|
||||
engineConfiguration->trigger.customTotalToothCount = 8;
|
||||
engineConfiguration->trigger.customSkippedToothCount = 1;
|
||||
engineConfiguration->trigger.customIsSynchronizationNeeded = true;
|
||||
engineConfiguration->trigger.customNeedSecondTriggerInput = false;
|
||||
|
||||
boardConfiguration->injectionPins[0] = GPIOC_9;
|
||||
boardConfiguration->ignitionPins[0] = GPIOC_8;
|
||||
}
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
#include "MiniCooperR50.h"
|
||||
|
||||
void setMiniCooperR50(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration) {
|
||||
void setMiniCooperR50(engine_configuration_s *engineConfiguration) {
|
||||
engineConfiguration->trigger.type = TT_MINI_COOPER_R50;
|
||||
|
||||
}
|
||||
|
|
|
@ -11,6 +11,6 @@
|
|||
#include "main.h"
|
||||
#include "engine_configuration.h"
|
||||
|
||||
void setMiniCooperR50(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration);
|
||||
void setMiniCooperR50(engine_configuration_s *engineConfiguration);
|
||||
|
||||
#endif /* MINICOOPERR50_H_ */
|
||||
|
|
|
@ -54,7 +54,9 @@ static const ignition_table_t tps_advance_table = {
|
|||
};
|
||||
|
||||
|
||||
void setCitroenBerlingoTU3JPConfiguration(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration) {
|
||||
void setCitroenBerlingoTU3JPConfiguration(engine_configuration_s *engineConfiguration) {
|
||||
board_configuration_s *boardConfiguration = &engineConfiguration->bc;
|
||||
|
||||
engineConfiguration->engineType = CITROEN_TU3JP;
|
||||
|
||||
/**
|
||||
|
|
|
@ -10,6 +10,6 @@
|
|||
|
||||
#include "engine_configuration.h"
|
||||
|
||||
void setCitroenBerlingoTU3JPConfiguration(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration);
|
||||
void setCitroenBerlingoTU3JPConfiguration(engine_configuration_s *engineConfiguration);
|
||||
|
||||
#endif /* CITROENBERLINGOTU3JP_H_ */
|
||||
|
|
|
@ -198,7 +198,9 @@ static void common079721_2351(engine_configuration_s *engineConfiguration, board
|
|||
|
||||
}
|
||||
|
||||
void setMiata1990(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration) {
|
||||
void setMiata1990(engine_configuration_s *engineConfiguration) {
|
||||
board_configuration_s *boardConfiguration = &engineConfiguration->bc;
|
||||
|
||||
common079721_2351(engineConfiguration, boardConfiguration);
|
||||
|
||||
commonMiataNa(engineConfiguration, boardConfiguration);
|
||||
|
@ -402,7 +404,8 @@ static void setMiata1994_common(engine_configuration_s *engineConfiguration,
|
|||
* Frankenso board
|
||||
* set_engine_type 20
|
||||
*/
|
||||
void setMiata1994_d(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration) {
|
||||
void setMiata1994_d(engine_configuration_s *engineConfiguration) {
|
||||
board_configuration_s *boardConfiguration = &engineConfiguration->bc;
|
||||
setMiata1994_common(engineConfiguration, boardConfiguration);
|
||||
engineConfiguration->vbattDividerCoeff = ((float) (8.2 + 33)) / 8.2 * 2;
|
||||
/**
|
||||
|
@ -417,7 +420,8 @@ void setMiata1994_d(engine_configuration_s *engineConfiguration, board_configura
|
|||
boardConfiguration->idleValvePin = GPIO_UNASSIGNED;
|
||||
}
|
||||
|
||||
void setMiata1994_s(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration) {
|
||||
void setMiata1994_s(engine_configuration_s *engineConfiguration) {
|
||||
board_configuration_s *boardConfiguration = &engineConfiguration->bc;
|
||||
setMiata1994_common(engineConfiguration, boardConfiguration);
|
||||
engineConfiguration->vbattDividerCoeff = ((float) (10.0 + 33)) / 10 * 2;
|
||||
|
||||
|
@ -459,7 +463,8 @@ void setMiata1994_s(engine_configuration_s *engineConfiguration, board_configura
|
|||
/**
|
||||
* Tom tomiata, Frankenstein board
|
||||
*/
|
||||
void setMiata1996(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration) {
|
||||
void setMiata1996(engine_configuration_s *engineConfiguration) {
|
||||
board_configuration_s *boardConfiguration = &engineConfiguration->bc;
|
||||
commonMiataNa(engineConfiguration, boardConfiguration);
|
||||
engineConfiguration->specs.displacement = 1.839;
|
||||
|
||||
|
|
|
@ -15,9 +15,9 @@
|
|||
#include "engine_configuration.h"
|
||||
|
||||
void setFordEscortGt(engine_configuration_s *engineConfiguration);
|
||||
void setMiata1990(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration);
|
||||
void setMiata1994_d(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration);
|
||||
void setMiata1994_s(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration);
|
||||
void setMiata1996(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration);
|
||||
void setMiata1990(engine_configuration_s *engineConfiguration);
|
||||
void setMiata1994_d(engine_configuration_s *engineConfiguration);
|
||||
void setMiata1994_s(engine_configuration_s *engineConfiguration);
|
||||
void setMiata1996(engine_configuration_s *engineConfiguration);
|
||||
|
||||
#endif /* MAZDA_MIATA_H_ */
|
||||
|
|
|
@ -10,8 +10,8 @@
|
|||
#include "mazda_miata_nb.h"
|
||||
#include "thermistors.h"
|
||||
|
||||
void setMazdaMiataNbEngineConfiguration(engine_configuration_s *engineConfiguration,
|
||||
board_configuration_s *boardConfiguration) {
|
||||
void setMazdaMiataNbEngineConfiguration(engine_configuration_s *engineConfiguration) {
|
||||
board_configuration_s *boardConfiguration = &engineConfiguration->bc;
|
||||
// set_rpm_hard_limit 3000
|
||||
engineConfiguration->rpmHardLimit = 3000; // yes, 3k. let's play it safe for now
|
||||
|
||||
|
|
|
@ -11,6 +11,6 @@
|
|||
#include "main.h"
|
||||
#include "engine_configuration.h"
|
||||
|
||||
void setMazdaMiataNbEngineConfiguration(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration);
|
||||
void setMazdaMiataNbEngineConfiguration(engine_configuration_s *engineConfiguration);
|
||||
|
||||
#endif /* MAZDA_MIATA_NB_H_ */
|
||||
|
|
|
@ -23,7 +23,8 @@ void setFrankenstein_01_LCD(board_configuration_s *boardConfiguration) {
|
|||
boardConfiguration->HD44780_db7 = GPIOB_13;
|
||||
}
|
||||
|
||||
void setRoverv8(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration) {
|
||||
void setRoverv8(engine_configuration_s *engineConfiguration) {
|
||||
board_configuration_s *boardConfiguration = &engineConfiguration->bc;
|
||||
|
||||
setOperationMode(engineConfiguration, FOUR_STROKE_CRANK_SENSOR);
|
||||
engineConfiguration->trigger.type = TT_TOOTHED_WHEEL_36_1;
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
#include "engine_configuration.h"
|
||||
|
||||
void setFrankenstein_01_LCD(board_configuration_s *boardConfiguration);
|
||||
void setRoverv8(engine_configuration_s *engineConfiguration,
|
||||
board_configuration_s *boardConfiguration);
|
||||
void setRoverv8(engine_configuration_s *engineConfiguration);
|
||||
|
||||
#endif /* ROVER_V8_H_ */
|
||||
|
|
|
@ -592,7 +592,7 @@ void resetConfigurationExt(Logging * logger, engine_type_e engineType, Engine *e
|
|||
setGy6139qmbDefaultEngineConfiguration(engineConfiguration);
|
||||
break;
|
||||
case MAZDA_MIATA_NB:
|
||||
setMazdaMiataNbEngineConfiguration(engineConfiguration, boardConfiguration);
|
||||
setMazdaMiataNbEngineConfiguration(engineConfiguration);
|
||||
break;
|
||||
case MAZDA_323:
|
||||
setMazda323EngineConfiguration(engineConfiguration);
|
||||
|
@ -604,28 +604,28 @@ void resetConfigurationExt(Logging * logger, engine_type_e engineType, Engine *e
|
|||
setSaturnIonEngineConfiguration(engineConfiguration);
|
||||
break;
|
||||
case MINI_COOPER_R50:
|
||||
setMiniCooperR50(engineConfiguration, boardConfiguration);
|
||||
setMiniCooperR50(engineConfiguration);
|
||||
break;
|
||||
case FORD_ESCORT_GT:
|
||||
setFordEscortGt(engineConfiguration);
|
||||
break;
|
||||
case MIATA_1990:
|
||||
setMiata1990(engineConfiguration, boardConfiguration);
|
||||
setMiata1990(engineConfiguration);
|
||||
break;
|
||||
case MIATA_1994_DEVIATOR:
|
||||
setMiata1994_d(engineConfiguration, boardConfiguration);
|
||||
setMiata1994_d(engineConfiguration);
|
||||
break;
|
||||
case MIATA_1994_SPAGS:
|
||||
setMiata1994_s(engineConfiguration, boardConfiguration);
|
||||
setMiata1994_s(engineConfiguration);
|
||||
break;
|
||||
case MIATA_1996:
|
||||
setMiata1996(engineConfiguration, boardConfiguration);
|
||||
setMiata1996(engineConfiguration);
|
||||
break;
|
||||
case CITROEN_TU3JP:
|
||||
setCitroenBerlingoTU3JPConfiguration(engineConfiguration, boardConfiguration);
|
||||
setCitroenBerlingoTU3JPConfiguration(engineConfiguration);
|
||||
break;
|
||||
case ROVER_V8:
|
||||
setRoverv8(engineConfiguration, boardConfiguration);
|
||||
setRoverv8(engineConfiguration);
|
||||
break;
|
||||
case SUBARU_2003_WRX:
|
||||
setSubaru2003Wrx(engineConfiguration);
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
|
||||
rem this is about programming stm32 directly - i.e. without ST Link/SWD or anything.
|
||||
rem you need this if you've burned your st-link or if you have naked stm32 chip soldered somewhere
|
||||
|
||||
|
||||
arm-none-eabi-objcopy -O binary rusefi.elf rusefi.dfu
|
||||
|
||||
|
||||
|
||||
rem dfu-util-static.exe -a 0 -D fm_rusefi.dfu
|
|
@ -144,7 +144,7 @@ int main(void) {
|
|||
testMenuTree();
|
||||
|
||||
// resizeMap();
|
||||
printf("Success 20150127\r\n");
|
||||
printf("Success 20150207\r\n");
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
|
|
|
@ -313,32 +313,6 @@ static void testTriggerDecoder3(const char *msg, engine_type_e type, int synchPo
|
|||
printGapRatio = false;
|
||||
}
|
||||
|
||||
void testGY6_139QMB(void) {
|
||||
printf("*************************************************** testGY6_139QMB\r\n");
|
||||
|
||||
EngineTestHelper eth(GY6_139QMB);
|
||||
engine_configuration_s *ec = eth.ec;
|
||||
Engine *engine = ð.engine;
|
||||
engine_configuration_s *engineConfiguration = ec;
|
||||
|
||||
TriggerState state;
|
||||
assertFalseM("shaft_is_synchronized", state.shaft_is_synchronized);
|
||||
|
||||
TriggerShape * shape = ð.engine.triggerShape;
|
||||
|
||||
assertFalseM("shaft_is_synchronized", state.shaft_is_synchronized);
|
||||
assertEquals(0, state.getCurrentIndex());
|
||||
|
||||
int now = 0;
|
||||
state.decodeTriggerEvent(SHAFT_PRIMARY_UP, now++ PASS_ENGINE_PARAMETER);
|
||||
assertTrueM("shaft_is_synchronized", state.shaft_is_synchronized);
|
||||
assertEquals(0, state.getCurrentIndex());
|
||||
|
||||
state.decodeTriggerEvent(SHAFT_PRIMARY_DOWN, now++ PASS_ENGINE_PARAMETER);
|
||||
assertTrueM("shaft_is_synchronized", state.shaft_is_synchronized);
|
||||
assertEquals(1, state.getCurrentIndex());
|
||||
}
|
||||
|
||||
extern EventQueue schedulingQueue;
|
||||
|
||||
extern int mockTps;
|
||||
|
@ -517,7 +491,8 @@ void testTriggerDecoder(void) {
|
|||
|
||||
test1995FordInline6TriggerDecoder();
|
||||
testMazdaMianaNbDecoder();
|
||||
testGY6_139QMB();
|
||||
testTriggerDecoder2("testGY6_139QMB", GY6_139QMB, 0, 0.4375, 0.0);
|
||||
|
||||
testTriggerDecoder2("testFordEscortGt", FORD_ESCORT_GT, 0, 0.8096, 0.3844);
|
||||
testTriggerDecoder2("testMiniCooper", MINI_COOPER_R50, 121, 0.5222, 0.4959);
|
||||
testTriggerDecoder2("testRoverV8", ROVER_V8, 0, 0.4861, 0);
|
||||
|
|
Loading…
Reference in New Issue