work in progress Project: Poncho

Your chance to introduce yourself and your vehicle
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Project: Poncho

Post by AndreyB »

yes, Frankenso uses the 64 connector, it is included with the kit but not included with just a pcb. The used honda ecu plug works with that connector.

https://www.tindie.com/products/russian/64p-ecu-connector/
https://www.tindie.com/products/russian/58-pin-pigtail-for-the-64-pin-connector-3/
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
mck1117
running engine in first post
running engine in first post
Posts: 1494
Joined: Mon Jan 30, 2017 2:05 am
Location: Seattle-ish

Re: Project: Poncho

Post by mck1117 »

Reopening the discussion on 24x crank trigger decoding, erm because reasons. I definitely don't have a freshly rebuilt one in my garage, or anything...

Image

Image

I rewrote the trigger setup to use the exact values, instead of guessing (though the guesses were pretty close, within ~2 degrees). My question is, why does #1 TDC not equal the 0 point for the trigger config?

I'm running basically the same code on an Arduino to generate a fake cam and crank signal.

Image

The top channel is cam, middle is crank, and bottom is #1 ignition output.

Why is the phasing wrong? Ignition settings are all locked to 0 degrees timing. The trigger's zero point is the same as where #1 TDC should be.
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Project: Poncho

Post by AndreyB »

Do you have a pull request with this code? Do you have a unit test within your PR showing sync point value?

Usually trigger synchronization point does not match TDC and most trigger definitions have the trigger offset to accommodate. Could it be that your trigger definition needs this offset?

Am I completely missing the point?
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: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Project: Poncho

Post by AndreyB »

Code: Select all

	/**
	 * Trigger indexes within trigger cycle are counted from synchronization point, and all
	 * engine processes are defined in angles from TDC.
	 *
	 * That's the angle distance from trigger event #0 and actual engine TDC
	 *
	 * see also globalTriggerAngleOffset
	 */
	angle_t tdcPosition;

...
#define tdcPosition() \
		(ENGINE(triggerCentral.triggerShape.tdcPosition) + CONFIG(globalTriggerAngleOffset))

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
mck1117
running engine in first post
running engine in first post
Posts: 1494
Joined: Mon Jan 30, 2017 2:05 am
Location: Seattle-ish

Re: Project: Poncho

Post by mck1117 »

russian wrote:
Sat Oct 13, 2018 1:15 pm
Usually trigger synchronization point does not match TDC and most trigger definitions have the trigger offset to accommodate.
Wait, what? Why? That seems like a terrible design. Is there a deterministic way to determine where the synchronization point is?
Last edited by mck1117 on Sun Oct 14, 2018 7:22 am, edited 2 times in total.
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Project: Poncho

Post by AndreyB »

Trigger synchronization depends on trigger shape and the location of magical synchronization tooth. Synchronizatuon tooth does not have to be at engine TDC. In order to live in TDC coordinated we have offset.

I am open to suggestions and ideas.
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
mck1117
running engine in first post
running engine in first post
Posts: 1494
Joined: Mon Jan 30, 2017 2:05 am
Location: Seattle-ish

Re: Project: Poncho

Post by mck1117 »

russian wrote:
Sun Oct 14, 2018 3:53 am
location of magical synchronization tooth
How does the trigger system determine which tooth is the magical sync tooth? For some trigger patterns (n-m like 60-2) it's an obvious case that the first tooth after the gap is the sync tooth, but what about something like 8-2-2-2 or GM's 24x pattern?

PS: For the 24x pattern, EVERY tooth is a magic sync tooth, if you can remember the pattern of the past 5 teeth. If you rotate the crank 90 degrees, you can uniquely identify where you are in the revolution. It's a pretty genius design.
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Project: Poncho

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
mck1117
running engine in first post
running engine in first post
Posts: 1494
Joined: Mon Jan 30, 2017 2:05 am
Location: Seattle-ish

Re: Project: Poncho

Post by mck1117 »

Sorry for the latency, been super busy working on other cool stuff... https://www.youtube.com/watch?v=IzV_xrisMko

Back to things that don't run in a datacenter: Yeah, I've seen how it finds the sync tooth (looks for a tooth between some ratios of a "normal" tooth length). But for the LS sequence, there's no such thing as a "normal tooth", "long tooth" or "short tooth". If you looked for a bunch of teeth the same, then one different, you'd never find it. Even if you looked for a long tooth, then a short tooth, you'd find that pattern a bunch of times. Like I said, to decode the LS signal, the decoder has to keep track of the length of six consecutive teeth (not just the last one or two). This is conveniently 1/4 rotation of the crank, so you can achieve full sync in a little over a quarter turn of the engine.

edit: PR filed for LS crank pattern https://github.com/rusefi/rusefi/pull/614
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Project: Poncho

Post by AndreyB »

Yes, this trigger is created for quick firing up the engine (not that rusEfi support it but that's a longer story)

Evil trigger - all sequences of length 3 are repeating at least twice. I believe the shortest unique sequence is 270-286-300-315, length of 4. This would require adding that fourth length of history into the decoder? Kind of doable with existing copy-pasting nasty approach.
mck1117 wrote:
Fri Oct 12, 2018 6:19 am
Image
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
mck1117
running engine in first post
running engine in first post
Posts: 1494
Joined: Mon Jan 30, 2017 2:05 am
Location: Seattle-ish

Re: Project: Poncho

Post by mck1117 »

Post Reply