The objective of this Master Thesis was to develop algorithms for B waves detection in ICP. This goal was approached by two different methods that depend basically in the resolution of the acquired ICP. Then, both methods were adapted to work in an ultra-low power microcontroller. The first method works using ICP recorded at 1 Hz and it is based on the Lundberg's definition of B wave. A plus of this algorithm is that reduces to the minimum the number of samples per block to classify. The results obtained after testing it using long records of ICP from 27 patients were an accuracy of 89,59%, a specificity 89,71% and a sensitivity of 89,16%. These results did not change when the code was adapted to the microcontroller. The second method requires ICP obtained with a sampling rate of 100 Hz. It is based on the morphology of the pulse waves present in the ICP and caused by the change of blood volume inside the skull with every heartbeat. A total of 1430 blocks of ICP (864 for lack of B wave and 566 for presence of B wave), everyone with duration of 41 seconds, were used to extract 21 features from each one. Then a MLP classifier and a SVM classifier were tested and compared. The best results were obtained by the SVM classifier, reaching an accuracy of 86,37%, a specificity of 88,09% and a sensitivity of 83,74% when all features were used. After adapting the algorithm to the microcontroller the results were nearly the same.