[Ovmsdev] Development of C-Zero/iOn/iMiev version

Mark Webb-Johnson mark at webb-johnson.net
Thu Jul 25 22:33:11 HKT 2013


Matt,

It is probably worth firstly doing a quick feasibility check, to see what level of OVMS support is possible:

Do you know what are the specs for the CAN bus in the C-Zero vehicle? What baud rate is it, and what is the connector? There are  just three messages that are key to feasibility:

SOC - battery state of charge - car_SOC
Car On/Off (ignition switch, or Park/Drive gear lever) - car_doors1 [bit7]
Car Charging (true or false) - car_doors1 [bit 4]

If those three are available, and readable by the OVMS hardware, then the project is most likely feasible. There are lots of other parameters (range, temperature, odometer, speed, vin, tpms, etc) that are nice to have, but are either optional (nice-to-have) or can generally be derived from these three key messages - so long as they can be found. For example, on the Volt/Ampera we don't know the detailed charge messages, but do know whether the car is charging or not - we can assume charge interrupted if the charge finishes before 95% complete. Similarly, if the range of the car is XXkm, we can estimate the current range based on XX * SOC%. If the car has no GPS details on the CAN bus, then we can use the GPS in the OVMS module itself.

A while ago, we made a stub vehicle implementation for Mitsubishi iMiev. It is just a stub, with nothing implemented yet, but you can use that as a start for your work.

Regards, Mark.

P.S. With reference to the development guide (https://raw.github.com/markwj/Open-Vehicle-Monitoring-System/master/docs/OVMS_Development.pdf), these are the current set of parameters that OVMS supports.

Vehicle Module Development Checklists 

Development Checklists


You can use these checklists to know what vehicle parameters the OVMS system supports, and how you can map a specific vehicle to these. 

Parameter

Purpose

Vehicle Support Notes

 

Vehicle Identification

car_type

Vehicle type identified

 
car_vin

Vehicle VIN

 
 

Parameter

Purpose

Vehicle Support Notes

 

GPS Status

Vehicle GPS

Does the vehicle have a built-in GPS? If so, complete the following.

 
car_gpslock

Set to record GPS lock

 
car_stale_gps

Denotes GPS data staleness

 
car_latitude

Latitude of the vehicle

 
car_longitude

Longitude of the vehicle

 
car_direction

Direction of the vehicle

 
car_altitude

Altitude of the vehicle

 
 

Parameter

Purpose

Vehicle Support Notes

 

Tire Pressure Monitoring System

TPMS

Does the vehicle have a TPMS? If so, complete the following.

 
car_stale_tpms

Denotes TPMS data staleness

 
car_tpms_t

The temperatures of each wheel

 
car_tpms_p

The pressures of each wheel

 
 

Parameter

Purpose

Vehicle Support Notes

 

Driving Status

car_doors1 [bit7]

Set if the car ignition is ON

 
car_speed

The speed of the vehicle

 
car_trip

The vehicle trip counter

 
car_odometer

The vehicle odometer

 
 

Parameter

Purpose

Vehicle Support Notes

 

Vehicle Environment

car_stale_ambient

Ambient temperature staleness

 
car_ambient_temp

Ambient temperature

 
car_stale_temps

Other Temperature staleness

 
car_tpem

Temperature of the PEM

 
car_tmotor

Temperature of the MOTOR

 
car_tbattery

Temperature of the BATTERY

 
car_doors1 [bit 0]

Set if front left door OPEN

 
car_doors1 [bit 1]

Set if front right door OPEN

 
car_doors2 [bit 6]

Set if bonnet is OPEN

 
car_doors2 [bit 7]

Set if trunk is OPEN

 
car_doors1 [bit 2]

Set if charge port is OPEN

 
car_doors1 [bit 6]

Set if handbrake is ON

 
car_doors2 [bit 5]

Set if headlights ON

 
car_doors3 [bit 1]

Set if vehicle is AWAKE (or if not supported just follow ignition)

 
car_doors2 [bit 4]

Set if valet mode is ENABLED

 
car_doors2 [bit 3]

Set if vehicle is LOCKED

 
car_lockstate

4=locked, 5=unlocked (deprecated)

 
car_doors4 [bit 2]

Set if alarm SOUNDING

 
car_time

Time (in seconds)

 
car_parktime

Time (seconds) vehicle parked

 
 

Parameter

Purpose

Vehicle Support Notes

 

Battery Status

car_SOC

State of charge percentage

 
car_idealrange

Ideal range

 
car_estrange

Estimated range

 
 

Parameter

Purpose

Vehicle Support Notes

 

Charging Status

car_doors1 [bit 3]

Set if pilot signal ON

 
car_doors1 [bit 4]

Set if vehicle CHARGING

 
car_linevoltage

Line voltage while charging

 
car_chargecurrent

Line current while charging

 
car_chargemode

Vehicle Mode

 
car_chargestate

Charging state

 
car_chargesubstate

Charging sub-state

 
car_chargelimit

Charge current limit

 
car_chargeduration

Charge duration (minutes)

 
car_chargekwh

Charge kWh put into battery

 
car_stale_timer

Charge timer staleness

 
car_timermode

Charge timer mode

 
car_timerstart

Charge timer schedule

 


On 25 Jul, 2013, at 9:18 PM, Matt Beard OVMS <smvo at mxf.org.uk> wrote:

> Hi,
> 
> I am now the proud owner of a V2 box, and accessories for ODB-II connection etc.
> 
> Unfortunately I currently don't have an EV... but as soon as my C-Zero returns I intend to fit the OVMS.
> 
> Is there currently a draft iMiev version of firmware? I have seen some partly decoded CAN details.
> 
> I suspect I will also need to start CAN-logging.
> 
> Matt Beard
> 
> _______________________________________________
> OvmsDev mailing list
> OvmsDev at lists.teslaclub.hk
> http://lists.teslaclub.hk/mailman/listinfo/ovmsdev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.teslaclub.hk/pipermail/ovmsdev/attachments/20130725/16e189f1/attachment-0001.html>


More information about the OvmsDev mailing list