Stand alone OBC/PDModule EV system Can 2015 - SOLVED

My Nissan Leaf Forum

Help Support My Nissan Leaf Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
Hello Dala
it looks like you can be congratulated, now you will have the opportunity to convert a car with an internal combustion engine.
 
hi mr 49thdiver, where can i find a 2015 wiring diagram?
It would help a lot when i start reducing the wiring that is going on my ev. Tks.
 
There is lots of discussion about copyright when it comes to manuals but here is a link found elsewhere on this forum.
chortle said:
You can do what you like, buy what you like, pay what you like, say what you like, but the link I have included is a public link to a public site.

It is the property of NICO (Nissan Infinity Car Owners) and they provide this material at their site http://www.nicoclub.com" onclick="window.open(this.href);return false;

If it's pirated software, Nissan should take their site down.

Right now, it's in the public domain.

Google, found it for me and I suggest you do what feels right for you.
 
Hello friends, please support with a like and comment. In the video, you can turn on subtitles and set the English language.

https://www.youtube.com/watch?v=Xjag0Rkvdd4&t=313s
 
svizpdm said:
Hello friends, please support with a like and comment. In the video, you can turn on subtitles and set the English language.

https://www.youtube.com/watch?v=Xjag0Rkvdd4&t=313s
Great work on the Buggy!

It is nice to see someone is using the OBC in their setup. Are you using the hack where you control the current using the pin 6 on the MCP4728? or did you get your friend Taras can bus method to work?

I bought a motor/invert/OBC stack from a 2014 Nissan Leaf from the scrapyard and I'm installing the inverter and motor in an old Volvo. I use battery modules from the mini Countryman hybrid to build my own pack.

I would like to be able to charge the pack using the Nissan OBC So I'll keep an eye on this thread!

Kindly,
Jon
 
TrueSoln said:
I just kept the code simple for number sequence, and seem that I was getting the charger to turn on.

Still have to work out actual pattern but below is what I used for code on an UNO
I look at the logs for a charge from MUX and Damien
ID 50B is same message during the whole charge (Every 100ms)
ID 1D4 & ID 1F2 Both come from VCM also and need to be simulated. (Every 10ms)


1D4 and 1F2 do still need to work out what it all means
But on Byte[5] of 1D4 seem to be control value

//F7 07 00 04 87 46 E0 64
//F7 07 00 04 C7 46 E0 A3
//F7 07 00 04 07 46 E0 6F
//F7 07 00 04 47 46 E0 A8
//- Every 10ms
uint8_t 1d4_incremental_counter = 0;
byte SendSignal_0x1d4()
{
byte messageData[8] = {0xf7, 0x07,0x00,0x04,0x00,0x46,0xe0,0x00 };

byte seqCtr[4] = {0x87, 0xc7,0x07, 0x45 };
messageData[4] = seqCtr[1d4_incremental_counter];

// Set the CRC and send
nissan_crc(messageData, 0x85);

1d4_incremental_counter++;
if (1d4_incremental_counter >= 4)
1d4_incremental_counter = 0;

return SendCanMessage(0x1d4, 0, 8, messageData);
}

//30 64 20 00 00 82 00 0B
//30 64 20 00 00 82 01 0C
//30 64 20 00 00 82 02 0D
//30 64 20 00 00 82 03 0E
//- Every 10ms
uint8_t counter_1f2 = 0;
byte SendCanMessage_1f2()
{
byte messageData[8] = { 0x30, 0x64, 0x20, 0x00, 0x00, 0x82, 0x00, 0x00 };

byte seqCtr[4] = {0x0b, 0x0c,0x0d, 0x0e };

//- Sets the sequence
messageData[6]=counter_1f2;
messageData[7] = seqCtr[counter_1f2];

counter_1f2++;
if(counter_1f2 >= 4)
counter_1f2 = 0;

//- Not sure if a CRC or Just a sequence pattern
//nissan_crc(messageData, 0x85);

return SendCanMessage(0x1f2, 0, 8, messageData);
}

//- Every 100ms
void Send50bMessage()
{
byte gen1_MessageData[6] = {0x00, 0x00, 0x00, 0xc0, 0x00, 0x00 }; // While charging
byte sndStat = CAN_OK;

return SendCanMessage( 0x50b,0, 6, gen1_MessageData);
}

I'm planning to reproduce this code to get the charger going (on a gen2). Did you manage to get it working? I noticed that the sequence control for ID4 message might have an error. According to your annotations the cycler should be {0x87, 0xc7,0x07, 0x47}, but your code is {0x87, 0xc7,0x07, 0x45 }. Do you know which one is correct?

I currently have the battery connected directly to the inverter via a precharge circuit. Is the high voltage battery terminals on the OBC directly connected to the inverter + and -, or are there some relays that must be closed to connect the battery to the inverter?
 
Interesting observations. I do not think anyone has got this working thru can bus yet. I am interested to see what TrueSoln says but here are my thoughts.

I just searched thru a number of my data logs and for 0x1D4 I am seeing 0x80,0xC0,0x00,0x40. Note that all three significant bits are zero not one ie hex 7.
the data from mux indicates 0x47. Given that all the other 1d4 in that particular sequence the LS nibble is 7. I would assume 47 is the correct number. However it also seems that that nibble may not be significant as I am not seeing it here on three different car samples.

I have been distracted by another vehicle conversion to a full Leaf power train,BMS and charging system. It is working well have done initial road tests and about to conduct second phase of Road test. The Rav4 EV to Leaf Pack conversion has been driving mostly daily for aprox 4 months with no issues battery pack working well.
I am hoping to get back on to the standalone charger project soon. I have learned a lot during this most recent conversion and am hoping to make some advances on the charger.

Let us know if you are able to confirm charging starting and maintained. I have had some false starts by thinking that the DC to DC converter was coming on and that charging was starting. It turned out that the DC to DC does start but if the charger can not initiate a pack charge sequence or confirm battery status from the BMS it shuts down.
I think this has been my problem the whole time as I did not have a BMS connected to my stand alone charger. I will be doing this on my next deep dive.
 
Hey guys! We’ve been trying to get the charger to work from a 2012 Nissan Leaf. So far we’ve been able to get the charge light to turn on from the EVSE and we can see an increase in gids in the battery.

The weird thing is that when we unplug and replug in the system, we get back to our original gids, in our case 171.

Is anyone having a similar problem?
 
How are you seeing the gids, leaf spy ?
The SOC should be increasing if you are using leafspy
Is the light on the instrument cluster coming on that indicates it's plugged in.
Are the blue lights blinking. on the dash.
Is the water cooling pump coming on you should be able to hear a faint electric motor sound.
I always check the predicted range as an indication of charging, is it increasing.
The other thing to check is if the auxiliary battery is jumoing up to about 14.1 volts, thats an indication that the DC to DC converter is working.

Any error codes from Leaf Spy ?
 
Here's a pinout for the ZE1 2018+ PDM. Note that they connector is now named F18 instead of F23!

MDzgblF.png
 
Nice information, so far I have only been working on 2015's.

I am actively looking for another wrecked vehicle and have spotted a couple of 2018s with the bigger battery pack.
so far way outside of my budget.
I have been wondering about what differences I might find if I am lucky to get one at a good price.
Any comments on know significant changes appreciated.
 
Dala said:
Damien should have a video up on how to run the PDM standalone soon! Here's a sneak peak:
7YANSbL.jpg

That is great news! Sounded in his video that he was going to start with the Gen 3 inverter. Maybe he was quick with that :p
 
[youtube]https://www.youtube.com/watch?v=VY6NXMZGARo[/youtube]

Damien did it :D Cant wait to try this out with my setup. I do not use the zombieverter, but run the commands found by Celeron55 (http://productions.8dromeda.net/c55-leaf-inverter-protocol.html) needed to run the inverter (11A, 1D4 and 50B). Hope that will be enough. Would be great to be able to control charge current and max voltage etc. This would make it work with any HV battery pack.
 
The code to run the pdm may be found here :
https://github.com/damienmaguire/Stm32-vcu/blob/LIM_ST107/src/leafinv.cpp
Its heavily commented so should be easy to read.
All you need to run this thing is CAN , 12v and ground. No other signals are required.
 
jackbauer said:
The code to run the pdm may be found here :
https://github.com/damienmaguire/Stm32-vcu/blob/LIM_ST107/src/leafinv.cpp
Its heavily commented so should be easy to read.
All you need to run this thing is CAN , 12v and ground. No other signals are required.

Thanks for linking this. For the DC-DC converter I agree with the connections you mention. However, you also seem to need the EVSE connect signal and communication PWM wires connected for the on board charger. When I wired these up, my EVSE got an error, without them, nothing happens.

Damien included the 0x1db message which is sent from the BMS normally. I did not have that in my own code. However, the bytes he sends are all 0x00 (except byte 6 counter), but he has made a note that this message should include the inverter voltage. Looking at the 1db message in the can log database (https://github.com/dalathegreat/leaf_can_bus_messages), voltage should be provided in byte 2 and 3.

I Implemented it like this:

// Message: 1DB (From Lithium battery controller) Might be needed for running the on board charger
data[0] = 0x00; //byte 0
data[1] = 0x00; //byte 1
data[2] = inverterVoltage * 2 >> 2; //byte 2
data[3] = inverterVoltage * 2 << 6; //byte 3
data[4] = 0x00; //byte 4
data[5] = 0x00; //byte 5
data[6] = counter; //byte 6
nissan_crc(data); // function adds the crc to byte 7,
//uses 0x85 as polynomial
sent = CAN.sendMsgBuf(0x1db, 0, 8, data);

Hope to test it tomorrow and will keep you updated.
 
Thank you Damien (are your Jack Bauer wtb? :) ) for uploading your code, it is very helpful.

I have now implemented the messages:
10ms:
* 1d4,
* 11a,
* 1db,
(for charge mode only):
* 1dc,
* 1f2
100ms:
* 50b
* 55b
* 59e
* 5bc

I did not implement the charge mode logic for the throttle, and I can happily run the motor when in charge mode, so CAN messages does not seem to enforce this.

When I run my CAN messages and connect the HV system, I do get 14+V on my battery indicating that the DC to DC converter is doing its thing. However, when I connect my EVSE, I need to connect the EVSE connection signal to pin 29 and EVSE communication (PWM) to pin 30. otherwise my EVSE will not close its contacts.

Any how, my whole nissan stack (motor/inverter/charger) is now working using only CAN =)
 
Back
Top