diff --git a/firmware/config/engines/bmw_e34.cpp b/firmware/config/engines/bmw_e34.cpp
index cdd7c96285..5f77caba22 100644
--- a/firmware/config/engines/bmw_e34.cpp
+++ b/firmware/config/engines/bmw_e34.cpp
@@ -59,4 +59,9 @@ void setBmwE34(engine_configuration_s *engineConfiguration) {
engineConfiguration->hasCltSensor = false;
engineConfiguration->hasIatSensor = false;
+ /**
+ * This saves a couple of ticks in trigger emulation methods
+ */
+ bc->triggerSimulatorPins[1] = GPIOD_2;
+ bc->triggerSimulatorPins[2] = GPIOD_3;
}
diff --git a/firmware/controllers/system/efiGpio.cpp b/firmware/controllers/system/efiGpio.cpp
index 40f396b43d..5a7976d486 100644
--- a/firmware/controllers/system/efiGpio.cpp
+++ b/firmware/controllers/system/efiGpio.cpp
@@ -19,6 +19,8 @@ int getOutputPinValue(io_pin_e pin) {
/**
* @brief Sets the value according to current electrical settings
+ *
+ * This method costs about 85 ticks
*/
void setOutputPinValue(io_pin_e pin, int logicValue) {
#if EFI_PROD_CODE
diff --git a/firmware/dump_iar.bat b/firmware/dump_iar.bat
new file mode 100644
index 0000000000..8dac7cfbae
--- /dev/null
+++ b/firmware/dump_iar.bat
@@ -0,0 +1 @@
+arm-none-eabi-objdump -S iar/Debug/exe/ch.out > iar.dump
\ No newline at end of file
diff --git a/firmware/iar/ch.ewp b/firmware/iar/ch.ewp
index ea82ba65c1..314021d32d 100644
--- a/firmware/iar/ch.ewp
+++ b/firmware/iar/ch.ewp
@@ -184,11 +184,11 @@