DEAD DESIGN rusEfi own wide band controller board add-on using CJ125

Hardware inside and outside of the ECU
Abricos
contributor
contributor
Posts: 849
Joined: Mon Aug 18, 2014 12:32 am
Location: Carteret, NJ 07008

Re: rusEfi own wide band controller board add-on using CJ125

Post by Abricos »

first test of https://github.com/rusefi/hw_modular/blob/master/cj125_Module/Modular_CJ125_Schematic.pdf LQFP-32 board is a failure

connections between wideband control to discovery
SS - pb11
si - pb15
so - pb14
sck - pb13


from console
2020-04-30_17_51_57_572: EngineState: confirmation_cj125_info:10
2020-04-30_17_51_57_572: EngineState: cj125: state=7 diag=0x0 (vUa=1.457 vUr=0.700) (vUaCal=0.000 vUrCal=0.000)
2020-04-30_17_51_57_573: EngineState: cj125 SPI_DEVICE_2 mosi=PB15
2020-04-30_17_51_57_575: EngineState: cj125 SPI_DEVICE_2 miso=PB14
2020-04-30_17_51_57_601: EngineState: cj125 SPI_DEVICE_2 sck=PB13
2020-04-30_17_51_58_676: EngineState: confirmation_cj125_restart:13
2020-04-30_17_51_58_676: EngineState: cj125: state=0 diag=0x0 (vUa=1.462 vUr=0.702) (vUaCal=0.000 vUrCal=0.000)
2020-04-30_17_51_58_676: EngineState: cj125 SPI_DEVICE_2 mosi=PB15
2020-04-30_17_51_58_676: EngineState: cj125 SPI_DEVICE_2 miso=PB14
2020-04-30_17_51_58_678: EngineState: cj125 SPI_DEVICE_2 sck=PB13
2020-04-30_17_51_58_707: EngineState: cj125: Check ident=0x0 diag=0x0 init1=0x0 init2=0x0
2020-04-30_17_51_58_709: EngineState: cj125: Error! Wrong ident! Cannot communicate with CJ125!
2020-04-30_17_51_58_710: EngineState: cj125: Check ident=0x0 diag=0x0 init1=0x0 init2=0x0
2020-04-30_17_51_58_713: EngineState: cj125: Error! Wrong ident! Cannot communicate with CJ125!
2020-04-30_17_51_58_714: EngineState: cj125: Starting calibration...
2020-04-30_17_51_58_716: EngineState: cj125: Calibration error (init1=0x00)! Failed!


TunerStudioDebugPackage.zip
(523.62 KiB) Downloaded 370 times
CJ125.rar
(383.3 KiB) Downloaded 402 times
IMG_20200430_175257.jpg
IMG_20200430_175257.jpg (4.21 MiB) Viewed 23562 times
User avatar
AndreyB
Site Admin
Posts: 14280
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: rusEfi own wide band controller board add-on using CJ125

Post by AndreyB »

Nick, I've loaded your tune and it just works for me with older rectangular chip 0.3 board :(
Attachments
cj125_info_works_for_me.png
cj125_info_works_for_me.png (51.42 KiB) Viewed 23556 times
IMG_20200430_184400.jpg
IMG_20200430_184400.jpg (590.67 KiB) Viewed 23556 times
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
Abricos
contributor
contributor
Posts: 849
Joined: Mon Aug 18, 2014 12:32 am
Location: Carteret, NJ 07008

Re: rusEfi own wide band controller board add-on using CJ125

Post by Abricos »

we back to Rusefi WBC R0.3
2020-04-30_19_36_11_515: EngineState: cj125: state=1 diag=0x51 (vUa=1.454 vUr=0.702) (vUaCal=1.464 vUrCal=0.704)



2020-04-30_19_36_11_515: EngineState: confirmation_cj125_info:10
2020-04-30_19_36_11_515: EngineState: cj125: state=1 diag=0x51 (vUa=1.454 vUr=0.702) (vUaCal=1.464 vUrCal=0.704)
2020-04-30_19_36_11_516: EngineState: cj125 SPI_DEVICE_2 mosi=PB15
2020-04-30_19_36_11_516: EngineState: cj125 SPI_DEVICE_2 miso=PB14
2020-04-30_19_36_11_518: EngineState: cj125 SPI_DEVICE_2 sck=PB13
2020-04-30_19_36_42_566: EngineState: confirmation_cj125_restart:13
2020-04-30_19_36_42_567: EngineState: cj125: state=0 diag=0x51 (vUa=1.460 vUr=0.704) (vUaCal=1.464 vUrCal=0.704)
2020-04-30_19_36_42_567: EngineState: cj125 SPI_DEVICE_2 mosi=PB15
2020-04-30_19_36_42_567: EngineState: cj125 SPI_DEVICE_2 miso=PB14
2020-04-30_19_36_42_569: EngineState: cj125 SPI_DEVICE_2 sck=PB13
2020-04-30_19_36_42_569: EngineState: cj125: Check ident=0x60 diag=0x50 init1=0x89 init2=0x10
2020-04-30_19_36_42_570: EngineState: VM Short to GND
2020-04-30_19_36_42_570: EngineState: UN Short to GND
2020-04-30_19_36_42_596: EngineState: IA Low Voltage
2020-04-30_19_36_42_598: EngineState: HR open load
2020-04-30_19_36_42_599: EngineState: cj125: Loading stored calibration data (6000 2884)
IMG_20200430_193854.jpg
IMG_20200430_193854.jpg (3.72 MiB) Viewed 23548 times
User avatar
AndreyB
Site Admin
Posts: 14280
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: rusEfi own wide band controller board add-on using CJ125

Post by AndreyB »

So Nik's SOIC-24 at least responds on SPI. We see violet 0.3 board https://github.com/rusefi/rusefi/blob/master/hardware/CJ125_board/CJ125_Schematic.pdf


But Nik's LQFP-32 - the green 0.1 is a different board https://github.com/rusefi/hw_modular/blob/master/cj125_Module/Modular_CJ125_Schematic.pdf
this one seems to not respond on SPI?
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
JRD McLAREN
contributor
contributor
Posts: 434
Joined: Mon Mar 04, 2019 10:19 pm
Location: Slovakia

Re: rusEfi own wide band controller board add-on using CJ125

Post by JRD McLAREN »

I can test my "old" R0.41 with new firmware ..
if it will be helpful . ...
.. some Proteus and microRusEFI for sale in Europe ..
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: rusEfi own wide band controller board add-on using CJ125

Post by mck1117 »

JRD McLAREN wrote:
Fri May 01, 2020 7:42 am
I can test my "old" R0.41 with new firmware ..
if it will be helpful . ...
That code hasn't been changed in quite a while, and it worked for abricos on the old board (and same firmware). Probably not necessary.
User avatar
AndreyB
Site Admin
Posts: 14280
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: rusEfi own wide band controller board add-on using CJ125

Post by AndreyB »

While we are testing LQFP-32 module I am unable to find any legit distributor for that part, maybe I am doing it wrong?

LQFP-32 part numbers are 1267379260 and 0272240103? Are there part numbers?

SOIC-24 is available only from one legit distributor TME in Europe? 108 in stock today.

And then there is CJ125BA with PLCC28 and QFN28 packages and that one is available from one seller only from Poland.

I think things are not promising for rusEFI CJ125 unless we known some OEM ECU as a source for used parts?
Attachments
cj125_SOIC-24_stock.png
cj125_SOIC-24_stock.png (143.71 KiB) Viewed 23445 times
QFN28_many.png
QFN28_many.png (163.78 KiB) Viewed 23445 times
PLCC28CG_not_many.png
PLCC28CG_not_many.png (193.47 KiB) Viewed 23445 times
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: 14280
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: rusEfi own wide band controller board add-on using CJ125

Post by AndreyB »

"Bosch 30522" is the magic eBay query for LQFP-32 part, and that's the one on 2006 Passat ECU. Worst case scenario we will grab those at a junk yard I guess.

Actually three of our friends are here - CJ125 as 30522 and 7209 and 6244
Attachments
passat_2006.jpg
passat_2006.jpg (833.73 KiB) Viewed 23443 times
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
infinityedge
Posts: 17
Joined: Fri Dec 27, 2019 4:43 pm

Re: rusEfi own wide band controller board add-on using CJ125

Post by infinityedge »

AndreyB wrote:
Sun May 03, 2020 6:13 pm
I think things are not promising for rusEFI CJ125 unless we known some OEM ECU as a source for used parts?
Is a CJ125 just excessive complexity?

14point7's open source wideband controller just has two PID controllers (actually PI controllers), one for the heater and one for Ia with the heater PWM controlled. Why can't all that be done with existing rusEFI software and hardware?

https://www.14point7.com/products/sigma-lambda-controller-free-2
User avatar
AndreyB
Site Admin
Posts: 14280
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: rusEfi own wide band controller board add-on using CJ125

Post by AndreyB »

infinityedge wrote:
Sun May 03, 2020 6:57 pm
Why can't all that be done with existing rusEFI software and hardware?
Let me answer this universal question with a universal answer, in two parts. See https://github.com/rusefi/rusefi/wiki/I_have_an_idea
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
JRD McLAREN
contributor
contributor
Posts: 434
Joined: Mon Mar 04, 2019 10:19 pm
Location: Slovakia

Re: rusEfi own wide band controller board add-on using CJ125

Post by JRD McLAREN »

AndreyB wrote:
Sun May 03, 2020 6:13 pm
I think things are not promising for rusEFI CJ125 unless we known some OEM ECU as a source for used parts?
Not many "stock" BOSCH ECU has this chip . ...

And another reason for "not to use old chip" is ..
LSU 4.2 and LSU 4.9 sensor capability.

Old versions is for LSU 4.2 only.

No "mark" or "chip number" can tell you this information.
Many of CJ125 chip has no identify number on it. (some numbers only)

(...yes, it is BOSCH)
.. some Proteus and microRusEFI for sale in Europe ..
infinityedge
Posts: 17
Joined: Fri Dec 27, 2019 4:43 pm

Re: rusEfi own wide band controller board add-on using CJ125

Post by infinityedge »

AndreyB wrote:
Sun May 03, 2020 7:16 pm
infinityedge wrote:
Sun May 03, 2020 6:57 pm
Why can't all that be done with existing rusEFI software and hardware?
Let me answer this universal question with a universal answer, in two parts. See https://github.com/rusefi/rusefi/wiki/I_have_an_idea
Would the CJ125 hardware and software interface to rusEFI take less human resources to complete than adding a couple PID controllers in software?

I'm not seeing much difference in what is needed than what already exists for alternator control.

More generally, a PID controlled PWM highside or lowside driver can be used for a bunch of EFI functions: alternator control, return-less fuel pump, or wideband heater and Ia control. It just seems like existing resources could be applied to the problem easier than a grey market IC submodule.
Last edited by infinityedge on Sun May 03, 2020 9:05 pm, edited 1 time in total.
User avatar
AndreyB
Site Admin
Posts: 14280
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: rusEfi own wide band controller board add-on using CJ125

Post by AndreyB »

infinityedge wrote:
Sun May 03, 2020 8:57 pm
Would the CJ125 hardware and software interface to rusEFI take less human resources to complete than adding a couple PID controllers in software?
Two or three people have rusEFI CJ125 HW and SW working. Documentation needs to be improved and open question if more boards should have CJ125 HW and using which one of four CJ125 packages (unless we go multi-footprint).
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: rusEfi own wide band controller board add-on using CJ125

Post by kb1gtt »

Some history,
-- Bosch made WO2 sensors and chips to interface there proprietary magic with an MCU.
-- I think Waltech was the first to make a real open source WO2 circuit. It uses op-amps, and mostly discrete components, and mimics what the Bosch chip does. Waltech's stuff is not OEM and not AEQ certified, etc. However it appears to work reasonably well, even though it is not perhaps exactly the same.
https://waltech.com/cszcms/wide-band-oxygen-sensor-project-report
-- At about the same time that Waltech made the open source WO2, someone else made and proprietary WO2 which does a dithering thing on part of the circuit. This kind of breaks up the hysteresis of the circuit, and decreases the amount of time until it gets to an accurate reading. However I understand the rapid temperature changes may shorten the life of the sensor, as it increases thermal fatigue. Real data does not exist, so perhaps is shortens the 50k mile life to 45k mile, or perhaps it does not change it at all.
-- After Waltech releases his circuit, 14p7 starts to sell a WO2, which was basically the exact same as Waltech circuit, but using a PSoC, which allows the circuit to be made more proprietary, and physically smaller. Waltech eventually makes SLCFree perhaps out of international goodwill, perhaps out of GPL issues. 14p7 also developed a WO2 on his own, which allows him to keep is proprietary. In his own version, he also adds some improvements. Perhaps the dithering noted in another product, perhaps better PID of the heater.

At the end of the day, Bosch made the sensor, and they have a good balance between reliability and performance. While other circuits can be made, or other products can be purchased, the CJ125 is AEQ, and it has a good history behind it, which includes lots of validation data to back up the design decisions that were made in the chip. Basically no after market option can uphold this level of design. Yes some op-amps, and fairly basic circuits can be made, which removes the CJ125. However we can save a lot of development time by spending $5 on the CJ125 and get a functional feature quicker.
Welcome to the friendlier side of internet crazy :)
User avatar
AndreyB
Site Admin
Posts: 14280
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: rusEfi own wide band controller board add-on using CJ125

Post by AndreyB »

AndreyB wrote:
Sun May 03, 2020 6:30 pm
"Bosch 30522" is the magic eBay query for LQFP-32 part,
30615 on AliExpress is even better :)
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: 1493
Joined: Mon Jan 30, 2017 2:05 am
Location: Seattle-ish

Re: rusEfi own wide band controller board add-on using CJ125

Post by mck1117 »

Interesting finding:

I cracked open my AEM 30-4110 gauge just for fun, and look what I found inside!

Image

That's a genuine Bosch CJ125!
User avatar
AndreyB
Site Admin
Posts: 14280
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: rusEfi own wide band controller board add-on using CJ125

Post by AndreyB »

Does _anyone_ run rusEFI cj125? We are looking for example of known good CJ125 output for either 4.2 or 4.9 sensor

Our current detailed but unhappy output is at https://github.com/rusefi/rusefi/issues/1460
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
Abricos
contributor
contributor
Posts: 849
Joined: Mon Aug 18, 2014 12:32 am
Location: Carteret, NJ 07008

Re: rusEfi own wide band controller board add-on using CJ125

Post by Abricos »

AndreyB wrote:
Wed May 20, 2020 11:16 pm
Does _anyone_ run rusEFI cj125? We are looking for example of known good CJ125 output for either 4.2 or 4.9 sensor

Our current detailed but unhappy output is at https://github.com/rusefi/rusefi/issues/1460
Board R0.3
SHOf429
Posts: 70
Joined: Sun May 24, 2020 11:37 pm

Re: rusEfi own wide band controller board add-on using CJ125

Post by SHOf429 »

https://github.com/rusefi/rusefi/issues/1452#issue-619888534

I found CH135 listed as a controller for the next generation of wbo2 sensors.

http://www.bosch-semiconductors.com/media/automotive_systems_ics/pdf_1/ic_engine_management/bosch_ic_cj135.pdf

Again, not a proper data sheet but a product brochure. Does indicate that it is not pin compatible with the CJ125.
Josh
94 Ford Taurus SHO
Frankenso in progress
texasgdp754
Posts: 17
Joined: Mon Nov 18, 2019 11:48 pm

Re: rusEfi own wide band controller board add-on using CJ125

Post by texasgdp754 »

I plan to do some testing with adv sensor. I was also supposed to update github with info on the open issue. Lifes been too busy to sit down and do it . Maybe soon. . Existing Cj125 is compatible with all lsu sensors depending on software and selection of a few resistors and capacitors. and we actually have a datasheet and a few working examples of cj125 hardware on rusefi with lsu 4.9 and 4.2. No real reason to look into a new ic for wideband until we nail this one down the rest of the way.
telewizoor
Posts: 3
Joined: Wed Jun 24, 2020 7:49 am

Re: rusEfi own wide band controller board add-on using CJ125

Post by telewizoor »

Hello,

some time ago I buyed some CJ125BA chips. This week I started to work with it but I found some problems :D My chip is in QFN28 housing with dot in one corner. I can't find any datasheet with this chip in QFN28, there is PLCC28 but with dot in the middle of one side of chip so I'm not sure if this pinout is proper for my chip.
Has anybody worked with CJ125 in qfn28? I will be gratefull for any help. Today I should received 3v3<->5v converter so I will try to run it with stm32f0.

Thanks for great content on forum :)

UPDATE:
It looks like pinout from PLCC28 is correct but pin numbers is shifted by 4, eg. GND is on 26, not 1. I connected 5V to 16 and 17, GND to 25 and 26 and I have 0.5*Vcc on 18pin(VM, virtual ground) so I assume it is correct.
Unfortunately i can't communicate with sensor. I have nucleo board, SPI configured to 16bits, MSB first, 2MHz, clock polarity Low, phase 1 Edge, gpio spi pins pulled down. I'm trying to read 0x48 register but I still got nothing and MISO is still low.
User avatar
AndreyB
Site Admin
Posts: 14280
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: rusEfi own wide band controller board add-on using CJ125

Post by AndreyB »

Ahmad wrote:
Tue Aug 13, 2019 2:17 pm
L9780 has internal ADC and is newer than CJ125.
And L9780 is properly available https://octopart.com/search?q=L9780

it would be amazing if some group of heroes gets us working hardware and software!
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
Kavabanga
Posts: 66
Joined: Sat Apr 13, 2019 9:07 pm

Re: rusEfi own wide band controller board add-on using CJ125

Post by Kavabanga »

Hello everyone!
I've got some issues with my CJ125 board with square chip:
The fist one, which I noticed is when i attach +5v to +5v pin, LEDs on +5v and +12 lines do light. If I connect +12v to +12 pin, i can see, that just +12V led is lighting. I checked PCB for short circuit and didn't find it. What could it be?
Here is just a photo of my PCB
image.png
image.png (1.6 MiB) Viewed 20906 times
telewizoor
Posts: 3
Joined: Wed Jun 24, 2020 7:49 am

Re: rusEfi own wide band controller board add-on using CJ125

Post by telewizoor »

Hello, I have another problem with my board - without UN pullup to VCC(eq several kOhms) I have diag = 0xF0 but with pullup UR readings are strange(optimal 2.5V and with heating never reachable) and I can't proper regulate the temperature... Do you have any ideas?
basshunter98
Posts: 1
Joined: Mon Mar 22, 2021 2:24 pm

Re: rusEfi own wide band controller board add-on using CJ125

Post by basshunter98 »

Hi guys nice project! I think i got a counterfeit 30481 cj125 lot, can somebody make some resistance measurements between ub and gnd and between diahd and diahg? (should be pin 6-7 of SOIC24, other packages should have different pinouts)
I hope someone helps me!
JRockland
Posts: 33
Joined: Sat Mar 06, 2021 4:20 pm
Location: Canada

Re: rusEfi own wide band controller board add-on using CJ125

Post by JRockland »

Going trough that topic real quick, does it mean rusefi doesnt support wide band sensor yet ?
User avatar
AndreyB
Site Admin
Posts: 14280
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: rusEfi own wide band controller board add-on using CJ125

Post by AndreyB »

JRockland wrote:
Tue Mar 23, 2021 3:45 pm
Going trough that topic real quick, does it mean rusefi doesnt support wide band sensor yet ?
https://github.com/rusefi/rusefi/wiki/WBO
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: 1493
Joined: Mon Jan 30, 2017 2:05 am
Location: Seattle-ish

Re: rusEfi own wide band controller board add-on using CJ125

Post by mck1117 »

AndreyB wrote:
Tue Mar 23, 2021 4:44 pm
https://github.com/rusefi/rusefi/wiki/WBO
Wow, that wiki page is pretty bad and completely skips any mention of analog wideband input.

@JRockland, we do support wideband oxygen sensors. There are a few options:
  1. External controller with analog output, like then AEM 30-4110 and similar products.
  2. External controller with CAN interface, like the AEM X-Series wideband controller/gauge. There is also a rusEFI controller under development that does not use the Bosch ASIC that is hard to get ahold of.
  3. That rusEFI controller will also eventually live inside the ECU too.
JRD McLAREN
contributor
contributor
Posts: 434
Joined: Mon Mar 04, 2019 10:19 pm
Location: Slovakia

Re: rusEfi own wide band controller board add-on using CJ125

Post by JRD McLAREN »

OT:
Now I'm try to do something with STAG AFR ... :arrow:
.. some Proteus and microRusEFI for sale in Europe ..
telewizoor
Posts: 3
Joined: Wed Jun 24, 2020 7:49 am

Re: rusEfi own wide band controller board add-on using CJ125

Post by telewizoor »

Hello,

I got the BOSCH 30615 qfp32 from Mercedes EDC16 ECU, put it instead of my cj-125-QFN28 and now everything works fine. Heater PID works fine, lambda output tested with firelighter and looks good. I will try to deal with cj125 in qfn28 but I think the best option for now is to buy broken/cheap edc16(mercedes 2.2cdi) or edc17 and get cj125 from ECU.

PS I dont use rusefi but my circuit is almost the same so it will work with rusefi I think...
Post Reply