External force observer for humanoid robots has been widely studied in the literature. However, most of the proposed approaches generally rely on information from six-axis force/torque sensors, which the small or medium-sized humanoid robots usually do not have. As a result, those approaches cannot be applied to this category of humanoid robots, which are widely used nowadays in education or research. In this paper, we propose a Kalman filter-based observer to estimate the three components of an external force applied in any direction and at an arbitrary point of the robot’s structure. The observer is simple to implement and can easily run in real time using the embedded processor of a small or medium-sized humanoid robot such as Nao or Darwin-OP. Moreover, the observer does not require any changes to the robot’s hardware, as it only uses measurements from the available force-sensing resistors (FSR) inserted under the feet of the humanoid robot and from the robot’s inertial measurement unit (IMU). The proposed observer was extensively validated on a Nao humanoid robot in both cases of standing still or walking while an external force was applied to the robot. In the conducted experiments, the observer successfully estimated the external force within a reasonable margin of error. Moreover, the experimental data and the MATLAB and C++/ROS implementations of the proposed observer are available as an open source package. https://goo.gl/VkhejY.