Help with c127 controlling heated grips

D153, D175, C125, C127, C185 and C187 forum

Help with c127 controlling heated grips

Postby Doorev1200 on Mon Jun 22, 2020 10:19 am

I am in need of some advice/solution for my Skidoo snowmobile with a M130 plug and play kit. I dont have the daah yet, i want to confirm this will work.

I want to run the c127 dash which means i will remove the factory dash. The only issue is that the factory dash controls the hand and thumb warmers. It appears the c127 should be able to run these but I need a little help on how to accomplish this.

Background on the factory system:

The factory system uses 2 momentary rocker switches. 1 for thumb and 1 for both hand grips- you rocker up for more heat and rocker down for less. The factory cluster displays the heat setting for the grips and throttle lever( each has there own display) in a 5 bar block display that goes up and down with heat setting. 0 blocks is no heat and 5 ia full heat..basically 5 heat settings. The cluster has 2 output wires for the grips and lever. The cluster supplies B+ power to the heaters and I am guessing it outputs a variable voltage for this. Total amps is 4 for the warmers and a little less for the thumb.

So far this is what I have come up with for a solution. I am no electronic expert but let me know if this is correct or wrong.

I made 4 new channels:
Grip heat up
Grip heat down
Lever heat up
Lever heat down.
The channel units is on/off and display units is on/off. I added these channels to AV2,3,4&5.

Next i made a counter channel for grips and 1 for lever. For each counter i added the appropriate up and down input switch. The type is up/down and min value is 0 and max is 6 because i want 6 heat settings. So far so good?

I then made bar 1 follow lever counter and bar 2 follow grip counter. Style is moving indicator with left value 0, intermediate 3 and right 6. Is that correct?

Now this is where i am not sure what to do.

Output-
For output, I assign 1 aux output for each heater. The output mode will be duty cycle control. The duty cycle channel will be grips/lever counters. I would change the 0-6 input counter value to be a value representing duty cycle... 0= 0%dc 6=100%dc??

Then use a SSR? I am not experienced enough here but if anyone can give me some tips or direction would be great!!

Thanks

Greg
Doorev1200
 
Posts: 48
Joined: Thu Jun 18, 2020 2:57 pm
Location: Manitoba,Canada

Re: Help with c127 controlling heated grips

Postby adrian on Mon Jun 22, 2020 2:35 pm

The cluster supplies B+ power to the heaters and I am guessing it outputs a variable voltage for this.

I would have more of a look into how this actually works in the factory setup. I'm no expert on this but I don't know how successful PWM'ing a purely resistive load will be. The only time I've ever done it was done really slowly, in the range of 0.1Hz or slower.

To answer your question, the best way is to add a 2D table for each output. The counter is the input axis and you create the duty cycle you want for each of the steps as the output. Create a ratio channel for the output of the table and then use that in the output pin setup.

You will need a SSR, the Dash outputs won't handle that much current.
adrian
MoTeC
 
Posts: 719
Joined: Mon Apr 13, 2015 5:16 pm

Re: Help with c127 controlling heated grips

Postby Doorev1200 on Mon Jun 22, 2020 6:31 pm

Thanks for the tips. That is a good idea with the 2d table.

As for driving resistive loads, from this article i read, is that pwm will work. Here is the article. What do you think?

Driving Resistive Loads

Resistive loads are the simplest loads to drive as they follow the very basic Ohm’s Law. However, in typical applications, the current through the load needs to be varied to provide the intended output. Therefore it is also important to have features such as current sensing that can correlated back to the microcontroller what current is actually going through the load. The most basic way to vary the current through the load is through pulse width
modulating (PWM) the enable pin. This introduces more complications when it comes the thermal calculations.
A common resistive load in a vehicle is a seat heater. A long coil is placed inside the seat heats up when
current flows through it causing the seat to warm. The current is controlled so that the correct amount of heat is produced. Showing off this application is a reference design, Smart Power Switch for Seat Heater
In this seat heating application there needs to be discrete temperature steps in the temperature of the
seat. All vehicles with this feature allows the user to select the correct temperature range that suits them.
It can be inferred that the temperature correlates directly with the current flowing through the load and
therefore to adjust the temperature, the current must be varied proportionally.

I ∝ P ∝ T (2)
To do this, a microcontroller, that is controlling the high side switch, pulse width modulates (PWM's) the enable pin. This turns the device on and off at a fast rate that gives an effective current which can be
calculated in Equation 3 based on the duty cycle, D.
Doorev1200
 
Posts: 48
Joined: Thu Jun 18, 2020 2:57 pm
Location: Manitoba,Canada

Re: Help with c127 controlling heated grips

Postby adrian on Tue Jun 23, 2020 12:38 pm

Yes PWM will work you just have to take into consideration the fact that switching a resistive load means the change in current over time (di/dt) will be very high and could cause noise issues. Again, I've never tested it so can't say for sure.

I have since found out we have controlled those heaters before. Just keep the frequency low, around the 1Hz range, and it should be fine.
adrian
MoTeC
 
Posts: 719
Joined: Mon Apr 13, 2015 5:16 pm

Re: Help with c127 controlling heated grips

Postby Doorev1200 on Wed Jun 24, 2020 1:04 pm

Thanks for the reply and tips. I made some 2d tables with the grips & lever counters as inputs and made 2 more output channels called grips & lever ratio output. Next I assign a aux out, I choose duty cylcle control. Then the duty cycle channel is grip/ lever output ratio channel.
Then i have to assign a channel value for 0% and 100% duty cycle which is 0 for 0 and 100 for 100. But next is freq and the lowest i can go is 23hz. I know you said keep the freq around 1 hz but i cannot do so. Do I have this set up correct?
Doorev1200
 
Posts: 48
Joined: Thu Jun 18, 2020 2:57 pm
Location: Manitoba,Canada

Re: Help with c127 controlling heated grips

Postby adrian on Thu Jun 25, 2020 3:57 pm

That is interesting, I thought you could set that lower, I'll raise it in our system.

To get around this for now, create a frequency channel in the constant setup (Calculations>Constants) and set it to 0.
Frequency.png
Frequency.png (52.02 KiB) Viewed 13191 times

Then change the output type to "Duty Cycle and Frequency Control", set 0-0Hz 1000-1000Hz in the frequency setup and select your frequency channel. Use your duty cycle setup as before.

This will run at 2Hz which is the lowest you can go.
adrian
MoTeC
 
Posts: 719
Joined: Mon Apr 13, 2015 5:16 pm

Re: Help with c127 controlling heated grips

Postby Doorev1200 on Thu Jun 25, 2020 6:43 pm

Thank you so much! I have it set up and just have to wait for my dash to arrive to start the install.

Now one last question that pertains to the skidoo xs1200 M1 pkg. This pkg is a plug and play for the 2016 skidoo snowmobile. This package communicates with the factory dash via can and the firmware has specific functions and channels only found on this sled. For example, I want to monitor the fuel trim on my dash. My m1 firmware has "Fuel closed loop control trim" but available channel list only has "Fuel closed loop control bank 1" which im sure wont work. There is alot of others too.

Do I need the dbc file for this pkg?
Is there a dbc for the skidoo cluster and 1 for the skidoo m1 firmware?
What is your opinion on what to do?

thanks for everything so far!
Doorev1200
 
Posts: 48
Joined: Thu Jun 18, 2020 2:57 pm
Location: Manitoba,Canada

Re: Help with c127 controlling heated grips

Postby adrian on Fri Jun 26, 2020 5:54 pm

The two templates you need are "M1_General_0x640 Version 3" and "M1_General_0x650 Version 3" which are in the list when you hit "Select" in the communications setup of Dash Manager.

I don't have a .dbc for the factory cluster.
adrian
MoTeC
 
Posts: 719
Joined: Mon Apr 13, 2015 5:16 pm

Re: Help with c127 controlling heated grips

Postby Doorev1200 on Sat Jun 27, 2020 6:34 am

Thank you very much for all the help!

Greg
Doorev1200
 
Posts: 48
Joined: Thu Jun 18, 2020 2:57 pm
Location: Manitoba,Canada

Re: Help with c127 controlling heated grips

Postby Doorev1200 on Sat Jul 11, 2020 11:04 am

Can someone please explain this user condition to me and how it is interpreted.

Next button false and not(next button false(for 0.10s)) and display mode change false (for 0.20s)


This is for output channel to display next line in the example layouts. Cant wrap my head around it so please explain each of the 3 conditions and why they are there. The other conditions make sense to me.Thanks.
Doorev1200
 
Posts: 48
Joined: Thu Jun 18, 2020 2:57 pm
Location: Manitoba,Canada

Next

Return to Colour displays

Who is online

Users browsing this forum: No registered users and 8 guests