During the past years, the development of indoor localization systems has been a hot topic in research because the Global Navigation Satellite Systems (GNSS) suffer from a significant performance degradation as far as line of sight to the satellites is not available. The proposed system employs the Received Signal Strength Indicator (RSSI) from multiple anchor nodes from a operating Wireless Sensor Network (WSN). Additionally, we place multiple receivers around the body of the user and thanks to machine learning techniques, we are able to estimate the distance and angle between the user and any of the anchor nodes of the WSN. This allows us to estimate the heading of the user without the use of inertial sensors or magnetometers. Finally the position estimate of the user is refined using an Extended Kalman Filter (EKF) with the constant velocity kinematic model. The system has been validated in real scenarios obtaining a Root Mean Square Error (RMSE) below the meter for the different tests performed, which is similar to the accuracies achieved by inertial-sensors-based systems.