For discussion of Speeduino compatible boards designed / built by other members of the forum and for guidance around making such a board
By dazq
#44485
If the 722 code is written in a compatible way then yes , but it will never get merged as a main firmware so you would need to start your own fork and maintain it. Better to have two ECU.
By zarboz
#45292
Curious when I choose this board in tunerstudio board type
Should I be choosing A or B version by you?


Or Is there a ini that supports this board

I ask because when I go to test mode I only have 4 injector and 4 ignition to test
And none of the tests fire the right outputs

I started to make my own layout in into.ino but wanted to ask before going further if you had setup for V1 to work properly
By NickZ
#45299
zarboz wrote: Wed Sep 09, 2020 9:39 pm Curious when I choose this board in tunerstudio board type
Should I be choosing A or B version by you?


Or Is there a ini that supports this board

I ask because when I go to test mode I only have 4 injector and 4 ignition to test
And none of the tests fire the right outputs

I started to make my own layout in into.ino but wanted to ask before going further if you had setup for V1 to work properly
You won't be able to use more than 4 injectors or 4 ignition without code modification and the test mode wont have more than 4 available currently.
By zarboz
#45307
What I am confused about is that the teensy code should support 8x8 seeing as how the global def for a teensy is 8x8 declared in globals.h
I read your post in the thread about your teensy board

Outlining it’s limited to 9 being 6x3
I’ll have to look at git but doesn’t Pasis board run in a 6x6 sequential on just arduino bringing the total to 12 ?

Example straight from Joshes git declaring the teensy as a 8x8 capable board (stm32 capable of this as well according to globals.h)

https://github.com/noisymime/speeduino/ ... bals.h#L43

Code: Select all
#elif defined(CORE_TEENSY)
  #if defined(__MK64FX512__) || defined(__MK66FX1M0__)
    #define CORE_TEENSY35
    #define BOARD_H "board_teensy35.h"
    #define SD_LOGGING //SD logging enabled by default for Teensy 3.5 as it has the slot built in
  #elif defined(__IMXRT1062__)
    #define CORE_TEENSY41
    #define BOARD_H "board_teensy41.h"
  #endif
  #define INJ_CHANNELS 8
  #define IGN_CHANNELS 8

#elif defined(STM32_MCU_SERIES) || defined(ARDUINO_ARCH_STM32) || defined(STM32)
  #define CORE_STM32
  #if defined(STM32F4) //F4 can do 8x8
   #define INJ_CHANNELS 8
   #define IGN_CHANNELS 8

So I guess that being said..

Went ahead and popped this into init.ino in order to allow a choice of board from tuner studio...
Code: Select all
 #if defined(CORE_TEENSY35)
 case 32:
      pinInjector1 = 9; //Output pin injector 1
      pinInjector2 = 8; //Output pin injector 2
      pinInjector3 = 5; //Output pin injector 3
      pinInjector4 = 2; //Output pin injector 4
      pinInjector5 = 12; //Output pin injector 5
      pinInjector6 = 27; //Output pin injector 6
      pinInjector7 = 24;
      pinInjector8 = 25;
      pinCoil1 = 29; //Pin for coil 1
      pinCoil2 = 30; //Pin for coil 2
      pinCoil3 = 31; //Pin for coil 3
      pinCoil4 = 32; //Pin for coil 4
      pinCoil5 = 28; //Pin for coil 5
      pinCoil6 = 14; //Pin for coil 6
      pinCoil7 = 39;
      pinCoil8 = 22;
      pinTrigger = 23; //The CAS pin
      pinTrigger2 = 36; //The Cam Sensor pin
      pinTPS = 16;//TPS input pin
      pinMAP = 17; //MAP sensor pin
      pinIAT = A11; //IAT sensor pin
      pinCLT = A10; //CLS sensor pin
      pinO2 = A21;
      pinO2_2 = A22; //O2 Sensor pin
      pinBat = 15; //Battery reference voltage pin
      pinSpareHOut1 = 6;
      pinSpareHOut2 = 7;
      pinTachOut = 21; //Tacho output pin  (Goes to ULN2003)
      pinIdle1 = 10; //ICV pin1
      //pinIdle2 = 6; //ICV pin3
      pinBoost = 11; //Boost control
      pinVVT_1 = 48; //VVT output
      pinVVT_2 = 47; //Default VVT2 output
      pinFuelPump = 38; //Fuel pump output  (Goes to ULN2003)
      pinStepperDir = 13; //Stepper valve isn't used with these
      pinStepperStep = 35; //Stepper valve isn't used with these
      pinFan = 37; //Pin for the fan output (Goes to ULN2003)
      pinLaunch = 26; //Launch control pin
      pinFlex = 49; // Flex sensor
      //pinResetControl = 43; //Reset control output
      break;
#endif
Then Edited the speeduino.ini file so that the offset chosen for the SCG_V1 ecu matched the actual outputs for the board...

Code: Select all
I/O 0.1", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "Daz V6 Shield 0.1", "BMW PnP", "SCG_V1", "INVALID", 
Code: Select all
Code: Select all
 ;pinLayout     = bits,   U08,      15, [0:7],  "Speeduino v0.1", "Speeduino v0.2", "Speeduino v0.3", "Speeduino v0.4", "INVALID", "INVALID", "01-05 MX5 PNP", "INVALID", "96-97 MX5 PNP", "NA6 MX5 PNP", "Turtana PCB", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "Plazomat I/O 0.1", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "Daz V6 Shield 0.1", "BMW PnP", "SCG_V1", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NO2C", "UA4C", "INVALID", "INVALID", "INVALID", "DIY-EFI CORE4 v1.0", "INVALID", "INVALID", "INVALID", "INVALID", "dvjcodec Teensy RevA", "dvjcodec Teensy RevB", "INVALID", "INVALID", "INVALID", "DropBear", "INVALID", "INVALID", "INVALID", "INVALID", "Black STM32F407VET6 V0.1", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID"
    defaultValue = boardFuelOutputs,                4                 4                 4                 4                 4           4         4                 4         4                 4               4             4          4          4         4           4         4           4         4           4         4                   4           4         4           4          4          4         4           4         4           4                    6          8          4          4         4           4         4           4          4          4       4       4           4         4         4                     4           4         4           4         4                       4                       4          4          4          8          4           4           4         4         4                           4          4          4           4          4          4          4          4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4     
    defaultValue = boardIgnOutputs,                 4                 4                 4                 4                 4           4         4                 4         4                 4               4             4          4          4         4           4         4           4         4           4         4                   4           4         4           4          4          4         4           4         4           4                    6          8          4          4         4           4         4           4          4          4       4       4           4         4         4                     4           4         4           4         4                       4                       4          4          4          8          4           4           4         4         4                           4          4          4           4          4          4          4          4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4         4           4     
Now I have testable outputs that actually match up to the boards real life outputs

the only thing I am left struggling to figure out is why I cant triger IGN1/2 from the test mode
Every other output works fine in test mode.


All in all the short answer to my inquiry is no
the board doesnt have a setup that works in speeduino
you have to create the entries yourself

The other issue I am facing I am working on figuring out still as I am sure the pins are being overridden somewhere in my choices

I rewired a few grounds and tested the TPS and rel[…]

Thanks, car runs great now !!! Going to drift even[…]

sauver moteur v8

bonsoir je m appel jean marie et j habite en Franc[…]

Ignition Angle doubled?

I just erased the flash, went back to 2023-10, cre[…]

Still can't find what you're looking for?