The high rate of falls incidence among the elderly calls for the development of reliable and robust fall detection systems. A number of such systems have been proposed, with claims of fall detection accuracy of over 90% based on accelerometers and gyroscopes. However, most such fall detection algorithms have been developed based on observational analysis of the data gathered, leading to thresholds setting for fall/non-fall situations. Whilst the fall detection accuracies reported appear to be high, there is little evidence that the threshold based methods proposed generalise well with different subjects and different data gathering strategies or experimental scenarios. Moreover, few attempts appear to have been made to validate the proposed methods in real-life scenarios or to deliver robust fall decisions in real-time. The research here uses machine learning and particularly decision trees to detect 4 types of falls (forward, backward, right and left). When applied to experimental data from 8 male subjects, the accelerometers and gyroscopes based system discriminates between activities of daily living (ADLs) and falls with a precision of 81% and recall of 92%. The performance and robustness of the method proposed has been further analysed in terms its sensitivity to subject physical profile and training set size.