Some questions/issues with Mateksys H743 SLIM and ArduCopter 4.2.0 Dev

Goodmorning everyone,

I have some questions about Arducopter, hoping not to be out of place in this group.

First, sorry for my bad english.

I start by listing the hardware:

-FC Mateksys H743 SLIM

-UAVCAN Mateksys M9N-F4-5883

-ESC T-Motor P50A

-4x EMAX 2807 1300KV motors

-RX Crossfire Nano Diversity

-TX Crossfire True Connectivity

-Futaba T16IZ radio with CRSF V2 output

  • other non-relevant things (VTX, camera, BT …)


-FC Arducopter (with BL) V4.2.0 (8c51271b)

-Mission Planner

-BLHeli_32 V32.8

I have several problems, let me start listing them:

  1. ESC signal: the ESCs work correctly in standard PPM, while with digital protocols (Oneshot, Dshot125, 300 and 1200), they work up to 99% of the throttle using both the motor test function and the transmitter in the compass / motor calibration function . The MIN / MAX limits of the gas have been set both at 1040-1960, and at 1000-2000, and at 1200-1800 for testing. The HR signal was also limited according to the ESC settings. I also tried to leave margin, but the problem continues to arise: up to 99% of the throttle I have no problem, while with 100% throttle the engines stop with any digital protocol (not standard PPM).

  2. ESC telemetry: on the FC I connected the telemetry wire to serial 8. In the parameters, I set serial 8 with function 16, that is ESC telemetry, to 115200BAUD (value of parameter 115). In the battery monitor 2 setting, I set ESC as sensor. I have no telemetry data. From this page I guess that the UART8 is SERIAL5, but even trying this configuration, nothing goes. Looking with an oscilloscope, the telemetry data on the RX8 pad is there, as well as bit 12 of the DSHOT1200 package is high. Even setting force telemetry from the BLHELI configurator, I have no telemetry …

  3. ESC analog current reading: the FC has a pad to measure the current absorbed by the battery. My ESC has the dedicated output, to be connected to that pad. Also according to the manufacturer’s page I have to provide a reading of the battery voltage on pin 10, with a ratio of 11: 1, and of the current absorbed on pin 11, with a scale of 40A / 1V. Looking with the oscilloscope, the voltage on the dedicated pad varies, while the reading remains close to 0. This also happens by trying to supply the pin with a voltage from 0V to 2V, corresponding to 80A: from Mission Planner and OSD I read 200mA if it goes Well.

  4. Telemetry via UART: I connected the serial of my TBS Nano Diversity receiver to the UART7 of the FC (from page it looks like UART1), and an HC-06 module on UART2 (from page looks like UART3). Serials are set to 57600BAUD, protocol 2 (MAVLINK2). Through HC-06 I have no telemetry by connecting with the Telemetry Viewer app on Android, while by connecting to the BT of the True Connectivity I can see the RSSI and that’s it, no satellites, battery, current, artificial horizon … nothing, only the 'RSSI, which is probably that of the TX. For telemetry, do I have to use UART7 (SERIAL1) and UART1 (SERIAL2)? I have set up the UART1 to connect a Raspberry Pi Zero with GPRS module and have a connection with the GCS, but I have not yet prepared this part of the project … I feel stupid not to be able to have even a telemetry. With iNav 3.0.1 on Kakute F7 AIO, with the same RX and TX I had complete telemetry (GPS, battery, artificial horizon …).

  5. SmartAudio: my VTX supports the SmartAudio protocol, for which I currently want to use UART4 (SERIAL6 according to Mateksys). I set half duplex mode, 4800BAUD, smart audio protocol (parameter value 37), I enable the VTX from Mission Planner, I set the channels and power, but I have no control over my VTX. With the oscilloscope I see a packet every 100mS on my UART4, but it is at 115200BAUD, despite being set at 4800BAUD. The nice thing is that SERIAL6 is configured as RC Input (CRSF), when my RX is connected to UART6, which according to Mateksys is SERIAL7 … I’m not understanding anything about the order of UARTs.

  6. OLED on UAVCAN: I have a SSD1306 display, I would like to connect it to the UAVCAN to view the battery voltage, as well as the number of satellites and various … so as not to necessarily use the OSD. Well, I always display 0 satellites and battery at 0. How can I set it to have the data of the FC H743 but passing through the CAN? I may need it in an aerial USV, which I would like to build in the future.

As for the UARTs, I have tried the settings with boththe UARTx, both with the SERIALx, to try to understand if what Mateksys said on the page was right or not, well: I don’t have understood. In theory, the CRSF connected to the UART6 should not work, as it would be the SERIAL4, and having set the UART6 as a CRSF receiver … Yet I control my quadcopter without problems (I only carried out bench tests by arming and trying to simulate a take-off) .

Could someone please clarify these points for me? Especially the management of UARTs, for which I have not yet fully understood the actual freedom of the functions on each of them. Regarding problems 1, 2 and 3, I don’t understand how much my configuration errors actually are, but I doubt this second possibility is … even if the M9N-F4-5883, just flashed with AP_Periph latest, on the first lap almost it was unusable, flashed with a release of 2 days later, without changing anything on the H743 I saw the magnetometer … flashed with a firmware of a few more days later, the GPS appeared.

I work ad a developer of embedded hardware and software, C and PIC32s are my bread, but I must say that Ardupilot is putting a strain on my sanity in configurations :frowning: :rofl:

Here’s a pic of ESC Telemetry on pad RX8 and my 7" quad partial build. I miss one Immortal T antenna, I know, i have to order. Wires with tape are for a future Raspberry Pi with Rpanion.

I thank everyone for their patience! :smiley:

Way too many questions here - I suggest you post individual questions in appropriate 4.1 copter threads, maybe starting with the one that is most important to you.

Note that there is a known problem with the Nano Diversity RX and CRSFv3 which will be fixed in TBS firmware 6.10.

Telemetry works with this board - I have a test setup and it all works fine. You will be missing some config option. Also note that you have to use Mavlink v2 to see ESC telemetry in mission planner (and I think you may also need to use the beta version of mission planner)

Good morning,
Tomorrow I will create the single posts.

In the meantime, may I kindly ask if you can kindly check my configuration?

For example, when I had INAV on a Kakute F7, on the TX Crossfire True Connectivity display I saw the GPS position, and connecting via BT and using Android’s Telemetry Viewer, with the RX set as MavLink, I saw the artificial horizon move. Now, I only see the RSSI.

To see the ESC telemetry, do I have to use SERIAL8 as MavLinkV2 at 115200BAUD? I’ve already tried, and it doesn’t work. But the data arrives on the FC pad.

I updated the configurator to version build 1.3.7924.3608, without improvements.

If I can this week, I download the development tools for ST and try to do some debugging, but it will take me a long time to understand how the firmware runs. First, I want to solve point 1, which seems very dangerous to me.

h743.param (23.2 KB)

Set SERVO_BLH_MASK to 0 - its not required. I suggest you use DSHOT 600 - we have better results with that.

Look at the mapping for that board - there is no SERIAL8, so I guess you mean uart8 which corresponds to SERIAL5

I have moved the serial of the CRSF and now, after several minutes, I can get the GPS position on the Crossfire True Connectivity. Even using the Telemetry Viewer on Android gives some better results, but there is a noticeable delay in updating the data. Instead, I haven’t been able to get the telemetry to work yet, even working in DSHOT 600 (moving to SERIAL5, speed 115 options 160, protocol 16). I see a value only in voltage, but it is always fixed and totally wrong. The same goes for the analog reading of the ESC current: it is wrong and fixed. I wait for the update from TBS for the radio module, then I will continue to try with the serial. In the meantime, without wasting too much time I tried to fly in stable mode, and I was surprised at the quality of the flight, without calibrating the pid (which I will do with the automatic procedure, later, as soon as I am sure that everything works). Tomorrow I get the M9N-F4-3100 module, which I will use as the main compass, leaving the 5883 as the secondary.

Did you have any improvement in your configuration?

It’s a shock to make everything work on this board.
Move a serial device from one UART to another, map it correctly and it stops working… :rofl: