I am trying to test an ESC using the node-RED extension in BlueOS on behalf of my club, before we fully integrate it into our first ROV build.
Currently, I am using a node-RED flow to attempt to send a PWM signal to the ESC through the pins of a Raspberry Pi 4 (flashed with BlueOS 1.3.1). However, I keep getting the error:
connect ECONNREFUSED
From what I understand, BlueOS is designed primarily to work with a flight controller (like the Navigator), which we don’t have yet but expect to receive soon.
My assumption is that the node-RED extension is not able to see the pins since it is running within the BlueOS environment and not natively on the pi.
Would this assumption be correct? And if so, what would be a recommended way to test ESCs using the pi and BlueOS?
I’m new to Raspberry Pi and BlueOS, so any guidance or pointers would be greatly appreciated. Here is a screenshot of my flow for reference:
Hi @rjacob -
Welcome to the forums!
Your assumption is correct - without a flight controller, there is no supported method to output PWM signals in BlueOS. What sort of “test” are you trying to perform? Generally, a simple servo tester is sufficient to test ESC/motor functionality…
Thanks so much for the quick reply! That clears things up.
Right now, I am trying to confirm that the ESC (T-Motor Cine 55A) powers on and responds correctly to PWM inputs before we start integrating it into our ROV system. Your suggestion seems like the best way forward in this case.
Note that just because a feature isn’t built in doesn’t mean you can’t implement the desired functionality yourself. You could potentially do this via a BlueOS Extension, either by developing your own, or by using one of the development-focused ones like the Jupyter or VSCode Extensions, in which case
That said, if a servo tester (or similar setup with an Arduino or the like) is sufficient to resolve your actual problem at the moment, then it’s quite possible that will be simpler
Thankyou for sharing the information about creating a custom BlueOS extension, this will definitely come in handy in the future.
We just successfully tested our ESC using an Arduino setup, which (as you and Tony pointed out) was a much simpler approach for our use case. Currently, we are just waiting on our flight controller to arrive in order reconfigure the ESC for bidirectional operation (as Tony kindly pointed out earlier as well).
Hi @rjacob -
You should be able to confirm bidirecitonal operation of the ESC with an Arduino, or do you mean you’re waiting on receiving a bidirectional ESC? Flight controllers are not typically used to configure ESCs - some units support being reconfigured via programming interface.
Apologies for the confusion in my earlier message. To clarify: We tested the ESC using an Arduino setup and found that the ESC was not bidirectional by default. Thus, we then planned to use BLHeli Passthrough to configure the ESC and enable bidirectional operation.
Thankyou for sharing this important clarification. We had initially planned to use the Navigator flight controller for passthrough, but based on the post you linked, it seems that won’t work. Maybe it would be better to use an Arduino 4-way interface for this purpose.