Pololu Robotics & Electronics
My account Comments or questions? About Pololu Contact Ordering information Distributors

Pololu Forum

3pi+ Hardware Serial for iBus

I have a 3pi+ LCD model and I’m am attempting to add a FlySky iBUS receiver to make it remote controlled. My understanding was that I could use the hardware serial for the chip to receive the 115200 baud signals from the receiver and then control the motor speed / direction. I have the receiver wired with ground / power and the pin labeled 0 on the silkscreen, which the pinout for the LCD model shows as RXD1 / PD2. I have also tried PD3 / TXD1 but that didn’t work either. I didn’t expect it to, but just in case I switched RX/TX I figured I’d try. I have my iBus object initialized to Serial1 and Serial is USB, as far as I know. I have used this receiver on an Arduino Mega with hardware serial and know it works and my pinout is good. I looked at the LCD object and noticed they are using USBPause and FastGPIO to save state / restore it. I tried that as well, but no luck. I get nothing but 0s back from my function to read the channel. Am I missing something else?

Hmm. I initialized the hardware serial and decoded the iBus packet myself and was able to read it, but the IBusBM library doesn’t seem to like it for whatever reason. This should be enough to do what I need to do.


I moved your thread to the “Robots” section of the forum since it seems more appropriate.

It sounds like it might be working for you now, but please note that the hardware serial pins on the 3pi+ 32U4 Control Board are used for the LCD control lines, so if you are using the LCD, it will likely conflict with your serial communication.


Thanks, I wasn’t sure exactly where to put. I did remove the LCD as it isn’t important for what I’m trying to do with this project. I saw it was being used as RS on the 3Pi+.