Schematic and PCB review - custom rusEfi board Subaru svx eg33

This means Hellen
Post Reply
User avatar
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Schematic and PCB review - custom rusEfi board Subaru svx eg33

Post by Dron_Gus »

Hi All,

I'm finishing my own RusEFI fork PCB. It would be nice if someone can review and comment schematic. (and PCB later).
So it is STM32F7xx (144 pins) based variant for subaru impreza <= 1996 and legacy <= 1994.
PCB are being designed to fit OEM case. Also I'm trying to keep connectors pinout same as original ECU.
One aux connector is added. AFR, CAN and power ignitors signals are routed to this connector. For further upgrade.

I tried to use as much of specialized ICs as possible (as oposite to original RusEFI HW):
Power supply - TLE7368 TLE7368E:
- 2.5A bulk 5.5V converter, 5V LDO, 3.3 LDO + AUX LDO, two 5V followers for powering external sensors.
- Low power standby regulator - used to power back-up part of STM32.
- On/off/keep power logic
- watchdog
Voltage reference for ADC and AFR - AD1582 or 1:2 divided voltage from 5V rail.
-0.6V bias generator for OpAmp power. To get real rail-to-rail. Not sure if it really needed course near 0V values are not used at any of inputs.

Inputs:
MAX9926 - for camshaft and crank sensors.
TPIC8101 - for knock sensing. Ref clock is soutrced from STM32
MAX31855 - for EGT.
8 (2 x 4) OpAmps for analog inputs + dividers, protection and so on.
MC33972 - for discrete inputs. As it has 22 inputs all analog inputs also routed to this chip. It has mux so voltage at any input can be readed by external ADC. 8 inputs can detect switch to battery or ground. 14 can detect switch to ground only. IRQ and Wake up. Configurable pull-up current.

Outputs:
MC33810 - to drive ignitors and injectors. Also set of ignitor IGBTs will be on PCB, outputs will be available through additional connector. IC capable to detect missfires trough feedback, protect coils from overcharge and so on.
TLE6240G - for driving relays, idle valve, 5th injector, wastgate solenoid, lamps and so on. 8 outputs directly driven throught dedicated inputs or over SPI. 8 more are controlled over SPI.
ISP772T - high side switch to control self-shutdown signal.

AFR:
(some discossion was on Russian-side of forum)
fully discrete. :)
Virtual ground generator - OpAmp with K=1.
Voltage controlable current source for pump. Controlled from DAC output.
Diff amp to measure pump current.
One more voltage to current convertor to measure VS output resistanse. Also driven by DAC.
Mosfet for heater. Heater voltage and current sense.

Interfaces:
CAN
LIN
micro-SD slot
Two USB connectors. HS and FS. HS with OTG support.
Onboard HC-05 or ESP32.
Expansion connector with all unused MCU signals. Acctually not much left.

Misc:
QSPI flash for data/code storage
3 LEDs + status led for each power rail.

Comments and suggestions are wellcome.

What i don't like in my own schematic
1. 3.3V to 5V converter for spi. I will check all DSs once again, maybe I'll figure out how to make all 5V spi users be happy with 3.3V signals. At least knock sensor needs 70% of Vdd on inputs for "1". :(
2. too complicated AFR.
3. Analog inputs.
4. too much spi busses.
Attachments
rusefi-ej20g-30Dec2018.pdf
(592.2 KiB) Downloaded 820 times
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Schematic and PCB review - custom rusEfi board

Post by puff »

1. What's the trigger wheel on your subaru? Are you sure, MAX chip will be able to decode it?
2. are you sure in your coding skills? (to control all those chips)
User avatar
kb1gtt
contributor
contributor
Posts: 3758
Joined: Tue Sep 10, 2013 1:42 am
Location: ME of USA

Re: Schematic and PCB review - custom rusEfi board

Post by kb1gtt »

Max chip can decode Subaru wheels. However it's beneficial to use Operating Mode B. For minimal components, Frankenso uses Operating Mode A2. If you use 9926 in mode B, you'll loose some hall input options. The problem is with the adaptive peak detector. When at very low RPM it cranks the gain up and causes false triggers. If you use mode B, the gain is set via the MCU. It might be worth considering MAX9925 or MAX9927, as those can use the internal bias, instead of an external bias. You can save a couple components if you can use one of those chips.
Welcome to the friendlier side of internet crazy :)
User avatar
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

puff wrote:
Sun Dec 30, 2018 2:41 pm
1. What's the trigger wheel on your subaru? Are you sure, MAX chip will be able to decode it?
2. are you sure in your coding skills? (to control all those chips)
1. I had old-school subaru with old-style pattern http://www.vems.hu/wiki/index.php?page=InputTrigger%2FSubaruTrigger . But later I can change to newer one crank and cam wheels with 32-2-2-2 http://www.vems.hu/wiki/index.php?page=InputTrigger%2FSubaruThirtySixMinusTwoMinusTwoMinusTwo
2. yep. not sure about spare time... Most of this chips either supported by RusEFI (like TPIC8101 and MAX31855), or need minimum initialization to work as dumb gpio-driven switch (MC33810 and TLE6240G)
Last edited by Dron_Gus on Sun Dec 30, 2018 3:22 pm, edited 1 time in total.
User avatar
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

kb1gtt wrote:
Sun Dec 30, 2018 3:03 pm
Max chip can decode Subaru wheels. However it's beneficial to use Operating Mode B. For minimal components, Frankenso uses Operating Mode A2. If you use 9926 in mode B, you'll loose some hall input options. The problem is with the adaptive peak detector. When at very low RPM it cranks the gain up and causes false triggers. If you use mode B, the gain is set via the MCU. It might be worth considering MAX9925 or MAX9927, as those can use the internal bias, instead of an external bias. You can save a couple components if you can use one of those chips.
Thanks. I was trying to understand difference between all these modes. But then I decided that it is not first priority question. So I'm trying to keep schematic universal for all MAX992*. I'll check this part to see if it compatible with all variants.
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Schematic and PCB review - custom rusEfi board

Post by puff »

As far as I recall, there was some hardcoded threshold time in MAX chip (sort of a watchdog), and with that weird subaru trigger wheel during cranking it was always resetting the chip?
User avatar
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

puff wrote:
Sun Dec 30, 2018 3:18 pm
As far as I recall, there was some hardcoded threshold time in MAX chip (sort of a watchdog), and with that weird subaru trigger wheel during cranking it was always resetting the chip?
Watchdog is disabled in modes B and C as far as I understand.
User avatar
kb1gtt
contributor
contributor
Posts: 3758
Joined: Tue Sep 10, 2013 1:42 am
Location: ME of USA

Re: Schematic and PCB review - custom rusEfi board

Post by kb1gtt »

This was the problem.
MAX datasheet wrote:If the input signal voltage remains lower than the adaptive peak threshold for more than 85ms, an internal watchdog timer drops the threshold level to a default minimum threshold (VMIN_THRESH). This ensures pulse recognition recovers even in the presence of intermittent sensor connection.
When you have more than 85mS per tooth, it causes problems. The problem with some Subaru crank wheels is that when cranking you have more than 85mS per tooth, which causes it to fail to sync.
Welcome to the friendlier side of internet crazy :)
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: Schematic and PCB review - custom rusEfi board

Post by AndreyB »

I can get with software if I get a board in my mail - the more stuff would be soldered to the board, the higher are the changes of me helping :) Hate soldering.
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
kb1gtt
contributor
contributor
Posts: 3758
Joined: Tue Sep 10, 2013 1:42 am
Location: ME of USA

Re: Schematic and PCB review - custom rusEfi board

Post by kb1gtt »

Is this drawn in PCB program that I have access to? Is this done in OrCAD?

In general it looks like you have it drafted.
Welcome to the friendlier side of internet crazy :)
User avatar
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

kb1gtt wrote:
Tue Jan 01, 2019 2:38 am
Is this drawn in PCB program that I have access to? Is this done in OrCAD?

In general it looks like you have it drafted.
It is done in pcad 2006. Of course I can share sch and pcb if someone still use/have pcad :)
I can also try to convert it to altium.
User avatar
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

russian wrote:
Sun Dec 30, 2018 4:17 pm
I can get with software if I get a board in my mail - the more stuff would be soldered to the board, the higher are the changes of me helping :) Hate soldering.
Ok. Will keep in mind that I need +1 board. :)
User avatar
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

kb1gtt wrote:
Sun Dec 30, 2018 3:41 pm
This was the problem.
MAX datasheet wrote:If the input signal voltage remains lower than the adaptive peak threshold for more than 85ms, an internal watchdog timer drops the threshold level to a default minimum threshold (VMIN_THRESH). This ensures pulse recognition recovers even in the presence of intermittent sensor connection.
When you have more than 85mS per tooth, it causes problems. The problem with some Subaru crank wheels is that when cranking you have more than 85mS per tooth, which causes it to fail to sync.
I thought this WD is disabled in some B or C mode. It is not clear from DS.
User avatar
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

Thanks everyone for comments.
First rev was send to fab.
Hope there is no critical bugs left.
User avatar
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

Finally!

Properly set-up all EFI_CONSOLE_UART_DEVICE, EFI_USE_UART_FOR_CONSOLE, TS_SERIAL_UART_DEVICE and so on for custom board is real hell.
Attachments
Screenshot from 2019-04-01 11-40-55.png
Screenshot from 2019-04-01 11-40-55.png (403.58 KiB) Viewed 37085 times
20190401_101938.jpg
20190401_101938.jpg (4.05 MiB) Viewed 37085 times
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: Schematic and PCB review - custom rusEfi board

Post by AndreyB »

Sorry to hear that :( can you PR any comments which would have helped you?
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
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

russian wrote:
Mon Apr 01, 2019 9:09 am
Sorry to hear that :( can you PR any comments which would have helped you?
Your yesterdays comments help a lot. Before PR I'd like to understand if any of boards really uses CONSOLE_MODE_SWITCH_PIN.
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: Schematic and PCB review - custom rusEfi board

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
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

Board updated to support Subaru EG33 engine (H6). Actually can support up to 8 cylinders + 2 ETB
Screenshot from 2019-12-17 12-31-22.png
Screenshot from 2019-12-17 12-31-22.png (300.51 KiB) Viewed 36451 times
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: Schematic and PCB review - custom rusEfi board

Post by AndreyB »

Sooooo maaaaaaanyyyyy boards. Have you seen https://rusefi.com/forum/viewtopic.php?f=4&t=1646

I am dreaming software developers doing software things :cry:
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
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

russian wrote:
Wed Dec 18, 2019 1:02 am
Sooooo maaaaaaanyyyyy boards. Have you seen https://rusefi.com/forum/viewtopic.php?f=4&t=1646

I am dreaming software developers doing software things :cry:
Yes. I saw it. Connectors are cool. Discrete output FETs are not. :)
I hope this PCB will not have any critical bugs. And I'll finally run my car on RusEFI.
Also I hope this winter in S-Pb will be cold enough to hold me at home doing some SW stuff instead of repair works in garage.

I hate wiring, so I definitely need p'n'p HW.
mck1117
running engine in first post
running engine in first post
Posts: 1493
Joined: Mon Jan 30, 2017 2:05 am
Location: Seattle-ish

Re: Schematic and PCB review - custom rusEfi board

Post by mck1117 »

Dron_Gus wrote:
Wed Dec 18, 2019 6:49 am
Discrete output FETs are not. :)
Hey, they're not discrete, they're paired overtemp/overcurrent/active clamp drivers!
Dron_Gus wrote:
Wed Dec 18, 2019 6:49 am
I hate wiring, so I definitely need p'n'p HW.
Ok well yeah in that case, you shouldn't run a Proteus :P
User avatar
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

mck1117 wrote:
Sat Dec 21, 2019 3:27 am
Hey, they're not discrete, they're paired overtemp/overcurrent/active clamp drivers!
Sorry, sorry, But in any case it is better to have some feedback. Like "I'm too hot to keep working". TLE6240 and MC33810 both provide such feedback.
User avatar
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

Some progress.
Attachments
20200224_130000.jpg
20200224_130000.jpg (3.73 MiB) Viewed 36078 times
20200224_125934.jpg
20200224_125934.jpg (3.12 MiB) Viewed 36078 times
20200224_125922.jpg
20200224_125922.jpg (3.54 MiB) Viewed 36078 times
sleepingAwake
Posts: 113
Joined: Fri Jan 13, 2017 4:15 am
Location: CT

Re: Schematic and PCB review - custom rusEfi board

Post by sleepingAwake »

Any running Subaru's?
User avatar
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

sleepingAwake wrote:
Sat Jul 04, 2020 11:25 pm
Any running Subaru's?
No yet. I'm too slow and lazy.
Gepro
Posts: 100
Joined: Sun Nov 01, 2020 2:15 pm
Location: France

Re: Schematic and PCB review - custom rusEfi board

Post by Gepro »

Hello,

did you try the EGT input ? If yes, did it work ?

Thanks,
User avatar
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

Gepro wrote:
Sun Dec 20, 2020 10:34 am
Hello,

did you try the EGT input ? If yes, did it work ?

Thanks,
Not yet. But I tried similar chip on other project - works just fine.

But, please note that stock Subaru engines have unknown EGT sensor... Actually I'm not sure that Subaru EGT sensors are termocouples.
User avatar
Dron_Gus
contributor
contributor
Posts: 450
Joined: Wed Nov 13, 2013 1:11 pm
Location: S-Pb
Github Username: dron0gus

Re: Schematic and PCB review - custom rusEfi board

Post by Dron_Gus »

sleepingAwake wrote:
Sat Jul 04, 2020 11:25 pm
Any running Subaru's?
One year later... https://rusefi.com/forum/viewtopic.php?f=2&t=2031
Post Reply