DIY mtb telemetry system

2/7/2024 7:31pm
Hi everyone  I have found this thread as I am thinking about making a telemetry system for my downhill bike for my year 12 project and...

Hi everyone 

I have found this thread as I am thinking about making a telemetry system for my downhill bike for my year 12 project and I have read through this thread and wanting to use a (Linear position travel sensor with eye rodT-PTS12) for my front and rear sensors I was just wondering what people recommend for like a circuit parts you guys are using. As I am new to circuits and not sure what parts would work be for this type of system. 

Any opinions are appreciated, Thanks

Sounds like a cool project! Theres a few layers to deal with between whats happening at the wheel and viewing the data. 

 

#1 reading the electrical signal from your sensor - this could be digital (ones and zeroes representing sensor value) or analogue (a voltage that changes depending on the state of the sensor). Each has pros and cons - sounds like your sensors are analogue so one of the parts of your circuit will be an anlogue-digital converter or ADC

 

#2 Turning that signal in to a meaningful value and recording it to onboard storage. Ideally this is done at least 200 times a second for suspension data

 

#3 Processing and visualising the data with an app or program of some sort to make sense of it.

 

My suggestion for circuitry would be something like the raspberry pi pico (or pico W), using micro python or circuit python for programming. Historically Arduino has been very popular (and still is a good option) which uses the C programming language, and there is tons of information and projects out there based on it. But C is a little harder to learn vs python which is more like plain english, and you can also write your visualisation apps in Python too. The Rpi Pico can also be programmed with C, but circuit/micro python is a bit friendlier in my experience. Both languages are very worthwhile to learn though in the long term! 

 

I mainly prefer the pico though because the chips are quite powerful for a relatively low cost, and even have bluetooth & wifi now. You can get them for under $10 each whereas an equivalent board a few years ago would probably be $40-$50! They run quite fast and have the analog inputs you need to read your sensors. The sst project referred to earlier uses onem along with an SD card breakout board for recording, so would be a good place to start for inspiration! https://github.com/sghctoma/sst

 

2
2/8/2024 6:47pm

Thank you for the feedback. Kind of dumb question but I was wondering would i need to have 2 raspberry pi pico one for each of the sensors or would I be able to run both sensors into the same pico? and I have been doing quite a bit of research and there isn't much information that I have found for wiring up the  LVDT sensor Linear position travel sensor with eye rod T-PTS12 so just wondering if anyone has any experience with wiring these up.

nollak
Posts
69
Joined
11/27/2020
Location
DE
Fantasy
1185th
2/8/2024 10:48pm
Thank you for the feedback. Kind of dumb question but I was wondering would i need to have 2 raspberry pi pico one for each of...

Thank you for the feedback. Kind of dumb question but I was wondering would i need to have 2 raspberry pi pico one for each of the sensors or would I be able to run both sensors into the same pico? and I have been doing quite a bit of research and there isn't much information that I have found for wiring up the  LVDT sensor Linear position travel sensor with eye rod T-PTS12 so just wondering if anyone has any experience with wiring these up.

I am currently using a RPi Pico for 2 Travel Sensor and GPS data. Further sensors are planned, thats not an issue.

I hooked up the linear travel sensors to a voltage follower and then to the ADC.

Data is directly written to the SD Card and then every calculation on the data is done on a computer.

1
alek-91
Posts
44
Joined
3/12/2021
Location
IT
2/12/2024 8:25am
I like the idea of embedded sensors - encoders would be super sweet, and the other thing I wondered about are softpots like this -   ...

I like the idea of embedded sensors - encoders would be super sweet, and the other thing I wondered about are softpots like this - 

 

https://www.digikey.co.nz/en/product-highlight/s/spectra-symbol/softpot-potentiometers 

 

These are what motion instruments use in their "expert" fork sensors and super rugged, low profile and cheap. Could be a way to tuck them inside a fork?

Ducati is testing with (I Think) homemade magnetic potentiometer... This Is also my idea for bicycle. It is quite reliable


Screenshot 2024-02-12 172234 1

3
TR450
Posts
3
Joined
4/30/2024
Location
Bern CH
4/30/2024 10:43am

Hello all!

Jumping in this thread as my winter project is getting ready to be tested.

On my side I went for an Arduino nano based datalogger with only 2 sensors and command buttons to start playing with the thing. 

As for the data I have a excel sheet to help me sort it and get all the graphs needed, but I was wondering if some of you were using third party softwares like one from BYB and motion instruments? It would be great to pass through them as they are far more powerful than an excel sheet hahaha.

nollak
Posts
69
Joined
11/27/2020
Location
DE
Fantasy
1185th
5/1/2024 12:18am
TR450 wrote:
Hello all! Jumping in this thread as my winter project is getting ready to be tested. On my side I went for an Arduino nano based...

Hello all!

Jumping in this thread as my winter project is getting ready to be tested.

On my side I went for an Arduino nano based datalogger with only 2 sensors and command buttons to start playing with the thing. 

As for the data I have a excel sheet to help me sort it and get all the graphs needed, but I was wondering if some of you were using third party softwares like one from BYB and motion instruments? It would be great to pass through them as they are far more powerful than an excel sheet hahaha.

I started doing a Python script for my system as Excel is a bit too complicated for these things.

Depending on the format of your data we could check if you could use that. Code is currently on Github but I didn't really had too much time to work on it. But I was already thinking of seperating that part of the project from the C Code for the data acquisition.

Just message me if you want to give it a try. Python is easy to learn in case you want to give it a try.

TR450
Posts
3
Joined
4/30/2024
Location
Bern CH
5/2/2024 10:04am
nollak wrote:
I started doing a Python script for my system as Excel is a bit too complicated for these things. Depending on the format of your data...

I started doing a Python script for my system as Excel is a bit too complicated for these things.

Depending on the format of your data we could check if you could use that. Code is currently on Github but I didn't really had too much time to work on it. But I was already thinking of seperating that part of the project from the C Code for the data acquisition.

Just message me if you want to give it a try. Python is easy to learn in case you want to give it a try.

Thanks nollak for the proposition I would actuallly be very curious to try. Did not dive in Python programing at beginning as I wanted to make the  thing as straight forward as possible but now that the hardware is completly done I have plenty free time =b

Was does your Python script do exactly only compile the data in a readable format for some third party software or it generates directly graphs?

currrently my arduino register data in a txt format with the following format:

mytime;Forkvalue;shockvalue;calibrationfork;calibrationshock;buttonstate

-mytime is an incremental value in millisecondes

-Fork/shockvalue and calibrationfork/shock are respectively all the suspension potentiometer values (calibration and real time) with a value from 0 to 1023.

-Buttonstate gives a 0/1 value. This one give a 1 on the first data line when I start a reccording with the button on my handlebar. This helps me identify each data section in the file for data processing.

 

nollak
Posts
69
Joined
11/27/2020
Location
DE
Fantasy
1185th
5/2/2024 10:59pm
TR450 wrote:
Thanks nollak for the proposition I would actuallly be very curious to try. Did not dive in Python programing at beginning as I wanted to make...

Thanks nollak for the proposition I would actuallly be very curious to try. Did not dive in Python programing at beginning as I wanted to make the  thing as straight forward as possible but now that the hardware is completly done I have plenty free time =b

Was does your Python script do exactly only compile the data in a readable format for some third party software or it generates directly graphs?

currrently my arduino register data in a txt format with the following format:

mytime;Forkvalue;shockvalue;calibrationfork;calibrationshock;buttonstate

-mytime is an incremental value in millisecondes

-Fork/shockvalue and calibrationfork/shock are respectively all the suspension potentiometer values (calibration and real time) with a value from 0 to 1023.

-Buttonstate gives a 0/1 value. This one give a 1 on the first data line when I start a reccording with the button on my handlebar. This helps me identify each data section in the file for data processing.

 

Sure you can shoot me a message here and we can talk about it or what to do :D

The python scripts compile graphs for different things. I need to fire it up to have a look as I didn't really use it over the last couple of month. Life got in the way of the project somehow.

Milisecond timestamp is great. I just packed the data in a ASCII Stream as I didn't want the overhead of having it in a readable format first. But that's due to ease of stuffing data and streaming it to an SD Card faster. Well and maybe some problems I ran into with my former job.

After preprocessing everything is in a readable format and I convert the ADC values to mm values of the fork and shock/rear suspension as I am using some data points from linkage and interpolate the rear travel for this. Based in these values suspension velocities are calculated.

As already mentioned I was thinking of doing a standalone application for the data processing as it would perhaps encourage more people to use it and just do my preprocessing before I hand it over to that application.

7/17/2024 5:25pm

Hi all, Thank you for the advice and I am back a few months later with my school project telemetry system witch I got up and running and took it up to my local dh track the other weekend to test it out and all went well with no issues found yet. Goggle sheets was used to get the graphs i know it isn't the best that was just the easiest for me to use to get a graph out of the raw data. Im not to sure how you are using python scripts instead of exal or sheets but also I am a pretty beginner at coding still. The data that mine logs is 1 file for each sensor and 1 file with a time stamp in seconds. would love to hear some feedback on the project

 

20240711 140414.jpg?VersionId=rVN6IzykhpEdS.ikgos

TR450
Posts
3
Joined
4/30/2024
Location
Bern CH
7/26/2024 12:01pm

Very nice set-up on your norco. Curious on the type of battery you use. On my side I went with Nimh. I was to affraid to fuck-up the BMS design on my board and get a nice firework with a lithium one 😅

And I also got the opportunity to try it out last week. Works like a charm. Also nollak proposed to help I got to laisy with the Python part and went also for excel haha. But this will be this winters project 😄

So if I understand your project you got 3 separated files each time? Can't you simply put everything together in one?

image 67513345 %281%29
8/18/2024 6:32pm

I just used a 3.7V~4.2V 18650 lithium battery for my project as it was cost effective and then I brought a charging module for it so it can be recharged. Yes I do get 3 files every time and I preferred it that way just for me then i can copy them each easier into a sheet compared to having 1 file with all of the data in it.

Post a reply to: DIY mtb telemetry system

The Latest