Parts may of course be replaced by functionally compatible ones, for example use a fork lift relais for the main power relais (relais & fuses are no special parts). Błażej Błaszczyk has built his [prototype](Prototype-Blazej.md) without using Renault parts. For details please contact him at <blazej.blaszczyk@pascal-engineering.com>.
- The `296740718R` signal connector is Yazaki part no. [7282-8854-30](http://connectors-catalog.sys.yzk.co.jp/yazaki-web/servlet/SubServlet_e?forward=7282-8854-30&plist=detail&select=XX) (contact terminals sold separate).
- The `296743399R` main power connector is DELPHI part no. [F473110](http://ecat.delphi.com/feature?search=F473110), with contact terminals [F176600](http://ecat.delphi.com/feature?search=F176600).
- The `296746418R` charger power connector is DELPHI part no. [F873110](ecat.delphi.com/feature?search=F873110), with contact terminals [15516298](http://ecat.delphi.com/feature?search=15516298).
If you want/need to measure cell voltages and temperatures with the Arduino, you will most probably need some analog input extension. A very simple and cheap setup for up to 16 cells is to use an analog multiplexer based on the CD74HC4067 chip.
Standard Arduinos can be powered from 12V, but will burn the voltage difference (convert to heat), so a step-down voltage regulator is highly recommended. The [Pololu A-Star SV series](https://www.pololu.com/category/149/a-star-programmable-controllers) has on-board step-down regulators suitable for a 12V supply.
Using an Arduino Uno style main board with shields reduces soldering requirements but needs more money and space than for example a Nano based board with break out components.
Keep in mind for all setups, this is an automotive application: expect high levels of mechanical stress due to road shocks and temperature expansion/contraction. Protect your electronics against humidity.
**Price note**: there are lots of cheap Arduino clones available. These can of course be used as well. Expect a lower build quality, so better order some spares (always a good idea).
This example setup could be used for a battery pack with a very basic BMS that does only cell protection and has no communication interface. So the Arduino is used to monitor cell voltages, pack current and temperature. This is all optional -- basically you could derive the SOC estimation from just the overall pack voltage as well.
![Arduino Example Wiring](Arduino-Example-Wiring.png)
- [PDF](Arduino-Example-Wiring.pdf)
- [Fritzing file](Arduino-Example-Wiring.fzz)
The Fritzing diagram only shows the I/O connections, but there's little more: add power supply and enable the multiplexer permanently (connect pin EN to VCC). Obviously, when using a CAN shield like shown in the diagram, it's wiring is done by mounting the shield.
The bluetooth module is optional but neat, it enables to check your VirtualBMS output with a smartphone.
Cell voltages can be measured using the multiplexer shown and simple voltage dividers measuring the stacked voltages, but keep in mind you lose precision by the scaling. The Arduino analog ports provide 10 bit resolution on the voltage range of 0-5 V = ~5 mV. So when scaling to 60 V, resolution drops to ~60 mV. This is good enough to detect a bad cell, but not for precise health monitoring. You may use ADC shields with higher resolution and/or differential voltage probes to get the single cell voltages, but when thinking about this, take a look at specialized battery monitoring chips like the MAX11080 or LTC6811 first.
The pack current can be measured using either a shunt (with an [instrumentation amplifier](http://www.vwlowen.co.uk/arduino/current/current.htm) or an [ADC with preamp](http://arduinotronics.blogspot.de/2015/05/reading-current-shunt-with-arduino.html)) or a hall sensor module like the [LEM HAC 600-S](http://www.lem.com/hq/de/component/option,com_catalog/task,displaymodel/id,64.05.52.000.0/) or the [Tamura L06P400S05](http://www.tamuracorp.com/clientuploads/pdfs/engineeringdocs/L06PXXXS05.pdf). The LEM outputs -4…+4 V so needs to be mapped to the Arduino's 0…5 V (i.e. using an offset voltage divider), the Tamura outputs 0…5 V (2.5 V = 0 A) so can be used directly.
The temperatures can be measured using LM35 sensors. Depending on the variant used, voltage may need to be mapped to the Arduino input. If you want to measure every single cell temperature, you can also extend the setup by another MUX for the temperature sensors -- just use the same address pins as for the voltage MUX.