Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can Bus Messages #1

Open
lgrunenberg opened this issue Jul 29, 2017 · 9 comments
Open

Can Bus Messages #1

lgrunenberg opened this issue Jul 29, 2017 · 9 comments

Comments

@lgrunenberg
Copy link

Hi i just found your cool project and I'm glad that i am not the only one tinkering with the CAN BUS in older opel cars. I just got a different car which does not have an ECC. Now i want to send custom data to the red boxes in the display that show the set temperature of the ecc. Do you have any recordings of the CAN messages responsible for sending those informations to the display? I would really appreciate any information. Unfortunately I can't sniff the data myself as the relevant unit does not exist in my car.

@JJToB
Copy link
Owner

JJToB commented Jul 29, 2017

Hi, thanks for the feedback.

I would like to share the data on a platform like a global can message database, but actually I am not aware of such a database.

You can check out my discovered messages in this document:
https://docs.google.com/spreadsheets/d/1kbOs6EbIcG8xg3m5WdGfle5bJ0CACrKgkLLmvfBtbTM/edit?usp=sharing

When you talk about "red boxes" I guess you have the color version of the display. It might be possible that you have to configure the display to accept messages from the ECC (either in bus-configuration and in the vehicle configuration of the Display). That must happen with a diagnosis system like Tech2, OP-Com or Vaux-Com.

@zalexzperez
Copy link

Hi, this may be the wrong place to post this question, but I was wondering if sending text to a GID display is also posible.
I'd like to grab the song and artist media info from Spotify on my phone and send it to an arduino via bluetooth module.

Thanks for making all these findings public!

@lgrunenberg
Copy link
Author

@zalexzperez by GID display do you mean the Astra H GID display? This is the same as the CID display from a communication standpoint. Therefore sending text to a GID display is definitely possible, although also for the GID display there is the problem that the radio periodically updates the display which can not be disabled. The MPi3 project circumvents this invalidating the message from the radio and sending a new one to the display. This is quite an ugly hack but to my knowledge this is so far the only way of sending custom messages to the display.

@zalexzperez
Copy link

Yes, I meant the Astra H GID display. Thanks for the detailed answer.

I was also wondering if I could send text even without the CD30 MP3 plugged in. As far as I remember it doesn't even have an AUX input mode, so in case it's possible I guess I'd have to invoke the AUX mode to do it in the first place.

@lgrunenberg
Copy link
Author

That would certainly be possible although you would have to emulate parts of the head unit to make the display listen for can messages. Think of when the head unit is switched off, in that case you are not able to navigate to the audio section of the display, that would also be the case when the head unit is missing. On the other hand you could modify the text that is displayed on the FM, AM or CD page of the display in the same way as the AUX page by the same method as used in the MPi3 project by changing the CAN Bus IDs and messages accordingly.

@zalexzperez
Copy link

Hi again.

I was reading the MPi3 display project and found a part mentioning that you can get some interesting parameters from the MSCAN like battery voltage, engine temp and RPM by asking the A/C controller by sending the 0x248 # 06 AA 01 01 07 10 11 packet.

But on this project MPi3.py file I see nothing about transmiting a packet with ID 248.

On the other hand, the Car-CAN-Message-DB/Opel/Astra/H/MS-CAN/Body.md file shows that you can get the engine temp from the packet: 4EC | 46:07:3C:29:00

So, how exactly can I get those interesting parameters? I'd like to display them on a separate OLED display.

Thanks in advance

@JJToB
Copy link
Owner

JJToB commented Mar 27, 2021

Hi, to clarify some things:
I was unable to find packages indicating the voltage on the MS-CAN Bus, but I'm sure there are.
But there is a diagnostic tool called "Tech" which can ask the devices for some diagnostic data which, for the ECC, include the voltage.
For example:
When you send 05 AA 01 07 10 11 to 248, you request following diagnostic blocks:
07 - Voltage in Byte 3
10 - Outdoor Temp in Byte1+2 and Engine Temp in Byte 3-4
11 - RPM in Byte 1+2, Speed in Byte4

You will then see three answers to 548 starting with the requested diagnostic block id, for example:
07 00 90 04 3D FE 70, the 0x90 is the voltage (144 / 10 = 14.4V).

For the ECC, there are diagnostic blocks from 0x01 to 0x13 but I haven't decoded much of them yet.

Like you already said, the Engine Temp is also sent to 0x4EC, so the best way to get that ist to just listen for that package.

I like the OLED Idea, actually I am currently testing this as extension to the python script to be able to see A/C settings while the main display shows Android Auto...
20210327_090547_HDR

@zalexzperez
Copy link

Hi,

that display looks really nice! Interesting project.

I was wondering if it's possible to determine whether the GID display is currently on the main screen (Date, Range, current consumption and A/C info) or on the one that shows up when you press the left wheel menu button (the one with the chronometer)

In order to control my OLED display I'd like to use the wheel up and down only when on the main screen, to avoid controlling both my display and the GID display at the same time...

Thanks!

@Tomi8609
Copy link

Hi

This is a very cool display, I'm thinking about something similar, but I'm having a hard time with the programming part. My question would be if this project can be modified to display music information from bluetooth module. Can this be combined with seeing the coolant temperature and battery charge?
What is physically required for #this?
Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants