Welcome to Tesla Motors Club
Discuss Tesla's Model S, Model 3, Model X, Model Y, Cybertruck, Roadster and More.
Register

Using TM-Spy for iOS

This site may earn commission on affiliate links.
TM-Spy will come back shortly much improved supporting both the Model S/X and Model 3. I expect this version to move to the App Store after this next level of testing as I think this version has real value.

The coding for this version is complete with the last few bugs fixed yesterday. I am pleased with its operation on my Model 3. To release for testing I just need to update the Help information and create a few more custom screens for the Model S/X as starters. I am working on the Help file today.

You will need a special Y-cable to tap into the Model 3 cable accessible from the back bottom of the center console when in the back seat.

There is a new third screen to the right where all this new functionality is located. That screen is called the Custom screen as users can create their own screens displaying just the information they want to see by creating a csv file. Information can be displayed as text or gauges or any combination. I have not counted yet but there are 50 to 100 or more parameters that can be selected from. I will have a more exact count once I finish the documentation.

My preferred OBDII for iOS is now the Carista which seems a little faster than the LELink.

Mount 3 Gauge a.jpg
IMG_0136.PNG
 
You can have up to 10 Custom screens accessible by just swiping up or down on the screen. Note the "(CS: 1 of 3)" in the lower left corner of the screen. I have 3 custom screens loaded and screen 1 is currently being displayed.

When you select "Load" you get a menu with these options before select the actual file to load.

Add Above
Add Below
Replace
Delete

With those four option you can control the order of the screens as you swipe up and down. The screens and order are saved when you switch away from the app. I suggest switching away to force a save once you have the screens loaded and in the order you like just in case this version crashes. That way you will not lose your work.

The screen being shown with all the values is for testing as it would be too small to read while driving.
 
Awesome! Thanks @Turbo3. Is this the Carista adapter you're referring to?
Yes, that is the one.

Minor setback, last night PG&E cut the power to my area.

Once they restore power I will be able to finish thing up and release for testing.

There are 98 Model 3 parameters that can be monitored and 118 Model S/X for this test version. More will be added later.

Currently visiting my Dad's place so I have power to run my laptop.
 
Still no power and PG&E just sent a message that they may turn it off again Tuesday even if it does come back today. Like living in a third world country.

Have solar but no battery system so not functional without PG&E

Hope things improve soon for you guys down south!

For the model 3, any idea where to get the Y-cable that will be required to plug-in the Bluetooth dongle?
(Already using the app on Model S, looking forward to capture some date for Model 3)
 
The upgraded TM-Spy test version 0.6.55 has been uploaded to Apple and is awaiting their review. I expect this to be completed mid day tomorrow. It is now Friday 9:30 PM.

I still need to clean up the Help file but the section on creating a Custom Screen is complete.

This version supports up to 20 custom screens which you can just swipe up or down to view once you have selected them.

If you have Dropbox you can just load your Custom Screen .csv files into the "Dropbox/Apps/TM-Spy/Copy To TM-Spy" folder and they will be automatically downloaded and available to load the next time you switch to TM-Spy.

You will need to use a USB cable and iTunes to extract the sample screens I include to use as a starting point.

I will eventually add a trip meter function and logging of data to a csv file and a few more parameters. Just ran out of time and needed to get something out there for testing.

It is also possible I have broken some of the original functions of TM-Spy when adding the Custom Screens. But again, no time to test and fix which should not be a problem once I know what is not working.
 
Last edited:
  • Informative
Reactions: Tech_Guy
Hope things improve soon for you guys down south!

For the model 3, any idea where to get the Y-cable that will be required to plug-in the Bluetooth dongle?
(Already using the app on Model S, looking forward to capture some date for Model 3)
I purchased mine from Germany. I got 8 but they are a little expensive. With shipping and VAT $90. These are for the 2018 Model 3's which use the same connector as the current mode S/X (20 Pin) but you need both Male and Female.

My understanding is that from 2019 on they used a 26 pin connector but I only have one of these for my testing.

Can you measure you connector width? the 20 pin is about 1.3" and the 26 1.56".

Here is a link to their website. diagnostic cable – EMDS
 
Model S/X Variables
List of currently available variables that can be displayed and their index number (used in Column I).

  • 1 = Battery Voltage V
  • 2 = Battery Current A
  • 3 = Battery Power kW (1x2)
  • 4 = Battery Inlet Temperature C F
  • 5 = Powertrain Inlet Temperature C F
  • 6 = Battery Heater Temperature C F
  • 7 = Thermal Controller 400v kW
  • 8 = Thermal Controller 12v kW
  • 9 = Thermal Controllers kW (7+8)
  • 10 = DC-DC 12v Current A
  • 11 = DC-DC 12v Voltage V
  • 12 = DC-DC Coolant Inlet Temperature C F
  • 13 = DC-DC Input Power W
  • 15 = DC-DC Output Power W (10x11)
  • 16 = DC-DC Efficiency % (15/13)
  • 18 = Front Torque Measured Nm ft/lb
  • 19 = Front/Rear Torque Bias % (20/(18+20)
  • 20 = Rear Torque Measured Nm ft/lb
  • 21 = Accelerator Pedal A %
  • 22 = Front Mechanical Power kW
  • 23 = Front Dissipation kW
  • 24 = Front Input Power kW (22+23)
  • 25 = Front Mechanical Power HP (22*1.34102)
  • 26 = Front Stator Current A
  • 27 = Front Drive Power Max kW
  • 28 = Mechanical Power Combined kw (22+32)
  • 29 = HP Combined HP (22+32*1.34102)
  • 30 = Front Efficiency % (22/24)
  • 31 = Rear Inverter 12v Voltage V
  • 32 = Rear Mechanical Power kW
  • 33 = Rear Dissipation kW
  • 34 = Rear Input Power kW (32+33)
  • 35 = Propulsion Power kW (22+23+32+33)
  • 36 = Rear Mechanical Power HP (32*1.34102)
  • 37 = Rear Stator Current A
  • 38 = Rear Regen Power Max kW
  • 39 = Rear Drive Power Max kW
  • 40 = Rear Efficiency % (32/34)
  • 41 = Front Torque Estimate Nm ft/lb
  • 42 = Rear Torque Estimate Nm ft/lb
  • 43 = Consumption wh/km wh/mi (3/141)
  • 45 = Rear Inverter PCB Temperature C F
  • 46 = Rear Stator Temperature C F
  • 47 = Rear DC Capacitor Temperature C F
  • 48 = Rear Heat Sink Temperature C F
  • 49 = Rear Inverter Temperature C F
  • 50 = Nominal Full Pack Energy kWh
  • 51 = Nominal Remaining Energy kWh
  • 52 = Expected Remaining Energy kWh
  • 53 = Ideal Remaining Energy kWh
  • 54 = To Charge Complete kWh
  • 55 = Energy Buffer kWh
  • 56 = SOC % ((50-55)/(51-55)))
  • 57 = Usable Full Pack Energy kWh (50-55)
  • 58 = Usable Remaining Energy kWh (51-55)
  • 59 = SOC Min %
  • 60 = SOC UI %
  • 61 = DC Charge Total kWh
  • 62 = AC Charge Total kWh
  • 65 = Charge Total kWh
  • 66 = Discharge Total kWh
  • 75 = Odometer km mi
  • 78 = Odometer Legacy km mi
  • 79 = Front Motor RPM
  • 80 = Rear Motor RPM
  • 81 = BMS Max Discharge kW
  • 82 = BMS Max Charge kW
  • 83 = Brake Pedal %
  • 84 = Steering Angle
  • 85 = Rated Range km mi
  • 86 = Typical Range km mi
  • 87 = Full Rated Range km mi (85*(50-55)/(51-55))
  • 88 = Full Typical Range km mi (86*(50-55)/(51-55))
  • 90 = Front Wheel Left RPM
  • 91 = Front Wheel Right RPM
  • 92 = Front Drive Ratio :1 ((79+79)/90+91))
  • 93 = Rear Wheel Left RPM
  • 94 = Rear Wheel Right RPM
  • 95 = Rear Drive Ratio :1 ((80+80)/93+94))
  • 96 = Series/Parallel
  • 97 = Battery Pump 1 %
  • 98 = Battery Pump 2 %
  • 99 = Powertrain Pump %
  • 100 = Powertrain Pump 2 %
  • 101 = Radiator Bypass %
  • 102 = Chiller Bypass %
  • 103 = Coolant Heater %
  • 104 = PTC Air Heater %
  • 105 = Outside Temperature C F
  • 106 = Outside Temperature Filtered C F
  • 107 = Inside Temperature C F
  • 108 = A/C Air Temperature C F
  • 109 = Refrigerant Temperature C F
  • 110 = Heater Left Temperature C F
  • 111 = Heater Right Temperature C F
  • 112 = Mid Vent Left Temperature C F
  • 113 = Mid Vent Right Temperature C F
  • 114 = Floor Vent Left Temperature C F
  • 115 = Floor Vent Right Temperature C F
  • 116 = Louver 1 %
  • 117 = Louver 2 %
  • 118 = Louver 3 %
  • 119 = Louver 4 %
  • 120 = Louver 5 %
  • 121 = Louver 6 %
  • 122 = Louver 7 %
  • 123 = Louver 8 %
  • 124 = HVAC Floor Vent open/closed
  • 125 = HVAC Mid Vent open/closed
  • 126 = HVAC Window Vent open/closed
  • 127 = HVAC A/C on/off
  • 128 = HVAC on/off
  • 129 = HVAC Fan Speed
  • 130 = HVAC Temperature Left C F
  • 131 = HVAC Temperature Right C F
  • 141 = Speed kph mph
  • 144 = Accelerator Pedal B %
  • 145 = Front Inverter 12v Voltage V
  • 199 = Frames/Second
Model 3 Variables
List of currently available variables that can be displayed and their index number (used in Column I).

  • 1 = Battery Voltage V
  • 2 = Battery Current A
  • 3 = Battery Power kW (1x2)
  • 4 = Front Power kW
  • 5 = Rear Power kW
  • 7 = Inverter PCB Temperature C F
  • 8 = Inverter Temperature C F
  • 9 = Stator Temperature C F
  • 10 = Inverter Capacitor Temperature C F
  • 11 = Max Discharge Power kW
  • 12 = Max Regen Power kW
  • 13 = Front Left Brake Est Temperature C F
  • 14 = Front Right Brake Est Temperature C F
  • 15 = Rear Left Brake Est Temperature C F
  • 16 = Rear Right Brake Est Temperature C F
  • 17 = Consumption wh/km wh/mi (3/62)
  • 18 = DC Charge Total kWh
  • 19 = AC Charge Total kWh
  • 22 = Regen Total kWh
  • 27 = Odometer km mi
  • 30 = Nominal Full Pack Energy kWh
  • 31 = Nominal Remaining Energy kWh
  • 32 = Expected Remaining Energy kWh
  • 33 = Ideal Remaining Energy kWh
  • 34 = To Charge Complete kWh
  • 35 = Energy Buffer kWh
  • 36 = SOC % ((50-55)/(51-55)))
  • 37 = SOC UI %
  • 38 = SOC Min %
  • 39 = SOC Max %
  • 40 = SOC Avg %
  • 41 = Cell Temperature Max C F
  • 42 = Cell Temperature Mid C F ((41+43)/2)
  • 43 = Cell Temperature Min C F
  • 44 = Cell Voltage Max V
  • 45 = Cell Voltage Mid V ((44+46)/2)
  • 46 = Cell Voltage Min V
  • 47 = Cell Imbalance Voltage mV
  • 48 = Battery Minimum Temperature C F
  • 49 = Battery Inlet Temperature C F
  • 50 = Powertrain Inlet Temperature C F
  • 51 = Outside Temperature C F
  • 52 = Outside Temperature Filtered C F
  • 53 = Battery Coolant Flow LPM GPM
  • 54 = Powertrain Coolant Flow LPM GPM
  • 55 = Charge Total kWh
  • 56 = Discharge Total kWh
  • 62 = Speed kmh mph
  • 100 = VIN
  • 101 = Battery Serial Number
  • 102 = Unix Time
  • 103 = Timestamp UTC
  • 104 = Elevation m ft
  • 110 = 12v Battery Voltage V
  • 111 = 12v Battery Current A
  • 112 = 12v Battery Temperature C F
  • 113 = 12v Battery AH Ah
  • 114 = Steering Angle deg
  • 115 = Steering Speed deg/s
  • 116 = Gear Lever Position
  • 117 = Gear Lever Button
  • 118 = Accelerator Pedal Position %
  • 120 = Front Torque Request Axil Nm ft/lb
  • 121 = Front Torque Actual Axil Nm ft/lb
  • 122 = Front Axle RPM
  • 123 = Rear Torque Request Axil Nm ft/lb
  • 124 = Rear Torque Actual Axil Nm ft/lb
  • 125 = Rear Axle RPM
  • 126 = Front Torque Request Motor Nm ft/lb
  • 127 = Front Torque Motor Nm ft/lb
  • 128 = Rear Torque Request Motor Nm ft/lb
  • 129 = Rear Torque Motor Nm ft/lb
  • 130 = DC-DC Converter State
  • 131 = DC-DC Output Current A
  • 132 = DC-DC Max Output Current A
  • 133 = Left Stalk F/R Position
  • 134 = Left Stalk Button
  • 135 = Left Stalk Up/Dn Position
  • 136 = BMS Minimum Voltage V
  • 137 = BMS Maximum Voltage V
  • 138 = BMS Maximum Charge Current A
  • 139 = BMS Maximum Discharge Current A
  • 140 = Front Oil Pump State
  • 141 = Front Oil Pump Flow Target LPM GPM
  • 142 = Front Oil Pump Flow Actual LPM GPM
  • 143 = Front Oil Pump PCB Temperature C F
  • 144 = Front Oil Pump Temperature C F
  • 145 = Front Oil Pump Voltage V
  • 146 = Front Oil Pump Current A
  • 147 = Front Oil Pump Coolant Current Offset A
  • 148 = Rear Oil Pump State
  • 149 = Rear Oil Pump Flow Target LPM GPM
  • 150 = Rear Oil Pump Flow Actual LPM GPM
  • 151 = Rear Oil Pump PCB Temperature C F
  • 152 = Rear Oil Pump Temperature C F
  • 153 = Rear Oil Pump Voltage V
  • 154 = Rear Oil Pump Current A
  • 155 = Rear Oil Pump Coolant Current Offset A
  • 199 = Frames/Second
 
  • Informative
Reactions: Tech_Guy
I see two bugs which may be the same. One with WiFi and the other with BLE.

If you start TM-Spy fresh (double tap the home button then swipe away (up) TM-Spy screen if it appears), tap home button to move TM-Spy to the background then start TM-Spy again you see the bug for each connection type.

For WiFi it crashes the app after around 1500 frames are received.

For BLE TM-Spy losses the connection causing the status area to turn yellow then reconnects going back to green. This happens every few thousand frames. To fix do a fresh start of TM-Spy.

I am hoping these are the same bug with just different results depending on connection type.

The crash would normally be easy to find by just running the app in debug mode. However, in Debug more the WiFi is used to log the debug information and since WiFi is connected to the OBDII adapter this is not possible.

I had seen the BLE bug before with the connection status area going Yellow then recovering back to Green. But at the time I had ignored it as I was trying to get other things working.

My guess is I am starting a duplicate thread and they are interfering with each other. Moving TM-Spy back to the foreground after it was in background should not start a second thread just keep running the original one.