Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RX produces sporadic pulses on PWM signal line on startup #2766

Closed
neoxic opened this issue Jun 8, 2024 · 4 comments
Closed

RX produces sporadic pulses on PWM signal line on startup #2766

neoxic opened this issue Jun 8, 2024 · 4 comments
Labels
closing 🚪 Will close if no new information is reported external issue

Comments

@neoxic
Copy link

neoxic commented Jun 8, 2024

Current Behavior

When a Radiomaster ER3C-i receiver (UNIFIED_ESP8285_2400_RX_3.3.0) is powered on, it produces invalid output (sporadic pulses and noise) on the line for about 240ms before valid servo PWM output begins.

NewFile1

Steps to Reproduce

Details

The current behaviour constitutes invalid servo PWM input, hence it may lead to all sorts of troubles with dependent gear.

Your Environment

  • TX hardware: Radiomaster MT12
  • RX hardware: Radiomaster ER3C-i
  • Handset model:
  • OpenTX version (including nightly number)
  • ExpressLRS version (TX & RX MUST MATCH): 3.3.0
  • Packet Rate:
  • Telemetry Ratio:
  • user_defines:
@pkendall64
Copy link
Collaborator

This is a known issue with ESP8285 based receivers. The pins that are used also double as Serial IO pins i.e. the pins use to update the receiver. The problem is that the ESP8285 always outputs serial information at 74880 baud on the TX pin and some other pins have PWM signals during boot.
There is nothing the dev team can do about this as it done by the ESP8285 ROM.
A better receiver for PWM is the ESP32 based receivers as these generally have more pins available and most of the pins are doing crazy boot-time things. The exception is still the TX pin, but that is usually either not used as a PWM pin or is much further along the PWM list.

@pkendall64 pkendall64 added the closing 🚪 Will close if no new information is reported label Jun 8, 2024
@neoxic
Copy link
Author

neoxic commented Jun 8, 2024

Awww, that's unfortunate. I will need to figure out a logical workaround on my side. Just curious... Would that have been possible to circumvent by using a different pinout? The ESP32 has a GPIO multiplexor, so a timer can be mapped to a different pin. Does the same hold true for the ESP8285?

@pkendall64
Copy link
Collaborator

No the 8285 is pretty limited in what can be used on what pins. So with the SPI taken by the semtech chip and needing 1 and 3 for the serial for updating and 0 for the boot theres very little left. So we had to use those for PWM just to be able to get 5 PWMs available.
With the new C3 support you will get better PWM receivers coming soon I would imagine. These are ESP32 and have a lot of the hardware modules on-board including hardware PWM generation which we use, whereas the ESP8285 is timer based and has a bit of jitter.

@neoxic
Copy link
Author

neoxic commented Jun 8, 2024

I see. Well, I only wish that PWM pin on the ESP8285 would have been chosen to be the last channel, not the first one. At least, that wouldn't be sticking out so bad.😂 But... yeah, we have what we have now. Thanks for the info!

@neoxic neoxic closed this as completed Jun 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
closing 🚪 Will close if no new information is reported external issue
Projects
None yet
Development

No branches or pull requests

2 participants