dgatf / msrc

Multi Sensor for RC with RP2040 - FrSky D, SmartPort, XBUS, SRXL, IBUS, SBUS, Multiplex Sensor Bus, Jeti Ex Bus, Hitec
GNU General Public License v3.0
168 stars 41 forks source link

Problem when read RPM from the tachometer socket of a CDI petrol engine #72

Closed roscor61 closed 2 years ago

roscor61 commented 2 years ago

Hello,

I tried to read the signal from the tachometer socket of the CDI of an RC petrol engine. On the oscilloscope, It is normal square wave signal with 35% duty cycle and 5vpp signal. The useful frequency range goes from 7 hz to 370 hz approximately (420 rpm to 22,200 rpm). From 250hz upwards msrc sends the right value in telemetry, below 250hz (15.000rpm) approximately the value always drop to 0 rpm. Why?

Settings: Multipl: 1, Blade: 1

Is the system set up for a higher frequency range produced by the ESCs?

Is a hw fequency multiplier necessary?

Thank you Rosario

dgatf commented 2 years ago

I've increased the lower rpm range lately. Be sure you download the latest code

Which board for MSRC are you using?

roscor61 commented 2 years ago

Hello, I am using Arduino Nano 16Mhz / 5V for the final layout and an Arduino R3 for testing. I'll download the new fw soon and I'll let you know ... Thank you for the attention (xscuse me for the bad English)

djatila666 commented 2 years ago

Hi, how do you Connect CDI to Arduino? Thanks

El lun., 7 mar. 2022 19:05, roscor61 @.***> escribió:

Hello, I am using Arduino Nano 16Mhz / 5V for the final layout and an Arduino R3 for testing. I'll download the new fw soon and I'll let you know ... Thank you for the attention (xscuse me for the bad English)

— Reply to this email directly, view it on GitHub https://github.com/dgatf/msrc/issues/72#issuecomment-1060974580, or unsubscribe https://github.com/notifications/unsubscribe-auth/AUOOPLZFWNDDZNQF72RLYTLU6ZAPZANCNFSM5QD6HDRA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you are subscribed to this thread.Message ID: @.***>

roscor61 commented 2 years ago

I tried connecting the CDI tachometer plug output directly to both the D8 and GND pin to skip the optocoupler and use ERPM telemetry I also tried using an optocoupler with 10k pullup or with BC547 as in figure, but the result is the same .. The OUT of the following schema go to port D8. Below 250hz the telemetry go to 0 rpm. Above 250hz the measure is ok (BLADE=1, MULT=1)

I replicated the system with a low frequency generator with duty cycle at 5vpp and duty cycle at 35% as the tachometer signal. The result is the same. With a generator msrc count without problem until 5 kHz signal and more.

photo_2022-02-28_09-38-23

dgatf commented 2 years ago

I believe 250Hz was the old code.

I've just tested with the latest code and arduino nano at 16MHz, can read as low as 60 rpm (1Hz)