{
  "metadata": {
    "id": "micoair743-fc-esc-stack",
    "name": "MicoAir 743 FC/ESC Stack",
    "type": "motor_controller",
    "description": "Combined Betaflight-compatible flight controller and 4-in-1 ESC stack for 5\" quads.",
    "manufacturer": "MicoAir",
    "part_number": "F4-FC-4in1-30A",
    "datasheet_url": "https://micoair.com/docs/micoair743-user-manual/",
    "tags": [
      "flight-controller",
      "esc",
      "betaflight",
      "fpv",
      "quadcopter",
      "aio-esc"
    ],
    "schema_version": "1.4.0",
    "version": "0.2.0",
    "taxonomy": [
      "actuator.motor_controller",
      "robotics.rc"
    ]
  },
  "domains": [
    {
      "domain": "electrical",
      "power_domains": [
        {
          "id": "main",
          "name": "Main LiPo Input",
          "nominal_voltage_V": 14.8,
          "voltage_range_V": [
            10,
            25
          ],
          "isolation_type": "non_isolated",
          "ground_reference": "common",
          "description": "Battery input domain feeding ESC and regulators."
        },
        {
          "id": "logic",
          "name": "5V Logic Rail",
          "nominal_voltage_V": 5,
          "voltage_range_V": [
            4.5,
            5.5
          ],
          "isolation_type": "non_isolated",
          "ground_reference": "common",
          "description": "Regulated 5V rail for FC, receiver, and peripherals."
        },
        {
          "id": "logic_3v3",
          "name": "3.3V Logic Rail",
          "nominal_voltage_V": 3.3,
          "voltage_range_V": [
            3,
            3.6
          ],
          "isolation_type": "non_isolated",
          "ground_reference": "common",
          "description": "Regulated 3.3V rail for sensors and peripherals."
        },
        {
          "id": "motor",
          "name": "Motor Power Domain",
          "nominal_voltage_V": 14.8,
          "voltage_range_V": [
            9,
            25.2
          ],
          "isolation_type": "non_isolated",
          "ground_reference": "common",
          "description": "Motor output domain (battery voltage through ESC)"
        }
      ],
      "resources": [
        {
          "id": "main_in",
          "name": "Main Battery +",
          "description": "Main LiPo positive input.",
          "functions": [
            {
              "name": "power_input",
              "description": "Main LiPo positive input",
              "direction": "sink",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "main",
          "current_rating": {
            "sink": {
              "max_continuous_mA": 90000,
              "max_peak_mA": 120000,
              "peak_duration_ms": 100
            }
          }
        },
        {
          "id": "main_ground",
          "name": "Main Ground Return",
          "description": "Battery ground return reference",
          "functions": [
            {
              "name": "ground",
              "description": "Battery ground reference",
              "direction": "sink",
              "signal_class": "ground"
            }
          ],
          "power_domain_id": "main",
          "current_rating": {
            "sink": {
              "max_continuous_mA": 90000,
              "max_peak_mA": 120000,
              "peak_duration_ms": 100
            }
          }
        },
        {
          "id": "5v_out_rx_pos",
          "name": "5V Output - RX (+)",
          "description": "5V regulated output to receiver.",
          "functions": [
            {
              "name": "power_output",
              "description": "5V regulated output",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "logic",
          "current_rating": {
            "source": {
              "max_continuous_mA": 2000
            }
          }
        },
        {
          "id": "5v_out_rx_gnd",
          "name": "5V Output - RX (GND)",
          "description": "5V ground return for receiver.",
          "functions": [
            {
              "name": "ground",
              "description": "5V ground reference",
              "direction": "source",
              "signal_class": "ground"
            }
          ],
          "power_domain_id": "logic",
          "current_rating": {
            "source": {
              "max_continuous_mA": 2000
            }
          }
        },
        {
          "id": "3v3_out_pos",
          "name": "3.3V Output (+)",
          "description": "3.3V regulated output.",
          "functions": [
            {
              "name": "power_output",
              "description": "3.3V regulated output",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "logic_3v3",
          "current_rating": {
            "source": {
              "max_continuous_mA": 500
            }
          }
        },
        {
          "id": "3v3_out_gnd",
          "name": "3.3V Output (GND)",
          "description": "3.3V ground reference.",
          "functions": [
            {
              "name": "ground",
              "description": "3.3V ground reference",
              "direction": "source",
              "signal_class": "ground"
            }
          ],
          "power_domain_id": "logic_3v3",
          "current_rating": {
            "source": {
              "max_continuous_mA": 500
            }
          }
        },
        {
          "id": "rx_uart",
          "name": "Receiver UART",
          "functions": [
            {
              "name": "uart_tx",
              "description": "Flight controller UART TX to receiver",
              "direction": "source",
              "signal_class": "data"
            },
            {
              "name": "uart_rx",
              "description": "Flight controller UART RX from receiver",
              "direction": "sink",
              "signal_class": "data"
            }
          ],
          "power_domain_id": "logic"
        },
        {
          "id": "rx_uart_rx",
          "name": "Receiver UART RX",
          "description": "Flowing into the FC from the receiver.",
          "functions": [
            {
              "name": "uart_rx",
              "description": "Flight controller UART RX from receiver",
              "direction": "sink",
              "signal_class": "data"
            }
          ],
          "power_domain_id": "logic"
        },
        {
          "id": "i2c_bus",
          "name": "I2C Bus",
          "description": "I2C bus for sensors and peripherals",
          "functions": [
            {
              "name": "i2c_scl",
              "description": "I2C clock line",
              "direction": "source",
              "signal_class": "clock",
              "shareable_with": [
                "i2c_sda"
              ]
            },
            {
              "name": "i2c_sda",
              "description": "I2C data line",
              "direction": "bidirectional",
              "signal_class": "data",
              "shareable_with": [
                "i2c_scl"
              ]
            }
          ],
          "power_domain_id": "logic_3v3"
        },
        {
          "id": "motor1_phase_a",
          "name": "Motor 1 Phase A",
          "description": "ESC output phase A for motor 1",
          "functions": [
            {
              "name": "phase_a",
              "description": "3-phase output A to motor",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "motor",
          "current_rating": {
            "source": {
              "max_continuous_mA": 35000,
              "max_peak_mA": 50000,
              "peak_duration_ms": 100
            }
          }
        },
        {
          "id": "motor1_phase_b",
          "name": "Motor 1 Phase B",
          "description": "ESC output phase B for motor 1",
          "functions": [
            {
              "name": "phase_b",
              "description": "3-phase output B to motor",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "motor",
          "current_rating": {
            "source": {
              "max_continuous_mA": 35000,
              "max_peak_mA": 50000,
              "peak_duration_ms": 100
            }
          }
        },
        {
          "id": "motor1_phase_c",
          "name": "Motor 1 Phase C",
          "description": "ESC output phase C for motor 1",
          "functions": [
            {
              "name": "phase_c",
              "description": "3-phase output C to motor",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "motor",
          "current_rating": {
            "source": {
              "max_continuous_mA": 35000,
              "max_peak_mA": 50000,
              "peak_duration_ms": 100
            }
          }
        },
        {
          "id": "motor2_phase_a",
          "name": "Motor 2 Phase A",
          "description": "ESC output phase A for motor 2",
          "functions": [
            {
              "name": "phase_a",
              "description": "3-phase output A to motor",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "motor",
          "current_rating": {
            "source": {
              "max_continuous_mA": 35000,
              "max_peak_mA": 50000,
              "peak_duration_ms": 100
            }
          }
        },
        {
          "id": "motor2_phase_b",
          "name": "Motor 2 Phase B",
          "description": "ESC output phase B for motor 2",
          "functions": [
            {
              "name": "phase_b",
              "description": "3-phase output B to motor",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "motor",
          "current_rating": {
            "source": {
              "max_continuous_mA": 35000,
              "max_peak_mA": 50000,
              "peak_duration_ms": 100
            }
          }
        },
        {
          "id": "motor2_phase_c",
          "name": "Motor 2 Phase C",
          "description": "ESC output phase C for motor 2",
          "functions": [
            {
              "name": "phase_c",
              "description": "3-phase output C to motor",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "motor",
          "current_rating": {
            "source": {
              "max_continuous_mA": 35000,
              "max_peak_mA": 50000,
              "peak_duration_ms": 100
            }
          }
        },
        {
          "id": "motor3_phase_a",
          "name": "Motor 3 Phase A",
          "description": "ESC output phase A for motor 3",
          "functions": [
            {
              "name": "phase_a",
              "description": "3-phase output A to motor",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "motor",
          "current_rating": {
            "source": {
              "max_continuous_mA": 35000,
              "max_peak_mA": 50000,
              "peak_duration_ms": 100
            }
          }
        },
        {
          "id": "motor3_phase_b",
          "name": "Motor 3 Phase B",
          "description": "ESC output phase B for motor 3",
          "functions": [
            {
              "name": "phase_b",
              "description": "3-phase output B to motor",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "motor",
          "current_rating": {
            "source": {
              "max_continuous_mA": 35000,
              "max_peak_mA": 50000,
              "peak_duration_ms": 100
            }
          }
        },
        {
          "id": "motor3_phase_c",
          "name": "Motor 3 Phase C",
          "description": "ESC output phase C for motor 3",
          "functions": [
            {
              "name": "phase_c",
              "description": "3-phase output C to motor",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "motor",
          "current_rating": {
            "source": {
              "max_continuous_mA": 35000,
              "max_peak_mA": 50000,
              "peak_duration_ms": 100
            }
          }
        },
        {
          "id": "motor4_phase_a",
          "name": "Motor 4 Phase A",
          "description": "ESC output phase A for motor 4",
          "functions": [
            {
              "name": "phase_a",
              "description": "3-phase output A to motor",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "motor",
          "current_rating": {
            "source": {
              "max_continuous_mA": 35000,
              "max_peak_mA": 50000,
              "peak_duration_ms": 100
            }
          }
        },
        {
          "id": "motor4_phase_b",
          "name": "Motor 4 Phase B",
          "description": "ESC output phase B for motor 4",
          "functions": [
            {
              "name": "phase_b",
              "description": "3-phase output B to motor",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "motor",
          "current_rating": {
            "source": {
              "max_continuous_mA": 35000,
              "max_peak_mA": 50000,
              "peak_duration_ms": 100
            }
          }
        },
        {
          "id": "motor4_phase_c",
          "name": "Motor 4 Phase C",
          "description": "ESC output phase C for motor 4",
          "functions": [
            {
              "name": "phase_c",
              "description": "3-phase output C to motor",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "motor",
          "current_rating": {
            "source": {
              "max_continuous_mA": 35000,
              "max_peak_mA": 50000,
              "peak_duration_ms": 100
            }
          }
        },
        {
          "id": "5v_out_sensor_pos",
          "name": "5V Output - Sensor (+)",
          "description": "5V regulated output for sensors.",
          "functions": [
            {
              "name": "power_output",
              "description": "5V regulated output",
              "direction": "source",
              "signal_class": "power"
            }
          ],
          "power_domain_id": "logic",
          "current_rating": {
            "source": {
              "max_continuous_mA": 1000
            }
          }
        },
        {
          "id": "5v_out_sensor_gnd",
          "name": "5V Output - Sensor (GND)",
          "description": "5V ground return for sensors.",
          "functions": [
            {
              "name": "ground",
              "description": "5V ground reference",
              "direction": "source",
              "signal_class": "ground"
            }
          ],
          "power_domain_id": "logic",
          "current_rating": {
            "source": {
              "max_continuous_mA": 1000
            }
          }
        }
      ],
      "interfaces": [
        {
          "id": "main_power_in",
          "name": "Main Power In",
          "protocol": {
            "type": "power",
            "role": "input"
          },
          "requires": [
            {
              "function": "power_input",
              "count": 1
            },
            {
              "function": "ground",
              "count": 1
            }
          ],
          "constraints": {
            "requires_matching_voltage_domain": false
          },
          "description": "Main LiPo power input for the stack."
        },
        {
          "id": "logic_5v_output",
          "name": "5V Accessory Power",
          "protocol": {
            "type": "power",
            "role": "output"
          },
          "requires": [
            {
              "function": "power_output",
              "count": 1
            },
            {
              "function": "ground",
              "count": 1
            }
          ],
          "constraints": {
            "max_connections": 3
          },
          "power_delivery": {
            "max_voltage_V": 5.5,
            "max_current_mA": 2000
          },
          "description": "5V output for receiver and peripherals."
        },
        {
          "id": "logic_3v3_output",
          "name": "3.3V Sensor Power",
          "protocol": {
            "type": "power",
            "role": "output"
          },
          "requires": [
            {
              "function": "power_output",
              "count": 1
            },
            {
              "function": "ground",
              "count": 1
            }
          ],
          "constraints": {
            "max_connections": 3
          },
          "power_delivery": {
            "max_voltage_V": 3.6,
            "max_current_mA": 500
          },
          "description": "3.3V output for sensors and peripherals."
        },
        {
          "id": "rx_uart_ifc",
          "name": "Receiver Link (UART)",
          "protocol": {
            "type": "uart",
            "role": "host"
          },
          "requires": [
            {
              "function": "uart_tx",
              "count": 1
            },
            {
              "function": "uart_rx",
              "count": 1
            }
          ],
          "constraints": {
            "requires_matching_voltage_domain": true
          },
          "description": "UART link to RC receiver (SBUS/CRSF-like)."
        },
        {
          "id": "i2c_ifc",
          "name": "I2C Bus",
          "protocol": {
            "type": "i2c",
            "role": "master"
          },
          "requires": [
            {
              "function": "i2c_scl",
              "count": 1,
              "shareable_with": [
                "i2c_sda"
              ]
            },
            {
              "function": "i2c_sda",
              "count": 1,
              "shareable_with": [
                "i2c_scl"
              ]
            }
          ],
          "constraints": {
            "requires_matching_voltage_domain": true,
            "max_connections": 4
          },
          "description": "I2C bus for sensors (gyro, accelerometer, magnetometer, etc.)."
        },
        {
          "id": "motor1_output",
          "name": "Motor 1 Output",
          "protocol": {
            "type": "brushless_3phase",
            "role": "driver"
          },
          "requires": [
            {
              "function": "phase_a",
              "count": 1
            },
            {
              "function": "phase_b",
              "count": 1
            },
            {
              "function": "phase_c",
              "count": 1
            }
          ],
          "power_delivery": {
            "max_voltage_V": 25.2,
            "max_current_mA": 35000
          },
          "description": "3-phase brushless motor output for motor 1"
        },
        {
          "id": "motor2_output",
          "name": "Motor 2 Output",
          "protocol": {
            "type": "brushless_3phase",
            "role": "driver"
          },
          "requires": [
            {
              "function": "phase_a",
              "count": 1
            },
            {
              "function": "phase_b",
              "count": 1
            },
            {
              "function": "phase_c",
              "count": 1
            }
          ],
          "power_delivery": {
            "max_voltage_V": 25.2,
            "max_current_mA": 35000
          },
          "description": "3-phase brushless motor output for motor 2"
        },
        {
          "id": "motor3_output",
          "name": "Motor 3 Output",
          "protocol": {
            "type": "brushless_3phase",
            "role": "driver"
          },
          "requires": [
            {
              "function": "phase_a",
              "count": 1
            },
            {
              "function": "phase_b",
              "count": 1
            },
            {
              "function": "phase_c",
              "count": 1
            }
          ],
          "power_delivery": {
            "max_voltage_V": 25.2,
            "max_current_mA": 35000
          },
          "description": "3-phase brushless motor output for motor 3"
        },
        {
          "id": "motor4_output",
          "name": "Motor 4 Output",
          "protocol": {
            "type": "brushless_3phase",
            "role": "driver"
          },
          "requires": [
            {
              "function": "phase_a",
              "count": 1
            },
            {
              "function": "phase_b",
              "count": 1
            },
            {
              "function": "phase_c",
              "count": 1
            }
          ],
          "power_delivery": {
            "max_voltage_V": 25.2,
            "max_current_mA": 35000
          },
          "description": "3-phase brushless motor output for motor 4"
        }
      ],
      "supply_voltage_V": [
        10,
        25
      ],
      "power_consumption_mW": 500,
      "pin_count": 20
    }
  ],
  "design_rules": [
    "Ensure main battery voltage is within ESC/FC rating.",
    "Do not exceed 2A total draw from 5V BEC.",
    "Do not exceed 500mA from 3.3V regulator."
  ],
  "validation_requirements": [
    "Check that all connected motors are powered from compatible domains.",
    "Verify receiver power domain and logic levels are compatible with FC.",
    "Ensure I2C sensors are 3.3V compatible."
  ],
  "usage_notes": "Common F4/F7 FC + 4-in-1 ESC stack for 5\" quads running Betaflight.",
  "application_examples": [
    "5\" freestyle quadcopter",
    "Racing quadcopter"
  ],
  "compatibility_notes": "Works with 3-6S LiPo input and brushless motors up to ~30A continuous per arm.",
  "warnings": [
    "Incorrect battery polarity will destroy the stack.",
    "Ensure adequate cooling and airflow for ESC."
  ],
  "node_geometry": {
    "xScale": 1,
    "yScale": 1,
    "outline": {
      "preset": "rounded_rectangle"
    }
  }
}