Is EmonHub used if EmonESP is using MQTT?

I am trying to learn a bit more about what all the moving pieces are in this Emon suite. Is the EmonHub only used if the power sensors are connected directly to the board that is running EmonHub? To support the RFM69 input on an EmonPi? The docs say it is a python script that reads from serial and passes to MQTT. Is that right?

So, if I have a Split Single Phase Energy Meter that consists of the sensors, and an ESP that is sending data via MQTT (configured via EmonESP) to my own RaspberryPi running the preconfigured SD card, is EmonHub skipped? It looks to me like the emoncms_mqtt.php file is running listening for topics and takes that data and puts it into MySql for EmonCMS to use, which seems to suggest that. Yes?

Yes (I think).

Partly. EmonHub takes data on the serial interface, usually from an RFM board, and then transmits it onwards to EmonCMS (either on a local machine or emoncms.org). It can do this in a number of ways, the MQTT and HTTP API being the most common.

You can configure the EmonESP to pass data either by MQTT or HTTP API to your EmonCMS instance.

Yes.

Almost. The emoncms_mqtt service listens for the published base topic emon and passes and data published to the EmonCMS Inputs - at that stage the data is not stored permanently. If a process is set up on that Input to log the data, at that point it is logged usually into one of the timeseries data stores (not SQL).

HTH