Pontiac Solstice Forum banner

21 - 40 of 72 Posts

·
Registered
Joined
·
1,090 Posts
what you have done is awesome, and definitely above my pay grade (and abilities...)

is it possible to have 'needles' for some functions, like the speedometer and tach; visually that works better for me instant recognition than a scalular graphic.

Bill
 

·
Registered
Joined
·
353 Posts
Discussion Starter #22
@skersfan

Keep on checking this topic, I will keep everyone informed as to how I am making out.
Currently I am waiting on hardware specifically the can interface. once I have that I can data log the GMLAN bus in the car. This will allow me to reverse engineer the data.
 

·
Registered
Joined
·
353 Posts
Discussion Starter #23
@wmf246

The beauty of what I am making is that what you will be able to create as far a a gauge appearance is limitless. The reason I am showing exampled of "needle less" gauges is because they are 100% rendered by the software I am writing. This is the most intensive way of creating the gauges and as such would also be the slowest. If I can keep the speed to render these gauges to a minimum then any other way of creating them is not going to be an issue in the performance department.

You will be able to feed in an image file for all of the static portions of a gauge if you want. and then a separate image for a needle. the program will rotate the image for the needle pointing it to where it should be.This by far the easiest way to go about displaying the gauges.

Gotta start with what is the biggest resource hog and work backwards. You can also mix and match if you want, so you can use an image file for the background and render the needle. or you can render the background and use a static image for the needle. it doesn't matter.

Once I get a data stream log form my car i will have a way to build a real world simulation for testing purposes. I will be able to write a testing program that will feed the data into the program at the same speed that the bus in the car runs at, 33,300 bits per second for SWCAN and 400,000 bits per second for HSCAN.
 

·
Registered
Joined
·
353 Posts
Discussion Starter #24
What I could use help with is locating GM Enhanced (mode $22) PIDS for the solstice. I need to know the PID, the description of what the PID is and the formula used to decode the data packet in the reply. I have a few GM Enhanced PIDS for the car, and I have a slew of the body control arbitration codes.

This is what I have available to me at the present time.

These are not specific to the Solstice, They are the 29bit GMLAN arbitration codes. These are used to interface with the body control portions of the car.
System Power Mode : 0x0001
System Power Mode Backup : 0x0002
Easy Key Display Commands : 0x0003
Rfa Function : 0x0004
Tire Pressure Status Ls : 0x0005
Module Substitution Status : 0x0006
Rollover Status : 0x0008
Infotainment Operation Allowed : 0x0009
Tpm Display Commands : 0x000A
Platform Immobilizer Data : 0x000B
Platform Immobilizer Password : 0x000C
Veh Security Display Commands : 0x000D
Powertrain Immobilizer Data : 0x000E
Chime Command : 0x000F
Chime Status : 0x0010
Dimming Information : 0x0011
Vin Digits 2 To 9 : 0x0012
Vin Digits 10 To 17 : 0x0013
Hs Device Information : 0x0014
Auto Occupant Sensing Enabled : 0x0016
Display Measurement System : 0x0017
Battery Voltage : 0x0018
Rollover Sensing Enabled : 0x0019
Driver Door Status : 0x001B
Passenger Door Status : 0x001C
Left Rear Door Status : 0x001D
Right Rear Door Status : 0x001E
Pers Light Lock Status : 0x001F
Pers Light Lock Request : 0x0020
Lighting Status : 0x0021
Enhanced Services Request : 0x0022
Programming Event Requests : 0x0023
Export Module Status : 0x0024
Transmission Gear Information : 0x0025
Fuel Information : 0x0026
Vehicle Odo Brk Wash Level : 0x0027
Vehicle Speed Information : 0x0028
Engine Information 1 : 0x0029
Auto High Beam Status : 0x002A
Door Lock Command : 0x002B
Driver Door Lock Switch Status : 0x002C
Pass Door Lock Switch Status : 0x002D
Brake And Cruise Control Status : 0x002F
Rear Closure Status : 0x0030
Engine Information 3 : 0x0032
Engine Information 2 : 0x0037
Remote Start Status : 0x0038
Rear Closure Release Switch : 0x0039
Memory Switch Status : 0x003C
Occupant Protection Sych : 0x003D
Window Motion Request : 0x0040
Mirror Movement Request : 0x0041
Pers Driver Position Status : 0x0042
Pers Driver Position Request : 0x0043
Pers Chime Status : 0x0044
Pers Chime Request : 0x0045
Rollover Sensor Identifier : 0x0048
Auto Occupant Sensor Identifier : 0x004A
Driver Identifier Ls : 0x0050
Leveling And Suspension Status : 0x0051
Gps Date And Time : 0x0053
Time Of Day : 0x0054
Gps Geographical Position : 0x0055
Gps Elevation And Heading : 0x0056
Rear Seatbelt Status : 0x0058
Steering Wheel Angle : 0x005B
Climate Control : 0x0060
Outside Air Temp Corrected : 0x0061
Antilock Brake And Tc Status : 0x0062
Climate Control General Status 2 : 0x0064
Steering Wheel Control Switches : 0x0068
Rear Climate Control Status : 0x006A
Rr Climate Control Rmt Command : 0x006B
Head Up Display Status : 0x006D
Alarm Clock Status Ls : 0x0070
Climate Control Buttons : 0x0071
Left Climate Control Temp Dial : 0x0072
Right Climate Control Temp Dial : 0x0073
Climate Control Extended Status : 0x0075
Pers Parking Assist Req : 0x008B
Pers Parking Assist Status : 0x008C
Parking Assistance Status : 0x008D
Park Assist Rear Distance : 0x008E
Park Assist Front Distance : 0x008F
Airbag Impact Data : 0x0090
Airbag Impact Data 1 : 0x0094
Airbag Impact Data 2 : 0x0095
Airbag Impact Data 3 : 0x0096
Airbag Impact Data 4 : 0x0097
Airbag Indications : 0x0098
Memory Recall Impact Disable : 0x0099
Eng Trans Oil Life Reset Req : 0x009A
Aos Connection : 0x009C
Digital Audio Receiver Status : 0x009D
Rear Seat Entertainment Status : 0x009E
Pers Mirror Tilt Status : 0x00A0
Pers Mirror Tilt Req : 0x00A1
Pers Window Lockout Status : 0x00A2
Pers Window Lockout Req : 0x00A3
Personalization Information : 0x00A4
Phone Status : 0x0120
Adaptive Cruise Display : 0x0124
Content Theft Sensor Disable Req : 0x012A
Content Theft Sensor Status : 0x0130
Sod Left Status : 0x0140
Audio Master Amplifier Command : 0x0141
Audio Master Amplifier Setting : 0x0142
Audio Master Amplifier Mute : 0x0143
Sod Right Status : 0x0144
Audio Master Arbitration Command : 0x0145
Phone Dial Command 1 : 0x0146
Phone Dial Command 2 : 0x0147
Auxiliary Nav Data Display : 0x0148
Audio Master Amplifier Control : 0x0149
Remote Changer Command : 0x014A
Advanced Remote Receiver Control : 0x014B
Voice Recognition Status : 0x014C
Driver Seat Temp Control : 0x0150
Driver Seat Temp Indication : 0x0151
Pass Seat Temp Control : 0x0152
Pass Seat Temp Indication : 0x0153
Rr Left Seat Temp Control : 0x0154
Rr Left Seat Temp Indication : 0x0155
Rr Right Seat Temp Control : 0x0156
Rr Right Seat Temp Indication : 0x0157
Memory Command : 0x0160
Driver Mirror Motion : 0x0168
Pasenger Mirror Motion : 0x0169
Arb Text Display Gen Attributes : 0x0180
Arb Text Display Line Attributes : 0x0181
Arb Text Req Set Disp Icon : 0x0182
Arb Text Display Status : 0x0183
Arb Text Display Menu Action : 0x0184
Arb Text Req Set Disp Parameters : 0x0185
Arb Text Req Set Display Text : 0x0186
Arb Text Req Download Icon Data : 0x0187
Rear Seat Audio Status : 0x0188
Audio Amplifier Status : 0x0189
Rear Seat Audio Command 1 : 0x018A
Remote Changer Status : 0x018B
Remote Changer Media Status : 0x018C
Rse Headphone Audio Status : 0x018D
Audio Source Status : 0x018E
Remote Receiver Status : 0x018F
Arb Text Display Icon Attributes : 0x0190
Video Source Device Status : 0x0191
Remote Receiver Channel Status : 0x0192
Remote Receiver Preset Info : 0x0193
Remote Receiver Status 2 : 0x0194
Tv Tuner Status : 0x0195
Video Master Arb Command : 0x0196
Remote Receiver Tv Station : 0x0197
Remote Receiver Control : 0x0198
Onstar Voice Prompt Request : 0x01B0
Onstar Min Digits 1 15 : 0x01B1
Onstar Min Digits 16 30 : 0x01B2
Onstar Voice Prompt Status : 0x01B3
Column Lock Command : 0x01F0
Column Lock Status : 0x0200
Air Conditioning Control : 0x0278
Vin Digits 2 To 9 Alt : 0x0762
Vin Digits 10 To 17 Alt : 0x0764
Alarm Clock Request 2 : 0x0802
Broadcast Presence : 0x1FFF


These are the Solstice Specific Enhanced PIDS that I have
Exhaust Cam Angle ° : 0x882
Injector Pulse Width Cyl 1 ms : 0x183A
WB EQ Ratio Bank 1 λ : 0x1810
Equivalence Ratio Commanded - Bank 1 λ : 0x1775
Mass Airflow Sensor Hz : 0x8FD
Intake Cam Angle ° : 0x87C
Knock Retard ° : 0xA46
Accelerator Pedal Position % : 0x842
Boost Pressure (Low Res) psi : 0x922
Volumetric Efficiency Airflow lb/min : 0x907
Air Load % : 0x912
Desired Boost DC % : 0x939
Desired Fuel Pressure psi : 0x1965
Intake Air Temp 2 °F : 0x850

There are also the PIDS that are SAE standard PIDS that the vehicle may or may not support. I do not yet have an all inclusive list of what the Solstice supports. as of yet.


I also want to build into the gauges a diagnostic program that provides a full description for a DTC. It will give a list of all of the sensors involved in running the test that triggered the DTC including what each sensors min and max value range is. The cars ECM is designed to perform various tests and different rimes. there is a very specific set of requirements that have to be met in order to pass the test. So if you know how the test runs and when it runs it will provide a better insight into what could possibly be causing a DTC to be set on the car. Call it a scan tool on steroids! Think about those Snap-On scan tools that cost $5000.00+. Something along those lines if I can manage to get my hands on the full list of enhanced PIDS available for the vehicle.


any little tidbit of information someone has will help. Links to other places that have information will also be a huge help. Now remember GM is a creature of habit. when something works they usually do not go changing it. So if you come across something for say a 2008 Pontiac G8, or a 2008 Chevy Cobalt there is a good chance the same thing will work on the Solstice. so keep that in mind.

Now I do not know if the 06 and 07 Solstices were made with GMLAN CAN or if it was made with GMLAN Class 2. What I am currently working on is the CAN systems.If the earlier Solstices were made with a Class 2 data bus then you are going to have to wait until I can write something for those. I do not have a vehicle I can test on and it would take me a long time to get something working for those vehicles. GM started using CAN in some of there vehicles in 2004 and in 2008 they made the switch to CAN for all of their vehicles (I think).
 

·
Registered
Joined
·
353 Posts
Discussion Starter #25
On a side note. I did find a way to collect the Odometer readings from the vehicle. What is unknown is if I am going to have to have the stock gauges plugged in when I do this. So the installation process may be using a piggy back harness and plugging in the stock gauges at the same time during initial setup to collect the odometer readings. once the readings are collected the stock gauges can be unplugged and would not have to remain in the vehicle. This is if the odometer readings are stored in the stock cluster. If the BCM or some other module is able to report the odometer reading then the piggyback method would not need to be done.
 

·
Super Moderator
Joined
·
7,632 Posts
The BCM is the primary storage for the odometer. The gauge cluster stores the latest valid value in case the data in the BCM is corrupted or, presumably, if the BCM is replaced and has no data.
 

·
Registered
Joined
·
353 Posts
Discussion Starter #27
@shabby

The most complex piece of the XML is the font. This breaks down as follows.


0;Point Size;0;0;0;Weight;Italic;Underline;0;1;0;0;2;Family; Name

Point Size: negative number, the lower the number the larger the font
Weight (how bold, 400=normal): 100 - 1000
Italic: 0 or 1
Underline: 0 or 1
Family : 32=Swiss/Normal, 64=Script, 80=Decorative, 48=Modern, 16=Roman
Name: optional, specify the font to use

all of the rest of the numbers must remain the same.
 

·
Registered
Joined
·
353 Posts
Discussion Starter #28
@JohnWR

This is good information to have. So the piggy back would not be needed. I figured there would be another module that would answer the Odometer request. I was thinking that possibly the ABS module has it stored, after all it is the "black box" for a car.
 

·
Registered
Joined
·
3,523 Posts
What I could use help with is locating GM Enhanced (mode $22) PIDS for the solstice. I need to know the PID, the description of what the PID is and the formula used to decode the data packet in the reply. I have a few GM Enhanced PIDS for the car, and I have a slew of the body control arbitration codes.
My dashdaq has all of the enhanced pids for the solstice, i can make you a video scrolling through the list but there's no 0x014B addresses to them.
 

·
Registered
Joined
·
7 Posts
What I could use help with is locating GM Enhanced (mode $22) PIDS for the solstice. I need to know the PID, the description of what the PID is and the formula used to decode the data packet in the reply. I have a few GM Enhanced PIDS for the car, and I have a slew of the body control arbitration codes.

any little tidbit of information someone has will help. Links to other places that have information will also be a huge help. Now remember GM is a creature of habit. when something works they usually do not go changing it. So if you come across something for say a 2008 Pontiac G8, or a 2008 Chevy Cobalt there is a good chance the same thing will work on the Solstice. so keep that in mind.

Now I do not know if the 06 and 07 Solstices were made with GMLAN CAN or if it was made with GMLAN Class 2. What I am currently working on is the CAN systems.If the earlier Solstices were made with a Class 2 data bus then you are going to have to wait until I can write something for those. I do not have a vehicle I can test on and it would take me a long time to get something working for those vehicles. GM started using CAN in some of there vehicles in 2004 and in 2008 they made the switch to CAN for all of their vehicles (I think).
I have done a lot with GM CAN BUS. I can help you where I can.
If the solstice has a high speed GM CANBUS then I would not try going thru the OBD2 PIDs. I would go direct into the CANBUS and read the data there.
When you go thru the OBD2 protocols you are asking the ECU to give you the info and its much slower.

on a 2006 solstice it looks like high speed can for the ECU, TCM, BCM, EBTCM, VCIM to the OBD2 port
Low speed LAN. Radio, Theft, IPC, SDM.

So I'm betting the IPC picks up its messages from the BCM or VCIM. But everything you will need for your project will be on the high speed bus.

Most GM high speed busses are 500k.
 

·
Registered
Joined
·
353 Posts
Discussion Starter #32
@shabby

The 0x is just hexdecimal. you probably can see the decimal versions is all. Does your tool also show the formulas/equations?? This is a key component, knowing the pid is helpful but knowing how to decode the information that is received is key.

@rpmextreme
If memory serves there is no HSCAN going to the stock gauge cluster only SWCAN. and the stock gauges manage to function just fine without issue. so any and all data that I would need is going to be accessed through the SWCAN. I believe the BCM "converts" the HSCAN data to SWCAN for messages that need to get to the gauges and also to the OBDII port.
 

·
Registered
Joined
·
3,523 Posts
@shabby

The 0x is just hexdecimal. you probably can see the decimal versions is all. Does your tool also show the formulas/equations?? This is a key component, knowing the pid is helpful but knowing how to decode the information that is received is key.
No it doesn't show anything other than the pid name, here's a sample

109806
 

·
Registered
Joined
·
353 Posts
Discussion Starter #36
I got my interface in today I am going to mess about with it in a little bit to see what I am able to do.
 

·
Registered
Joined
·
7 Posts
If memory serves there is no HSCAN going to the stock gauge cluster only SWCAN. and the stock gauges manage to function just fine without issue. so any and all data that I would need is going to be accessed through the SWCAN. I believe the BCM "converts" the HSCAN data to SWCAN for messages that need to get to the gauges and also to the OBDII port.
Correct the cluster is on the low speed LAN. I have been looking for a module for a while that will work with GM Class2 and low speed Lan single wire. I have not found much thats helpful.

With that being said. There are plenty for the high speed can bus. All of the important data that you would need to drive a aftermarket cluster is on the high speed bus and it doesn't involve sending a "request" for OBD2 info or pid's.

I have not tested my solstice but the other GM stuff I have read has been like this.
0x1F5 is the PRNDL
0x0C9 is TACH - RPM
0x4C1 is coolant temp
 

·
Registered
Joined
·
353 Posts
Discussion Starter #39
OK so lets back up a step.. How does the OE cluster work then? It is NOT using the HSCAN in the car. it is using SWCAN. while yes HSCAN is going to be faster then SWCAN and I will not need to send a request it is still something that does not need to be done because the OE gauges populated just fine without having to use HSCAN.

I have not seen any information on the solstice stating that it uses class II at all. I am thinking that it did in 06 and 07 because of the ECM change they made in 08. Class 2 started being phased out in 04 and all GM vehicles 08 and newer are using CAN.

The Gear for automatics are available right at the cluster it's self and are 5 different wires each one to illuminate the appropriate lamp for the gear. On standard transmissions there is no gear indicator lamps. Even tho there is no gear indicator lamps on the manual doesn't mean that I will not be able to show the gear. I can using the speed and rpm of the vehicle to determine what gear the vehicle is in.
 

·
Registered
Joined
·
7 Posts
OK so lets back up a step.. How does the OE cluster work then? It is NOT using the HSCAN in the car. it is using SWCAN. while yes HSCAN is going to be faster then SWCAN and I will not need to send a request it is still something that does not need to be done because the OE gauges populated just fine without having to use HSCAN.

I have not seen any information on the solstice stating that it uses class II at all. I am thinking that it did in 06 and 07 because of the ECM change they made in 08. Class 2 started being phased out in 04 and all GM vehicles 08 and newer are using CAN.

The Gear for automatics are available right at the cluster it's self and are 5 different wires each one to illuminate the appropriate lamp for the gear. On standard transmissions there is no gear indicator lamps. Even tho there is no gear indicator lamps on the manual doesn't mean that I will not be able to show the gear. I can using the speed and rpm of the vehicle to determine what gear the vehicle is in.
I was just thinking bigger picture with your cluster project. If you base it on low speed GMLAN then you will be limited on any newer applications.
Unless you have two inputs. One for the low speed GMLAN and another for the high speed can. Whatever you can't pick up on the low speed would be available on the high speed.

I would think any info you can get from CAN is better than hardwiring it... like the trans range for automatics
 
21 - 40 of 72 Posts
Top