collin80 / TeslaBMS

143 stars 91 forks source link

We are building a Tesla Powered car #3

Open jjwallace opened 7 years ago

jjwallace commented 7 years ago

Hello, we are building an electric power car. Which other boards have you tested on? What would you suggest for a high-quality board? I want to try interfacing with Tesla batteries this next week.

collin80 commented 6 years ago

Well, I've tested using an Arduino Due and a Teensy 3.6. I don't have experience outside those two. I did test a breadboard design with both of them so a purpose built board is not 100% necessary, just nice to have. There are a few things to keep in mind when searching for a solution to interface to the Tesla BMS sub-boards:

  1. They're 5V so if you use a 2.5 or 3.3v board you will need level shifters. Both boards I used are 3.3v so I used logic AND gates as level buffers.
  2. The baud rate is 612500. Slow processors will either not be able to generate this high of a baud rate or will not be able to generate this exact baud rate properly. 612500 does not exactly divide into the clock rate of most processors. The processor on the Tesla main board is 24.5MHz which is how they generate such a screwy rate. Both the Due and Teensy can generate a suitably close baud rate. The Due has an 84Mhz clock and 84Mhz / 137 = 613138 baud which is close enough to work. Some processors do not have such free baud divisors. Technically 16Mhz / 26 would probably work though.
  3. A thousand amps tends to generate a lot of EMF so even if you didn't need logic buffers you might be best off using them as well as inductors and other noise cancelling devices. Battery packs are a noisy place to store electronics.

EVTV does have prototype boards that go onto a Due or EVTVDue and interface with the Tesla pack. They're not ready for primetime just yet but if you're dying to have one you might be able to convince Jack to sell you one.

jjwallace commented 6 years ago

Very interesting, this is great!

jorakarandas commented 6 years ago

Hey Collin! Thanks for your contribution to the community! All the diy-ers appreciate it a lot.

I encountered an issue with the Arduino Due and the Tesla BMS rev 2 and rev 3 boards. Arduino is sending the messages, but the boards don't respond back (from hardware point of view everything is fine, added lvl shifters). Have tried 1 by 1 about 7 boards and another 8 which I installed in my car already in a daisy chain configuration as described by you.

What problems have you encountered during set up phase? Did the config work right out of the box? Was anything necessary from your side to make it work? Thank you!! 22790528_10159568396120551_617330033_o 22812989_10159568397815551_1126300891_o 22790991_10159568395455551_187911603_o