
Charel

I would like to read the signal incoming from an RC receiver. How do I do that?
Use-case: I drive my robot with radio-control, animations are automatic and controlled by EZ-B. Still want to pass on radio signals to EZ-B to trigger certain animation scripts. How can I read the radio signal I get in the receiver. From a receiver I can steer a servo by just plugging it in, how can I get that signal to EZ-B in an easy way. Maybe I am overlooking something very simple but spend some time searching and still no hint.
Upgrade to ARC Pro
Get access to the latest features and updates with ARC Early Access edition. You'll have everything that's needed to unleash your robot's potential!
EZ-B controller has specific features built-in (firmware), what you want to do is not on the "features menu".
the simple answer is not possible. EZ-B can read analog and digital signals.
I believe you are overlooking the full picture.
So let's brainstorm the idea:
1) you want to connect a RC receiver to EZ-B, so EZ-B has digital ports 0/1 values, analog ports can read 0-255, and serial ports (RX). How do you plan to connect this RC signal ? Let's imagine you hook it to an ADC port.
2) ARC software: you can read ADC port, how frequent you want to read the ADC port ? To start each second, so your ARC logic reads a value (0-255) each second what you plan to do with it ?
3) Bear in mind you are not streaming the values, you are polling the values from the EZ-B so the reaction time is constrained to specific intervals e.g. 1 second, 1/2 second, 1/4 second or less if you use a wired connection.
Deconstructing a "simple idea" can help you understand the limitations and the possibilities.
If you want to implement your idea you will need extra hardware and/or code/copy-paste some arduino code and then you will need to code your logic on ARC.
ADC is an option too as different PWM servo signals will also be different in their analog voltage representation.
You could also simply use the EZ-B to trigger events/actions when a certain channel goes high, this would just require a bunch of channels and some scripts running in ARC.
I bought a simple Arduino which is reading the PWM RC signals and sending the results via I2C to EZ-B.
Arduino: Arduino Pro Mini 328 - 5V/16MHz.
I need to read 6 RC channels, 2 channels for a joystick (throttle, rudder) and 4 channels for levers (SC, SF, SA, SD). The levers can have 2 or 3 positions. The joystick I wanted to have a range from -25 to + 25.
Arduino code
Code:
And the follwing code is running in the EZ-B
Code:
Hope it is useful for you!
Code: