Hi! I own Estrima Biro. It does not have a diag port in it but it has 2 Sevcon gen4 size2 controllers. One of them gives me 11 LED flashes error, and there's message displayed on dashboard "Cable wiring malfunction". It disappears after ignition key on-off-on. I own ovms3 module. Is there a way to connect it to Sevcon directly, rather than via OBD2?
You need to get access to the CAN bus. That will be possible also without an OBD2 DIAG port. The two SEVCON units will communicate via CAN, and the dashboard display also means it's connected to the CAN bus. Connect any of the OVMS v3 CAN ports to the bus, preferrably CAN1. Depending on the bus architecture of the car, you may need to add a termination resistor between CAN H & L (120 Ohms), but that's normally not needed. You may need to try different CAN speeds, I would begin with the usual 500 kbit.
Once you've got access to the bus, you can use the OVMS CANopen toolkit to access the SEVCONs:
https://docs.openvehicles.com/en/latest/components/canopen/docs/Howto-detect-CANopen-nodes.html
The toolkit is a standard framework component and doesn't depend on a specific car to be selected.
The primary SEVCON will normally be accessable as node 1, the secondary presumably node 2 -- simply use the scan command to identify the nodes:
(Note: I suggest you take some notes and document what you find, for others wanting to follow you)
Once you know the nodes, you can access the SEVCON registers using the readsdo & writesdo commands. Get a copy of the SEVCON Gen4 user manual and find the "Sevcon CANopen Master Object Dictionary" (spreadsheet) on the net. When using the dictionary, be aware of each register's version. You can download the DCF including register versions from the SEVCON via SDO 0x5630. I wrote a DCF download script for this long ago for OVMS V2, it should be simple to adapt that to V3: https://github.com/openvehicles/Open-Vehicle-Server/blob/master/clients/diagmode/dcf_download.pl
Accessing the SEVCON diagnostic logs and fault info is done via registers 0x4100, 0x4110, 0x4200 & 0x4300. You can also read the currently active fault codes from 0x5300. The Twizy module contains code for this, also the list of known fault codes, see: https://github.com/openvehicles/Open-Vehicle-Monitoring-System-3/blob/master/vehicle/OVMS.V3/components/vehicle_renaulttwizy/src/rt_sevcon_faults.cpp#L440
For example, to get the number of currently active faults from node 1, do: copen can1 readsdo 1 5300 1
To get an active fault code, set the index number in subindex 2, then read the code from subindex 3:
You get the idea.
As soon as the CANopen service has been started, the system will also record emergency codes from all nodes and store them as metrics. Use "metrics list co." to show them.
Some register accesses need a login to a specific login level. Write accesses may need an additional key (password), but normally only need a level 4 login. Some write accesses also need to be done in pre-operational mode. The SEVCON will tell you, and you can read in the dictionary about it. Assuming the default configuration, login to level 4 can be done as implemented here: https://github.com/openvehicles/Open-Vehicle-Monitoring-System-3/blob/master/vehicle/OVMS.V3/components/vehicle_renaulttwizy/src/rt_sevcon.cpp#L369
I'd like to read about your findings.
Note that the SEVCON doesn't need to run the standard firmware -- check the software version register to know for sure. But if it's car specific, it normally still is based on the original, and you still can use the standard register dictionary as a base.
Regards,
Michael
Thanx Dexter for such a detailed reply! I wish there was a forum for Estrima Biro, as there are fot Twizy, but I didn't find anything. BTW I also own a Twizy but it's broken right now. What I want to achieve is to disable sevcon disconnecting the motor wheel when it detects the error. Obviously if a fault disappears after a power cycle, then it's not that critical. It will be perfect if we can make sevcon take no action on that particular error... Inspecting all the wiring in the car frightens me, as I have no electric diagram for Biro.
Now, how do I physically connect Ovms to sevcon? I have ODB cable but there's no connector for it in the car. Here's photo of my faulty sevcon:
https://vfl.ru/fotos/ebf03f6432385952.html
The two sevcons are labeled R and L so I wonder if they work in master-slave mode or something
OK I see I will have to make my own cable for that, I'm reading manuals for sevcon and ovms...how exactly do I connect it?
http://images.vfl.ru/ii/1605974624/454021b1/32389264.jpg
You need to connect GND to GND, CAN0H to "CAN High" and CAN0L to "CAN Low". You can check if one of the CAN terminal pin pairs is unused on either unit, or you can use wire-tap connectors. Make sure the connection is tight. If you're getting errors after connecting the module, try adding a 120 ohms resistor between CAN0H and CAN0L (at the module end of the cable).
Not sure though if you can (and should) configure the SEVCON to ignore errors in a master/slave setup. You should rather determine the exact cause by reading the fault registers and then try to fix the issue.
Regards,
Michael
I have trouble physically connecting to Sevcon as it requires me crimping extra pins on AMPSEAL 356-pin connector, otherwise I can't connect ovms and car's system simultaneously. But I've noticed I have an MOLEX 6-pin on my Sevcon, can it be used? What is it's pinout?
Oh I found this:
https://www.kit-elec-shop.com/gb/index.php?controller=attachment&id_attachment=598
Do Sevcons log errors or do they erase them after power cycle?
That's why I suggested using wire-tap connectors. And yes, the Gen4 logs errors and keeps them until you clear the logs explicitly. Read my previous post on how to retrieve the logs.
I've connected OVMS to Sevcon via MOLEX connector port, but I keep getting this error even if OVMS is not connected to anything:
On DIAG26 port, I used pins 7, 17 and 8, as it says it's CAN1...is that right?
No, that's not correct. See my previous post. Possibly a little bit confusing, the hardware labels are 0-2, while the software uses "can1…3".
if not connected to anything, are these errors normal?
Can it be the result of missing 120Ohm?
Yes, these errors are normal on an open, unconnected CAN port, as the port will act as an antenna.
Btw… you're aware that you can simply use "can2" in the commands instead of rewiring your connector?
That's what I get now. It disappears when car is OFF.
I am not logged into console as admin, just default config - is that an issue?
500 kbit is just a usual rate, but your SEVCONs may use another. Did you try 1 mbit and 250 kbit?
I tried 1000000 with same result, and 125000. What are all the speeds? manual says 1Mbit is default but I'll try the rest.
Yeah it connected at 250000
Please give me commands to execute next....I didn't get the "metrics" part
Please copy the text, screenshots cannot be read by search engines.
That's nice, the "copen scan" command found both units and you now know their hardware & software identities.
Register 5300.01 on node 1 does not have any active fault at the time of the command. You should check node 2 as well. It's possible the faults are not permanently active, so check out the faults log on both nodes.
See the SEVCON manual or the Twizy code on how to do this.
The faults log cnt is at 4110.02, the system log cnt at 4100.02 and the event counters at 4201+n -- see Gen4 master dictionary for details.
You can also try to get the error while the OVMS is listening on the bus. It should detect some EMCY (emergency) message and log that, as well as copy the info to the metrics.
Please copy the text, screenshots cannot be read by search engines.
That's nice, the "copen scan" command found both units and you now know their hardware & software identities.
Register 5300.01 on node 1 does not have any active fault at the time of the command. You should check node 2 as well. It's possible the faults are not permanently active, so check out the faults log on both nodes.
See the SEVCON manual or the Twizy code on how to do this.
The faults log cnt is at 4110.02, the system log cnt at 4100.02 and the event counters at 4201+n -- see Gen4 master dictionary for details.
You can also try to get the error while the OVMS is listening on the bus. It should detect some EMCY (emergency) message and log that, as well as copy the info to the metrics.
Sorry Michael I am noob at all this, can you please give me step-by-step instructions how to access error logs?