This is the place for questions about things electrical and mechnanical...or any other automotive-related hardware issue.

Moderators: EDS50, cgrey8, 2Shaker, Jon 94GT

Post Reply
decipha

Re: Quarterhorse II update desired

Post by decipha » Thu Sep 03, 2015 11:27 am

I just swapped a quarterhorse at the moates estate last week, craig handed me a qh with the replaceable battery holder

no more worrying about a dead battery on it, that and with the correct resistor its a non issue

User avatar
Cougar281
Regular
Posts: 126
Joined: Mon Feb 15, 2010 1:38 pm

Re: Quarterhorse II update desired

Post by Cougar281 » Fri Sep 04, 2015 10:33 pm

What I've been told is at this point, there are only a few prototypes in existence, and that there pretty much certainly won't be anything on it until 2016. When in 2016, no idea.
1995 Mercury Cougar XR7 -
  • 2002 "Explorer" 4.6L V8
  • "Pink Top" F0TE-D9B Injectors
  • 2002 Mustang GT MAF
  • J-Modded 1999 Mustang GT 4R70W Trans
  • 22c Plugs
  • Cobra Radiator & Fan
  • 255LPH Fuel Pump
  • 180* T-Stat
  • 2004 Mustang GT PTP2 PCM
  • QH v1.6 & BE.

decipha

Re: Quarterhorse II update desired

Post by decipha » Mon Sep 28, 2015 11:19 am

the problem with the qh2 is that the sram isn't cheap, how many reasonable would shell out $500 for the qh2 when the quarterhorse for half the price does the exact same thing?

ollopa
Gear Head
Posts: 56
Joined: Tue May 18, 2010 2:02 am

Re: Quarterhorse II update desired

Post by ollopa » Mon May 16, 2016 3:35 am

decipha wrote:the problem with the qh2 is that the sram isn't cheap, how many reasonable would shell out $500 for the qh2 when the quarterhorse for half the price does the exact same thing?
I think you meant MRAM. QH1 is backed by SRAM and all SRAM is volatile. I wonder why QH couldn't just use flash memory like EEC-Tuner and TwEECer, though.
1994 Mustang GT, 351w (377 stroker), TFS heads, hydraulic roller lifters, 1.7 roller rockers, explorer intake, T4M0, Quarterhorse, SLC-DIY wideband AFR meter

User avatar
cgrey8
Administrator
Posts: 11304
Joined: Fri Jun 24, 2005 5:54 am
Location: Acworth, Ga (Metro Atlanta)
Contact:

Re: Quarterhorse II update desired

Post by cgrey8 » Mon May 16, 2016 6:54 am

ollopa wrote:I think you meant MRAM. QH1 is backed by SRAM and all SRAM is volatile. I wonder why QH couldn't just use flash memory like EEC-Tuner and TwEECer, though.
It could. But dealing with flash is more complicated where MRAM is a drop-in replacement for SRAM (from a logic/programming perspective).

Flash, on the other hand, requires that the writing processor:
  • Put the memory in "write" mode
  • Flash (i.e. erase) the sectors to be updated
  • Write the new data
  • Return the part to "read" mode
During this period, the other parts of the flash are not accessible. So performing a write while the EEC is also reading from the flash can't be done. This is why the TwEECer reverts to the stock tune when it is being written to. For most setups with aftermarket MAF and injectors, this means the engine can't be run since the stock tune isn't capable of running the engine...at least not run it well.

On the other hand, the QH can run the engine with no problems while a new tune is being written from the PC which was a significant selling point for the QH over the TwEECer. On the single-bank EECs, it accomplished this by maintaining 2 copies of your tune in memory. While writing to one, the QH is serving up the other tune. Then the PC writes the other tune, and the QH serves up the tune just written. With this, the EEC is never served a tune that's in the process of being replaced.

The QH has 2 SRAM chips although I don't believe that's related to its ability to write and read tunes simultaneously. It might have made programming the processor and CPLD-logic a little simpler, but even with a single SRAM chip, I believe this would've been possible. However it is not as common to have multiple flash parts on the same bus. So simply plopping down 2 flash parts probably wasn't an option or not an easy one to make work.

Now if the QH was something being developed today, my guess is a combination of DRAM and eMMC would likely be used. Altera makes an FPGA with a hardened ARM Cortex A9 processor so you could run a full-up Linux distro and glean all the benefits thereof including having Ethernet or Bluetooth wireless ability which would be far more convenient and reliable than USB. But that's not an insignificant development effort.
...Always Somethin'

89 Ranger Supercab, 331 w/GT40p heads, ported Explorer lower, Crane Powermax 2020 cam, FMS Explorer (GT40p) headers, aftermarket T5 'Z-Spec', GUFB, Moates QuarterHorse tuned using BE&EA

Member V8-Ranger.com

ollopa
Gear Head
Posts: 56
Joined: Tue May 18, 2010 2:02 am

Re: Quarterhorse II update desired

Post by ollopa » Mon May 16, 2016 7:33 am

The way I would have done it is to have an SRAM backed by the KAM power rail for working memory and flash for long-term storage. Whenever power is lost and restored, the contents of flash would be loaded to SRAM so you'd never be stuck with a dead car.

You could use DRAM in self-refresh mode when the car is is off, but I think the SRAM still has lower power consumption and 4Mbit 12ns SRAM can be had for less than $5, so it seems a reasonable choice.

An FPGA with a hard CPU core would be interesting, but you'd want to do it in such a way that you don't have to wait for Linux to boot before you can start your car. If it's only real function is an Ethernet and BT stack, it might be a little overkill to go with A9/Linux over a Cortex M4 and RTOS.

If only there were time to build all these ideas... :)
1994 Mustang GT, 351w (377 stroker), TFS heads, hydraulic roller lifters, 1.7 roller rockers, explorer intake, T4M0, Quarterhorse, SLC-DIY wideband AFR meter

User avatar
cgrey8
Administrator
Posts: 11304
Joined: Fri Jun 24, 2005 5:54 am
Location: Acworth, Ga (Metro Atlanta)
Contact:

Re: Quarterhorse II update desired

Post by cgrey8 » Mon May 16, 2016 8:29 am

ollopa wrote:The way I would have done it is to have an SRAM backed by the KAM power rail for working memory and flash for long-term storage. Whenever power is lost and restored, the contents of flash would be loaded to SRAM so you'd never be stuck with a dead car.
Yep. That would work too...but just wasn't what was done. I don't know how much built-in flash the processor has. But my guess is it isn't that much.
ollopa wrote:...You could use DRAM in self-refresh mode when the car is is off, but I think the SRAM still has lower power consumption and 4Mbit 12ns SRAM can be had for less than $5, so it seems a reasonable choice...
I think the SRAM is 55ns...or at least I think that's what Craig said it was back when I talked to him. But don't quote me on that. If you really want to know, check the PN and do some googling.
ollopa wrote:...An FPGA with a hard CPU core would be interesting, but you'd want to do it in such a way that you don't have to wait for Linux to boot before you can start your car...
Yeah 1st-time boot would take some time. But once booted, I believe it had the ability to be put in low-power sleep mode which could be held-up by the KAM power. Then woken back up to full speed with KOEOn.
ollopa wrote:...If it's only real function is an Ethernet and BT stack, it might be a little overkill to go with A9/Linux over a Cortex M4 and RTOS....
Probably a lot overkill. But I've had in my head for a number of years that I could abandon the whole idea of serving a stock tune and instead write the entire logic in something like C++ or maybe Java. Then use the FPGA to simply feed the EEC's processor opcodes to fetch its sensor data and receive data to write to its outputs. You could use the interrupts as sentinels to do timing and be aware of events. But when you are in control of memory (inc stack), you don't ever actually have to adhere to programming standards. You could ignore the concept of a stack so there's no stack to blow. Unless an ISR return actually unsets registers to allow other ISRs to be triggered, you wouldn't have to ever return from anything. You just have to make sure the PC never rolls over and goes to an address below 0x2000 (outside of your device's control). Otherwise just keep feeding the processor whatever you need it to do, pet its watchdog from time to time, and record when ISR's call their respective memory locations. The set of opcodes you'd ever need to feed the processor would be a vast subset of what's seen in a BIN. The work would be having the Linux processor keep enough stuff pipelined for the EEC processor to do to keep it busy. Obviously there's a WHOLE lot more to making that work. But I think it's possible to be done...basically turning the EEC processor into a coprocessor. And do all the control logic in an easier-to-read/easier-to-maintain language that can be updated and interfaced via a PC in a far more modern way. With devices like BeagleBones, it's becoming possible. The TI AM3358 processor it has 2 8-bit PRUs (Programable Realtime Unit) which could probably do what the TwEECer & QH CPLD is doing. So it's not completely outside the realm for something like this to get developed in the open source community as long as there was a hardware mfg that was willing to design the hardware aspect of it. I'm a firmware developer, so I could handle the Linux and programming aspects. What I couldn't do easily is make hardware. I'd be reliant on off-the-shelf parts like the BBB or Raspberry Pi which really aren't ideal for an automotive environment.

Oh yeah, and then there's writing a software frontend for this beast. Whether that be an HTML/JS interface served from a webserver in the device or an installed software like BinaryEditor would have to be also figured out.
...Always Somethin'

89 Ranger Supercab, 331 w/GT40p heads, ported Explorer lower, Crane Powermax 2020 cam, FMS Explorer (GT40p) headers, aftermarket T5 'Z-Spec', GUFB, Moates QuarterHorse tuned using BE&EA

Member V8-Ranger.com

ollopa
Gear Head
Posts: 56
Joined: Tue May 18, 2010 2:02 am

Re: Quarterhorse II update desired

Post by ollopa » Mon May 16, 2016 9:16 am

That's a pretty unusual concept :) I could see that working but if you're going to go to that extreme then you're probably better-off just playing with a MS instead. Of course I never really cared for their CPU choices and their code is a rather nasty mix of ASM and uninspiring C.

I still think you'd be better off starting with the MS hardware and replacing the CPU with something that wouldn't require hand-optimized ASM for the ISRs to meet timing than investing all that energy into a BBB EEC-orchestrator... Still an interesting idea!
1994 Mustang GT, 351w (377 stroker), TFS heads, hydraulic roller lifters, 1.7 roller rockers, explorer intake, T4M0, Quarterhorse, SLC-DIY wideband AFR meter

User avatar
Shaker666
Tuning Addict
Posts: 638
Joined: Sun Dec 19, 2004 3:57 am
Location: Tucson, AZ
Contact:

Re: Quarterhorse II update desired

Post by Shaker666 » Tue May 24, 2016 6:53 pm

My Gawd, the MS source makes me cringe; it's very poorly engineered from a software POV, hard to maintain. No way I'd choose one over an EEC setup, especially given the cost differential.
'89 Fox: 8.6:1 306, GT-40 lower, Blowzilla 2.2, ProM 92mm MAF, 90mm TB, LU80s, TwEECed A9L w/EDIS8
'79 Bronco: 8.5:1 408C-2V, Lightning lower, Cobra upper, LMAF, 65mm TB, 24# injectors, EDIS8, Moates F3, single O2
'66 Mustang: 10.5:1 289, Victor Jr. EFI intake, 90mm TB, LMAF, 30# injectors, CDAN4 TwEECed
'00 Mountaineer: 9.2:1 302, ported Perf. RPM2, LMAF, 65mm TB, LU24As, READ0, QH currently
'08 & '09 Buell XB12Ss, 1125CR: DDFI3 tuned via TunerPro RT

Post Reply

Who is online

Users browsing this forum: No registered users and 27 guests