Tesla_custom + HA + node_red -- how to directly control entities?

Hello fellow automators! I had a qq about how to interact with some of the entities made available to HA from the tesla_custom integration, but through the node-red integration.

For example, from a HA dashboard, I have the ability to change various settings of a powerwall – say, to adjust the backup reserve percentage value.

In Node Red, if I drop in a 'call service" node and choose “tesla_custom” as the domain, I’m only given two choices – api or polling_interval and don’t get a list of entities as I would if, say, I had chosen “switch” as the domain instead.

After lots of trial and error using the undocumented ‘api’ choice, I was ultimately able to make the adjustments I need, but was just wondering if I was doing something wrong in not being able to see the entities as they show in HA?

If it’s relevant, Node Red is using node-red-contrib-home-assistant-websocket to communicate with HA.

Node-Red version: 3.0.2
HA version: 2022.11.3

The Tesla integration creates a number of entities, switches, sensors etc. You interact with them like any other switch, sensor or whatever.

Right, that’s what I thought I described above?

Ah, I see what I did wrong – I chose tesla_custom as the domain thinking all of the entities would live under that, which is incorrect.

Instead, in HA, under Settings, Integrations, if I click on the link “50 entities” on the tesla_custom tile, I can see all of the entities created and their addressable names. I see now that what I should have chosen for the domain in the ‘call service’ node should have been ‘number.’

Do you still have the code snippet you used to chat with the Tesla_custom API in Node Red? I want to set the scheduled climate system from within Node Red and there’s no direct link in Tesla_custom, just an API call.

In case anyone comes across this thread, I was able to successfully run the Tesla_custom API call service node.

The JSON I put into Data was:
{“command”:“SCHEDULED_DEPARTURE”,“parameters”:{“path_vars”:{“vehicle_id”:“114441133397445663”},“enable”:false,“departure_time”:480,“preconditioning_enabled”:false,“preconditioning_weekdays_only”:false,“off_peak_charging_enabled”:false,“off_peak_charging_weekdays_only”:false,“end_off_peak_time”:420,“wake_if_asleep”:true}}

This turns off the scheduled departure. Changing enable and precondition to true will turn it on.
departure time is minutes since midnight.
(This is part of a flow to read an Apple Calendar and automatically set/disable the scheduled departure based on who is working in the family)

1 Like