Unusual topic here: Machine learning and predictive maintenance

Hey all,

I’m currently waiting for a Bioboards Radium. It will come with a metr Pro Unity which allows to monitor various values as shown here. It gave me the following idea.

I was thinking that it could be cool to have some kind of application that would use all this data to identify a faulty part of the board before it breaks/burns/throws us on the ground (maybe we could need other sensors, I don’t know at the moment, I’ll certainly have to learn about electronics etc to know how eskates parts can be faulty).

Do you know if anyone has ever worked on predictive maintenance with machine learning in the eskate industry/community (software solutions, maybe online guides out there) ? I know there are plenty of applications in the industry world so if it works on manufacturing machines why wouldn’t it on my electric longboard ? I’m really interested in this to learn about AI and time series, plus maybe it can avoid a few embarassing situations like: [you can safely ignore the few following lines]

“wtf John ? You fell, again, now your two arms are broken ?! One day you’ll kill yourself on your fucking electric longboard. And don’t tell me you were again riding at full speed !!”
-“But honey my motor gripped and sent me off the board, I did nothing wrong. I was even wearing my protections, for maximum safety, on a clean road.”
-“Yes and now your two arms are fucking broken. I was so afraid when the hospital called me. Don’t even dare to get back on your damned E-coffin, John.”

It can be a cool step forward in security and safety, especially considering the increasing number of DIY/serial boards built to reach quite high speeds.
Or maybe I’m just too high, don’t know, tell me.

Feel free to share your opinion or knowledge about eskates parts failures and what are the signs of it. Personnally I don’t know much so anything is welcomed. :upside_down_face:


Simple machine code wouldnt be hard to program, Ive done some basic stuff in python. not eskate related.

Training data would be key. Real world stuff is best. SImulation will only get you so far


The idea is good, but I think it’s really hard to apply to diy boards, even if we have tons of training data, it would be from a really spread out across the various types of builds

On a production board that every and each of them is basically the same, running the same settings should be easier

That being said, some basically functionality could be hard coded, like monitoring energy usage, together with some baseline runs and a gyroscope to see if the consumption is gradually increasing over time indicating a bad bearings or something like that


If I got a nickel everytime I’ve heard this, I’d have a nickel. My Mom was right…


I did some failure-rate analyses for my thesis…

A weibull distribution accurately models many such systems for failure, such as light bulb lifetime. Application of this distribution to predict failure of a belt drive might (or any component with a known failure rate) can reduce machine learning to one or two parameters, which could be adjusted (as progressively accurate estimates) with each failure.


1 Like

@Agressivstreetlamp Yeah I know the methods are not eskate related, and I will fore sure train on public datasets etc to learn machine learning with time series

@Pedrodemio I get the problem about DIY boards.
I was more thinking about unsupervised machine learning on multivariate data (analyzing all the sensors globally and model how these variables behaves and interact with each other, and then be able to detect some unusual combinations in the data)

iamasalmon For your thesis ? Lol I’ll probably have to work a bit before getting into this xD But I’m very very very curious about that, I’ll probably get to do more basic things at first. Not necessarily predict when (exactly) something will fail but maybe just detect that something weird is going on

1 Like

I may have made this seem more complicated than it really is. I’m just taking about a relatively simple mathematical model that gives you things like “instantaneous probability of failure” and “average time to 50% failure”. Your mulitvatiate model could be set up to dectect “interactions”, say if worn bearings accelerate belt wear…:call_me_hand:

Never did much work with machine learning, but I did a bunch of time series analysis and failure prediction in natural systems. Interested to see where you go with this!

From what I understand about your approach, you build the model from physics and equations and how components behave ? I’m rather interested in a more “Big Data” approach, like building a model directly from the data gathered !
Maybe it’s possible to establish some procedure that anyone could apply to build a model based on his own board from his own data.
I’ll start doing it for me, we’ll see how it goes :smile:

I work in this field, sadly the amount of data needed is not available… and even less data with failures exist.

reminds me of this post

Really interesting post, I’ll read his work tonight !
Thanks @sk8l8r

It’s a good idea. I have already thought along the same lines in the context of my davega. The idea there is that it would warn you in some way (display blinking) when it detects something fishy.

The problem is that you don’t really have the data. Sure, you could collect a lot of Metr logs but that’s not enough. The critical missing piece is annotating which parts of the data indicate the failure.

What you actually need are not any Metr logs but rather logs from rides that ended up with a board failure. Once you have that, it would be fairly easy to analyze the final parts of the logs (right before the failure) and derive some indicators.

The critical part in most ML tasks is to get good training data in sufficient volume. It’s usually also the hardest part. From there, it’s pretty much a routine. ML tools are readily available and easy to use. Often they are also not needed at all since once you have the good data, you can get to conclusions just by using common sense and simple statistical methods. (I have a PhD in computer science and I used to work for a research company that makes living on custom ML solutions.)


Could something like this reliably predict I’m about to bend a truck, lose my signal, or anything mechanically going wrong in my board? I like the idea of predicting fault codes but most of my faults come from the hardware and not the software itself.

I’ve got a friend working in vibration analysis, thermography, and associated concepts, usually, you’ve got sensors on your industrial machinery (ex: windmill), and they feed data to a computer that detects anything unusual compared to the “normal” data. Something that starts vibrating, or heating up is a sign that a bearing will need to be replaced. And doing that ahead of catastrophic failure saves money (and catastrophe) in the long run.
In theory, this could apply to electric skateboards. Although the size of our machines, and relative low cost make it impractical to load our motors with an array of sensors.
On top of that, the streets we ride in are quite a chaotic environment, and I’d say good luck with vibration analysis there!
https://www.maint-control.com/ (in French…)

Your best bet in preventing failures and doing preemptive maintenance would be to have a proper test bench simulating a set of repeatable accelerating/ braking sequences at various degrees of load and capturing the system logs and thermal imagery. Then running some analysis on those logs for any sort of significant variance, pointing to something unusual.

That’s quite intensive in terms of time and resources, and it’d still leave room for the evil pebble to jam your pulleys.

1 Like

The main issue I see is that a lot of the failures we experience is not caused by the board itself, like a rock getting into the belt and tearing, you can’t predict that


@alexnz That’s exactly the industrial applications that made me think about this !
Yeah vibrations would probably be a hell to analyze from rides data, in our case. I have to think about all of this, I’ll have some time to spend on it soon.

That’s quite intensive in terms of time and resources, and it’d still leave room for the evil pebble to jam your pulleys.

Yeah true :confused: Let’s make a self-driving esk8 that dodges pebbles haha

You don’t need to analyze vibrations for your ml skate system, however you could work with strain load cells to measure any unwanted or over the scale bending forces on various areas.

If you have a reliable way of mounting them, an IR sensor accross your belt can help measure wear (and in case something is uneven : WARNING triggered).

I’d like to see this come to fruition!

The thing I see is that most failures occur due to lose motor mount, lose motor bolts, broken/bad solder joins, lose bullet or xt connectors, broken welds on the battery etc.
Thors are all faults which could be reduced to the „unpredictable“ faults like stones getting into the drivetrain etc. by simply building easy to maintain boards.
Also a regular maintaining routine after X Kilometers is something a lot of us just don’t want to do.
Building battery packs which are not covered with black or blue heat shrink but either in clear would help to inspect the battery easily. Checking all connections and tighten down bolts and screws after the said X kilometers should be done as well and minimize failures.