Animated preview of dashboard at different states.
Images of the 3D-printed case and assembly.
The LeafClient is a cross platform console application which can authenticate with and query data from Nissan Connect EV.
Usage: leafclient username password [-o {filename}] [-p {url}] [-last]
Options:
username Your Nissan Connect username.
password Your blowfish encrypted password.
Encrypt your password at http://sladex.org/blowfish.js/.
Key: 'uyI5Dj9g8VCOFDnBRUbr3g'. Cipher mode: ECB. Output type: BASE64.
-o Outputs the result as JSON to {filename}.
-p Posts the result as JSON to {url}.
-last Don't query live data from car.
* I intentionally did not add Blowfish encryption to the application because .NET does not have Blowfish encryption integrated in the framework and I did not want to add a dependency. The password needs to be supplied pre encrypted.
dotnet LeafClient.dll username password -o data.json
{
"Timestamp": "2019-03-20T22:00:00",
"NickName": "leaf1",
"Vin": "123456789",
"PluginState": "NOT_CONNECTED",
"CruisingRangeAcOn": 168000,
"CruisingRangeAcOff": 186000,
"MinutesToFull": 240,
"MinutesToFull200": 150,
"MinutesToFull200_6kW": 70,
"BatteryCapacity": 240,
"BatteryRemainingAmount": 240,
"BatteryRemainingAmountWH": 0,
"BatteryRemainingAmountkWH": 0,
"StateOfCharge": 92
}
I use a cron job on a Linux server to periodically run the LeafClient
console application. I use the -o
flag which writes the JSON data to a file. This file is served by my web server and consumed by the ESP8266.
The ESP8266
folder contains an Arduino skecth to retrieve JSON data from a web server and send it to a Nextion display over serial.
The Nextion
folder contains the HMI project for the display that shows the data. The Nextion display I used is the NX4832T035_011
which is the 3.5" version.
This is the Nextion HMI design. I used the actual Nissan Leaf dashboard as inspiration.
STL-files for the Nextion case can be found in the Nextion Case
folder. The case is designed to be used with one of these ESP programmers, which makes it very easy to power and flash the ESP through micro USB. It also provides easy access to power and serial pins for the Nextion display.