Fault Detection and Diagnosis (FDD) in internal combustion engines is an important tool for better performance, safety, reliability, and instrument to reduce maintenance costs. Early detection of engine faults can help avoid abnormal event progression to failure. This study is carried out to develop two FDD algorithms to detect and diagnose internal combustion engine faults using an optical crank angle encoder. Experiments were carried out on a 2018 Ford Gen 3, 5.0L, V8, Coyote engine to achieve these goals. The engine head was modified to access the combustion chamber of specific cylinders for in-cylinder pressure measurement and, subsequently, combustion analysis. During this project, three engine faults were introduced: EGR valve failure, cylinder leakage, and spark plug degradation. In the first method, Fast Fourier Transform (FFT) is applied to the data collected using the optical crank angle encoder. FFT converts the crank angle domain data to the frequency domain. Then, the data dimension is reduced using Principal Component Analysis (PCA). The dataset with reduced dimensions is used as Multi-layer Perceptron (MLP) inputs. 10-fold cross-validation is used to determine the number of hidden layers in the MLP. The MLP model detects and diagnoses severities of cylinder leaks and EGR faults with a relatively high success rate (92%). The second method developed a classification model using the Random Forest (RF) classifier and Curve Descriptive (CD) Features. The performance of the MLP model and the Curve Descriptive features with Random Forest (CD-RF) models for detecting and diagnosing misfire faults are compared. Results show that the MLP model and CD-RF model accuracy for classifying misfire faults are 86.67% and 88,89%, respectively.