Rover 4.0 Matek F765, blheli32 ESC

I’m currently setting up a Rover with a Matek F765 Wing.
Beta firmware (4.0.0-rc1) installed without problems.

I’m using 2 brushless motors and bl heli 32 esc’s.

The first time I tried testing the motors I got a setup tone on power up (where it beeps the number of lipo cells attached? ) and my fear is that I did somesort of esc calibration without knowing it.

Everything works one the rover (no gps attached yet), but got ppm reciever attached and radio calibrated. 3dr telemetry works and sending everything to groundstation.

The only thing I cannot get to work are the motors.
Motor test the first time did not spin the motors but I did get some setup beeps from the esc’s… but cannot get it to do that again.

I tried connecting to BL heli suite to check the esc settings, but cannot get it to connect.
Tried also by connecting the FC with the 3dr to mission planner and the connect the FC with usb for bl-heli setup. But when It tries to read the esc’s it gives a message restarting Flightcontroller and then gives a connection error.

Since the FC, motors and esc’s are currently all removed from the rover for bench testing I also disables all pre-flight checks to make sure it is able to arm.
I get servo output readings.
Motor 1 is connected to rc1 and motor 2 to rc3 (if I’m correct)
It’s setup for skidsteering (as it’s a tracked vehicle) with 1 as leftthrottle and 3 as rightthrottle

For bl-heli passthrough I was looking for SERVO_BLH_AUTO
but cannot find it in the list.

I have PWM type set to 7 = DSHOT600

Any tips on how to go about checking what is wrong?

You need bidirectional (forward/reverse) ESCs for ardurover. I know that the original blheli firmware supported bidirectional operation, but I do not know if blheli32 does too.
Ardurover sends a PWM signal with around 1500us for zero throttle (ca. 1000us full backwards, ca. 2000us full forward). An airplane/multirotor ESC will not arm itself in this case, because this would be half throttle for an unidirectional ESC.

Stupid me.
I was unhappy with the brushed motors so switched to brushles.
I know blheli32 should be able to reverse, since I use the same ESC’s on my mini quads and use turtle mode to flip the quad. Although I’m not sure how blheli does this because you have to flick a switch to tell it to spin in reverse.'But so in theory it should be possible the the ESC’s

I’m afraid this does not work in ardurover.

To eliminate the possibility that there was something wrong with the setup, the esc’s or the outputs on the FC. I flashed inav on it and checked the motor output there.
I was also able to reconnect to blheli again , which was not possible anymore when ardurover was on it.
The motors work with inav.

One of the esc;s the min pwm signal was set to 1500. But despite that no reaction in ardupilot with the motor tests.
Should they at least do something with the motortest?

I’ll see if I can find some suitable bidirectional ESC’s for the brushless motors.
I need 20 - 30 A max esc’s if someone knows something that will work without problems in Ardurover.

If blheli32 supports forward/reverse operation, there should be three motor direction options in blheli suite: Forward, reverse and bidirectional.
Otherwise, brushless car ESCs are a good option.

BLHeli32 definitely supports forward/reverse. At least on the Ori32 4in1 I have it does. I was playing around with this a few weeks ago.

1 Like

A few possibilities:

1 Like

I will check with blheli suite this week.
I know there is beta firmware with bidirectional dshot now. But that is more for filtering I believe.

Thanx, I will try beta 2 or wait for the next if that fixes anything. Will check if the esc’s support bidirectional.
I have to wait for my gps anyway.

So I checked the ESC’s with BLHeli32 suite and I can set them up as bidirectional.blheli

Bidirectional 3D reacted a bit weird with the motors, so switched to Bidirectional soft and that seems to work. pmw 1500 is now the mid point. Below 1500 is reverse and above is foreward.

I will check with beta rc2 and set esc to pwm and not use d-shot to see what happens.

1 Like

Ok, I can confirm that it works.
Got Rover beta 4.0 rc2 on the matek f765
Flashed the esc’s to bidirectional soft.

Time to build everything back in and wait for the gps for some more testing…

1 Like

Great news, thanks very much for the follow-up report.

@OldRaven, just to be sure, does this mean that you were able to use DShot 600? or just that you found another way to use these ESCs? I’d really like to know if -rc3 works with DShot 600…

I currently have ESC type set to normal , I can try what happens when I put it to DShot.
I will give it a try for you this weekend.

1 Like

@rmackay9 I changed ESC type to D-Shot 600 today and it works fine with my blheli32 esc’s.

The tracks are off the rover atm. But both motors respond very well… Maybe I’m dreaming but it feels like they run smoother opposed to using Normal.

Might have cheered too early.
Wanted to continue today… now it will not arm.
Even a forced arm does not show any life in the esc.
My fear is that it somehow got incorrect throttle input whille powering up and the esc’s now got wrongly calibrated again.

I somehow cannot get in the blheli suit when arurover is on the matek f765
Whenever I try to connect with blheli it gives a message rebooting fc, then a connection error.

blheli suit works just fine with this exact same setup when I have inav of betaflight on it.

Is there something I need to do in ardupilot to make blheli passtrhough working?

@OldRaven, that sounds a bit like the independent watchdog is rebooting the flight controller which shouldn’t happen. This is a guess of course, if you have a couple of dataflash logs we can probably confirm.

You could also try turning off the watchdog by setting BRD_OPTIONS = 0

Changing BRD_OPTIONS = 0 did not help.

Problem persists.

The ESC’s don’t arm when I power the rover. I get the long beep at the end from the esc’s but I need the short double beep to indicate it is armed.

Still cannot get into BL Heli suite with passthrough. BL Heli tries to reboot the FC to probably trigger the ESC’s so It can read the settings… but fails everytime.

I put INAV back on the matek so I could get back in the ESC’s with BL Heli only to find out it was not able to get the settings anymore. Somehow after a couple of tries I could connect to the ESC’s again only to find out the settings where still as I put them in for the rover and all works fine in the BLHeli editor.
As soon as they get a PWM signal of 1500 they arm.

I will put Rover 4 rc3 on it now and do the same setup steps again and see if i can get it to fail again.

I think it’s an arming thing… whenever I power the rover the output on the ESC’s is not 1500 so they will not arm.
Could it be because I have no GPS attached (still on it’s way)?
I have all checks turned off to see if it at least does anything.

Arming is now set to a switch.

… it’s really all guesswork without a log file…

maybe check that RC1_TRIM = 1500, RC3_TRIM = 1500…

I reinstalled rover 4 rc3 and changed 1 thing at a time just to see where it stops working.

I disabled all the checks for now, and set an arm switch.

Every works, and when I arm and check the motors they also work.
Disconnected from mission planner and powered the rover by battery. The esc’s arm and I’m able to arm the rover and the motors and steering works.

Then went back into mission planner and did some configuring.

When I set motor controll the dshot 600 the esc’s don’t arm anymore. Also not when I powercycle or force arm the rover.
Then set motor control back to normal (pwm) and everything works again.

Could it be that dshot is not working at the moment in rover?
It seems to be the issue for me at the moment.

I’m at least happy I can get it to arm and drive around now so I can continue setting it up.
Just hope to get the gps in the mail soon.

1 Like


We think the issue with DShot is that the timing is slightly different depending upon the board. So DShot works fine on Pixhawks but doesn’t on this board it seems. I think we will create a custom Matek F765 binary so you can try various timings and see which works. That will take at least a few days to come up with.

Thanks for the feedback!