[SWIWIN] How to Get Telemetry Values from Jet Engine ECU

I own a SWIWIN jet engine, and it’s accompanying ECU V3. The ECU V3 has a telemetry output of 3 pins: TX RX and GND. I also have all the protocol documentation that is required to parse the information coming from the ECU V3. I can somehow attach all the documents to this thread if necessary.

My configuration at the moment is:
Flight controller: Cube Orange
Autpilot: Arduplane
Engine: SWIWIN Jet Engine w/ ECU v3
Telemetry modem: Brand unspecified as I’m trying out different ones, on TELEM1, Mavlink.

My initial thought was that I’d hook up the telemetry output of the ECU v3 to the Cube’s Serial2 port, make a Lua Script that parses the information coming in (with the help of the protocol documentation provided by Swiwin), and somehow send it over TELEM1/Serial1.

Can someone please tell me if this is a viable approach? I can make a pull request if I am successful if this will be useful for other people as well. If it is the wrong approach, I would love some advice.

Thanks!

ECU protocol - ZK V1.2 (EN) (1).pdf (233.3 KB)

I attached the “ZK” protocol document if anyone wants to check it out.

old thread, but still. you can take a look at that project and get info and control engine via uart 9600 8N2 from telemetry port of ecu.

Hi. Thanks for your reply. I actually managed to integrate with the engine and I’m getting all the data (temperature, engine state, rpm, etc). Currently doing cube → arduino → SWIWIN Ecu. I’m using the arduino because I don’t think Lua scripting supports 8N2.

I can share more information if anyone’s interested.

https://ardupilot.org/plane/docs/common-lua-scripts.html#how-to-add-new-bindings

you have to add few functions for lua to set uart configuration, so you can set no parity and 2 stop bits.

libraries/AP_Scripting/generator/description/bindings.desc

ap_object AP_HAL::UARTDriver method configure_parity void uint8_t 0 2 
ap_object AP_HAL::UARTDriver method set_stop_bits void uint8_t 1 2