Skip to content

Elmar Solar MPPT

Profinity monitors the Elmar Solar Maximum Power Point Tracker (MPPT). Profinity supports the 3A, Race and Best with one component, because they share one communications protocol. They use the CAN database (DBC) file described in the Elmar MPPT DBC documentation.

Elmar Solar makes MPPTs that optimise the output of solar arrays. The Elmar range distributed by Prohelion consists of the Elmar 3A MPPT, the Elmar Race MPPT and the Elmar Best MPPT. The Solar Charge Controllers by Elmar documentation describes them.

Quick start

You need the Modify components permission to add the component. The Elmar Solar MPPT must send its CAN messages on a CAN network that the Profinity host reads through a CAN adapter in the Profile. The component shows only the messages it receives from that network.

  1. Add an Elmar Solar MPPT to the Profile.
  2. Set Base address to the CAN address of the MPPT, as described in the Elmar MPPT DBC. The default is 0x300.
  3. Select ADD COMPONENT at the bottom of the dialog.
  4. Open the Elmar Solar MPPT dashboard from the sidebar.
  5. Check that INPUT VOLTAGE and OUTPUT VOLTAGE show values, and that the BATTERY STATE panel shows On or Standby.

Add the MPPT to a profile

To monitor an Elmar Solar MPPT, add an Elmar Solar MPPT tracker to the Profile. Profinity requests the settings in the following table. The Change Settings button on the MPPT dashboard changes these settings later.

Setting Type Description Default
Name Text The name of the component. Must be unique. Elmar Solar MPPT
Milliseconds valid Time The timeout of the device in milliseconds, from 1 to 60000, or -1 for no timeout. 5000
Base address Hexadecimal number The CAN address of the MPPT, as described in the Elmar MPPT DBC. 0x300

If the network receives no traffic from the device within the Milliseconds valid time, Profinity treats the connection as lost.

Once the MPPT is added to the Profile, the Elmar Solar MPPT dashboard is available in the sidebar. The dashboard displays graphs of input voltage and output power, error status indicators and, under the MORE DETAILS banner, the input, output, temperature and auxiliary supply readings.

flowchart LR
    subgraph Device["Elmar Solar MPPT"]
        MPPT["CAN messages"]
    end
    subgraph Profile["Profile"]
        Dashboard["MPPT dashboard"]
        DBC["DBC view"]
    end
    MPPT --> Dashboard
    MPPT --> DBC
The Elmar Solar MPPT sends CAN messages that the MPPT dashboard in the Profile decodes, and the same raw data is available in the DBC view

Elmar Solar MPPT dashboard showing the summary row, graphs, event indicators and state flowchart

Elmar Solar MPPT

The raw CAN data from an Elmar Solar MPPT is also available in the DBC view. The Messages and Signals button on the dashboard opens it.

MPPT data

The summary row of the MPPT dashboard shows the values in the following table.

Cell Meaning
INPUT VOLTAGE The voltage produced by the connected solar array, in volts.
INPUT CURRENT The current delivered by the connected solar array, in amps.
OUTPUT VOLTAGE The output voltage of the MPPT, in volts.
OUTPUT CURRENT The output current of the MPPT, in amps.

The dashboard also shows two time-series graphs of the input voltage and output power of the MPPT. Hover over a graph to see the data in greater resolution.

The MPPT EVENTS panel shows status indicators for MPPT events. Error indicators are red. Limit indicators are amber, except the local and global MPPT lamps, which are green. Each lamp shows On or Off.

Type Colour Indicators
Error Red Low array power, hardware overvoltage, hardware overcurrent, metal-oxide-semiconductor field-effect transistor (MOSFET) overheat, 12 V undervoltage, battery low and battery full
Limit Amber Input current minimum and maximum, output voltage maximum, duty cycle minimum and maximum, and MOSFET temperature
Limit Green The local and global MPPT lamps, each On or Off

The events correspond to the Status message of the Elmar MPPT DBC. The message carries the error and limit flags, the mode, and the CAN receive and transmit error counters. The Solar Charge Controllers by Elmar documentation links the datasheet of each product.

A simplified flowchart shows the MPPT state, which is either Standby or On according to the Mode signal of the Status message. The grey box marks the current state.

Expand the MORE DETAILS banner to see these readings:

  • Input, output, and power readings.
  • MOSFET, controller, and power connector temperatures.
  • The auxiliary 12 V and 3 V supply and battery-side output voltages.

The state of a connected battery is described on the Prohelion BMU page.

Tags

The component publishes the tags OutputPower, InputPower, and MpptStateText.

Example

This example is for illustration. It adds a second Elmar Solar MPPT to a profile, with the CAN base address 0x6A0 (1696 in decimal). Add it under components: in the profile.yaml file of the profile.

- component:
    type: ElmarMPPT
    id: ElmarMPPT2
    name: Elmar Solar MPPT - 6A0
    tagTreeParentPath: /
    milliValid: 5000
    baseAddress: 1696

Use a different id and Base address for each MPPT in the profile.

Troubleshooting

What you see Cause What to do
"There is already a component in this profile operating in this CAN Address range, change your CAN Base Address to avoid a conflict" The MPPT uses a fixed CAN address range of 0x0F above its Base address, and another component in the profile uses an address in that range Change the Base address of this MPPT, or of the other component, so that the ranges do not overlap, then select ADD COMPONENT again.
INPUT VOLTAGE and OUTPUT VOLTAGE show no values, and the MPPT is treated as lost No CAN traffic from the MPPT arrives within Milliseconds valid, either because Base address does not match the MPPT or because the MPPT sends on a network that the Profinity host does not read Check that Base address matches the CAN address in the Elmar MPPT DBC and that the MPPT is on the network the host reads. If traffic is slow, raise Milliseconds valid (1 to 60000, or -1 for no timeout).