I found a problem with splits in the rubber coupler that connects the carburettor to the intake manifold of an Aprilia Leonardo 125 ST (year 2001) and it struck me that given the sound of the problem that an expert system could have identified this problem quicker and quite automatically.
I’d initially thought it was valve gap but checked that but still had a problem whereby the acceleration and top speed seemed fine but it sounded a bit throaty with backfiring at low revs and it would stall when parked at idle (especially hot idle).
I was also fixing the starter motor at this time and that’s located under and near the carburettor and I’d wiggled the carburettor and noticed the coupler seemed to be twisting. I then ran the engine and forced the carburettor in so that any gaps in the rubber coupler would be closed and it started to idle fine – moved the carburettor back (thus opening the splits) and the engine stalled.
So that was my fault solved – bought a new coupler, installed and all my problems gone.
Now an experienced mechanic could probably recognise this sound and point to the problem but there is a fundamental problem with that approach in that it takes time for a mechanic to become an expert and as vehicles get rarer then this knowledge disappears and certainly when the mechanic dies then this knowledge is lost forever.
A library of the sounds of the failing machinery coupled with the expert interpretation and actual real-world solution in some central database would provide an interesting corpus in which a user provided sound sample could then be analysed against this library of sounds and the possible problem and solution could be offered. Imagine holding your phone up to your car or bike engine or other mechanical device and then sending the photo and sound sample to some central server, which then breaks it down e.g. using a FFT to get a spectrum and a time series and then seeing what matches the library of samples.
It shouldn’t be as hard as speech recognition but it should be a similar workflow in the computations.
This would not remove the need for the mechanic – someone still will have to source the part, replace it and potentially tune it and this would still be hard and messy. Such a system would allow a skilled mechanic who can remove and replace parts fast to work on engines that they normally would not have much experience with because they would have the problem already diagnosed by others.
This also is congruent to the Open Source community if the software was open source in that non-mechanics such as me who like to work on our own vehicles could sample and upload the sounds and the solution and so, in the same creative commons way, build up the expert system so that everyone can benefit.