Looking for a picture of the LX470 climate control screen (1 Viewer)

This site may earn a commission from merchant affiliate
links, including eBay, Amazon, Skimlinks, and others.

Please a excuse a layman trying to understand how this works. The Teyes unit, Does it interface directly with the vehicle's can-bus wires, and you can send data to the can-bus through the OS? Does the Teyes retain the black AC amplifier mounted behind the factory screen?
Here's the basics - which will also help @wildsmith a bit. More details later:

The Teyes connects into the car in two ways. First, with direct wiring from the Teyes to the car's wiring harness. This is used to play audio to the speakers, detect the car's ACC turned on, provide power, etc. The second way it communicates with the car is via the canbus, which is a network communication system in the car that links all the ECUs together (kind of).

The Teyes doesn't connect to the CanBus directly because there are so many different types of cars with different types of canbus. Instead, each Teyes comes with a CanBus Decoder box. Those are made by a bunch of different companies that reverse engineer the CanBus communication in the vehicle and put all that logic into the CanBus Decoder box. The company that figured out the LC100 canbus and provides the decoder is Luzheng. That's why when you setup your Teyes canbus settings, you choose "LZ". That's the manufacturer of the canbus decoder. The Canbus decoder provides a serial interface to the Teyes and translates that to the two-wire canbus signal to the car.

There's not, as far as I know, a logical mapping between the data send from the Teyes to the Canbus decoder, and then from the decoder to the vehicle. For example, the canbus code for "Set the climate control to Auto" is 21. I'm not confident that 21 is also the code used between the decoder and the vehicle.

From the top, here's how the climate control app I built works:
1) It calls a system service running on the Teyes that provides CanBus notifications and commands. I send the command code 21 and command data "true" to set the climate system to Auto.
2) That service accepts the command and calls a JNI service, written in C++.
3) That JNI service has a serial port open to the canbus decoder box and sends the command code 21 and the data to the decoder.
4) The decoder translates that to the correct canbus command for our trucks and places the command on the canbus network
5) The truck accepts the command and sets the climate control to Auto. This will, in turn, result in the A/C turning on, for example.
6) The truck puts a "A/C is now on" notification on the canbus.
7) The canbus decoder sees that message and relays it over the serial port to the JNI service.
8) The JNI service relays it to the android service
9) The android service looks and says, "do any apps want to be notified of the A/C on notification?". It sees that my app is interested and sends the A/C on notificaiton to my app.
10) My app sets the A/C icon appropriately.

The interesting thing about all of this is that my app and the Teyes in general, is pretty "dumb". It doesn't know that turning the fan off also turns the A/C off. It doesn't know that going into defrost mode also disables the other vents. The truck climate ECU handles all of that. The teyes and the climate control app just send commands and interpret notifications.

Hope that provides some insight!
 
Here's the basics - which will also help @wildsmith a bit. More details later:

The Teyes connects into the car in two ways. First, with direct wiring from the Teyes to the car's wiring harness. This is used to play audio to the speakers, detect the car's ACC turned on, provide power, etc. The second way it communicates with the car is via the canbus, which is a network communication system in the car that links all the ECUs together (kind of).

The Teyes doesn't connect to the CanBus directly because there are so many different types of cars with different types of canbus. Instead, each Teyes comes with a CanBus Decoder box. Those are made by a bunch of different companies that reverse engineer the CanBus communication in the vehicle and put all that logic into the CanBus Decoder box. The company that figured out the LC100 canbus and provides the decoder is Luzheng. That's why when you setup your Teyes canbus settings, you choose "LZ". That's the manufacturer of the canbus decoder. The Canbus decoder provides a serial interface to the Teyes and translates that to the two-wire canbus signal to the car.

There's not, as far as I know, a logical mapping between the data send from the Teyes to the Canbus decoder, and then from the decoder to the vehicle. For example, the canbus code for "Set the climate control to Auto" is 21. I'm not confident that 21 is also the code used between the decoder and the vehicle.

From the top, here's how the climate control app I built works:
1) It calls a system service running on the Teyes that provides CanBus notifications and commands. I send the command code 21 and command data "true" to set the climate system to Auto.
2) That service accepts the command and calls a JNI service, written in C++.
3) That JNI service has a serial port open to the canbus decoder box and sends the command code 21 and the data to the decoder.
4) The decoder translates that to the correct canbus command for our trucks and places the command on the canbus network
5) The truck accepts the command and sets the climate control to Auto. This will, in turn, result in the A/C turning on, for example.
6) The truck puts a "A/C is now on" notification on the canbus.
7) The canbus decoder sees that message and relays it over the serial port to the JNI service.
8) The JNI service relays it to the android service
9) The android service looks and says, "do any apps want to be notified of the A/C on notification?". It sees that my app is interested and sends the A/C on notificaiton to my app.
10) My app sets the A/C icon appropriately.

The interesting thing about all of this is that my app and the Teyes in general, is pretty "dumb". It doesn't know that turning the fan off also turns the A/C off. It doesn't know that going into defrost mode also disables the other vents. The truck climate ECU handles all of that. The teyes and the climate control app just send commands and interpret notifications.

Hope that provides some insight!
Great insight
 
Impressive. The project went from zero to 100 faster than anything I can afford!
 
Here's the code for the app.


Here's a gist with the codes that you can use to interpret changes to the truck's systems:


The way to approach this if you want to do something similar is to:
1) Grab the latest CC3 firmware from the web
2) Use Firmware Tools Workbench to mount it on linux (FYT Firmware Workbench 2.0 - https://forum.xda-developers.com/t/fyt-firmware-workbench-2-0.4444267/)
3) Use a decompiler (like Jadx) to decompile the elable/app/com.syu.canbus apk file
4) Check out the file carinfo/lz/lexusIS/LuzLexusIsFrontAitControlAct
 
this is huge. Even the factory option to turn off the weirdly frequent climate popup is a bonus by itself. I thought something was wrong with the wiring or controls everytime the climate poped up. thanks!
 
@cryptyk Not a designer but I was thinking of something nostalgic of the good old navi. What do you think about this design?



design2.png

climate100-design-assets.png
 
Last edited:
  • Like
Reactions: Eph
Definitely. Can you let me know what the temperature range is on a stock Celsius truck, between lo and high?
Ahh - don't have a standard screen anymore.:) I do remember 17c being the lowest number.

The range of the T'eyes CC is:

HI
32c
then 0.5c increments from 31.5c to 17.5c
17c
LO

Fan settings go from 1 to 7, only the "OFF" button turns the fan setting to "0".
 
Last edited:
@cryptyk have you found anytime to update the UI on Climate 100? I've been using the Climate 100 a lot those bigger buttons would be nice. :)

I updated the design so the button look more like buttons

1680456432133.png
 
@cryptyk have you found anytime to update the UI on Climate 100? I've been using the Climate 100 a lot those bigger buttons would be nice :)
Unfortunately not. I with in an industry that's really busy this time of year but should have some free time after mid April
 
I know this thread is a few months old but I installed today and had a question: Is there anyway to get this working as a replacement for the snowflake icon?

Otherwise, this is awesome! A huge improvement over the factory app.
 
1. can be solved in the system settings.
I know this thread is a few months old but I installed today and had a question: Is there anyway to get this working as a replacement for the snowflake icon?

Otherwise, this is awesome! A huge improvement over the factory app.
1) Settings -> Factory -> 168 -> Original Car Agreement -> A/C Information
2) I looked for a way but not super obvious how to do that. I just pinned it to the bottom of my screen on the theme where you can put apps down there.
 
1. can be solved in the system settings.

1) Settings -> Factory -> 168 -> Original Car Agreement -> A/C Information
2) I looked for a way but not super obvious how to do that. I just pinned it to the bottom of my screen on the theme where you can put apps down there.
Ha! You beat me to the answer on #1. I just missed it earlier. I’m going to do some digging on #2 because I primarily use CarPlay
 
New to me 2007 LX470 and wanting to get the Teyes unit and it seems to be a few options to buy, which is the correct unit and adds to buy from their site?
 
This is soo awesome. Looks amazing. Will this work on other Lexus models? have a Teyes CC3 on my Lexus ISF and the teyes suppied climate app is horrible. The CANBUS adaptor they supplied is the LZ brand and in the canbus selection for my car its: LZ > TOYOTA > LEXUS IS > No Air.

I would really like to use this app. Would it work? How does it replace the factory one? In the settings if i turn on A/C information, it has a factory popup. Will this app be able to replace that popup?

Also my car is in celcius it goes in the following range:

LOW > 16 > 16.5 > 17 > ....................... 30 > HI

Will these ranges work on this app?

And finally, one annoying thing with the factory A/C Informaton popup is that if we have the A/C on AUTO and the car makes adjustments automatically to things like air direction and fan speed, then the popup keeps popping up annoyingly. Can this be fixed on this app?

Thanks for such great work. It's truely amazing
 
Also I noticed in the app there is no rear defroster icon. But on my car there is a rear defroster and the factory AC app has his that works too.
 

Users who are viewing this thread

Back
Top Bottom