This document describes an IoT-based dual-axis solar tracker system with maximum power point tracking (MPPT) using a Raspberry Pi and NodeMCU. It calculates the sun's position using equations that take latitude, longitude, time and date as inputs to determine the azimuth and altitude angles without sensors. An MQTT protocol transmits data between the PV module (NodeMCU) and server (Node-RED) regarding voltage, current, angles, and duty cycle. Node-RED installed on the Raspberry Pi calculates the duty cycle to extract maximum power from the PV system using two servo motors to adjust the panel's position. Experimental results found a tracking error of 0.1° and 0.47° for altitude and