[Ovmsdev] understanding polling
Nikolay Shishkov
nshishkov at yahoo.com
Mon Jun 22 21:55:25 HKT 2015
Thanks Mark,
I had to implement VEHICLE_POLL_TYPE_OBDIIGROUP section of the code in the vehicle.c... and I had to correct some of the code.I thought the moduleid was the requesting one while the rmoduleid was the response one ... Talk about context ;)
Nikolay
On Monday, June 22, 2015 3:12 PM, Mark Webb-Johnson <mark at webb-johnson.net> wrote:
The Ampera is still using the old polling logic. The poling code is within the vehicle_voltampera module itself.
The Leaf is using the new centralised polling logic (in vehicle.h and vehicle.c). This is the new recommend way of doing this, as the vehicle.{h,c} code will do the polling for you - all you need to do is setup the appropriate structure.
The new structure is:
typedef struct{ unsigned int moduleid; unsigned int rmoduleid; unsigned char type; unsigned int pid; unsigned int polltime[VEHICLE_POLL_NSTATES];} vehicle_pid_t;
and the following polling types are currently supported:
#define VEHICLE_POLL_TYPE_NONE 0x00#define VEHICLE_POLL_TYPE_OBDIICURRENT 0x01#define VEHICLE_POLL_TYPE_OBDIIVEHICLE 0x09#define VEHICLE_POLL_TYPE_OBDIIGROUP 0x21#define VEHICLE_POLL_TYPE_OBDIIEXTENDED 0x22
The moduleid is the replying module id, the rmoduleid is the id to use for the request.
Regards, Mark.
On 21 Jun, 2015, at 9:44 pm, Nikolay Shishkov <nshishkov at yahoo.com> wrote:
Hi ,
I am trying to make nissan leaf work with normal cable - on the CARCAN.
I am trying to figure out the polling mechanism and I have trouble understanding what the different parameters in the configurations are.
In the ampera file I can see:
| rom struct |
| | { |
| | unsigned int moduleid; |
| | unsigned char polltime; |
| | unsigned int pid; |
| | } vehicle_voltampera_polls[] |
| | = |
| | { |
| | { 0x07E0, 10, 0x000D }, |
| | { 0x07E4, 10, 0x4369 }, |
| | { 0x07E4, 10, 0x4368 }, |
| | { 0x07E4, 10, 0x801f }, |
| | { 0x07E4, 10, 0x801e }, |
| | { 0x07E4, 10, 0x434f }, |
| | { 0x07E4, 10, 0x1c43 }, |
| | { 0x07E4, 10, 0x8334 }, |
| | { 0x07E1, 100, 0x2487 }, |
| | { 0x0000, 0, 0x0000 } |
| | }; |
While in the nissan leaf file I can see the following:
| rom vehicle_pid_t vehicle_nissanleaf_polls[] |
| | = |
| | { |
| | { 0x797, 0x79a, VEHICLE_POLL_TYPE_OBDIICURRENT, 0x0d, { 10, 10, 0 } }, // Speed |
| | { 0x797, 0x79a, VEHICLE_POLL_TYPE_OBDIIVEHICLE, 0x02, { 10, 10, 0 } }, // VIN |
| | { 0, 0, 0x00, 0x00, { 0, 0, 0 } } |
| | }; |
I can kind of guess some of it. I also found an old e-mail from Mark that describes a structure similar to the one in the nissan leaf file, but the leaf has one extra parameter - I think it is the return message can Id.
Any info/advice is appreciated!
Nikolay_______________________________________________
OvmsDev mailing list
OvmsDev at lists.teslaclub.hk
http://lists.teslaclub.hk/mailman/listinfo/ovmsdev
_______________________________________________
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.openvehicles.com/pipermail/ovmsdev/attachments/20150622/662d26ad/attachment.htm>
More information about the OvmsDev
mailing list