Jeti FW 5.0 – DIY-Guys Wet Dream is coming

What’s new in Jeti’s upcoming firmware 5.0? I got a sneak-peek and there’s quite a lot new stuff, and a few surprises! This is most likely the longest firmware-release post I’ve made so grab a cup of coffee and sit down :)

DIY-Guys wet dream is here!

Now. Let’s start a bit back. You guys remember THIS post I wrote back in 2016 when my DC-24 arrived? Then you also remember this picture:

And you also might remember my first question after opening the back: “These little red thingies look very interesting, one can only wonder what is coming that would take benefit of expansion ports:”

Now we know. And it will be so much fun for the DIY-guy living inside us all. Admit it. There is one…

Expansion ports

It’s GPIO! It’s Serial ports! It’s Voltage pins! And it’s quite a lot of them, check this out:

So. Let’s go through the new information a bit. There’s a few things that catch my eye. First of all, GPIO-pins are also SPI- and I2C-bus pins. So, there might be a possibility to more in-depth integrations later on…

Not only that, but having not only VBat voltage available there’s also 3.3V possibility. Again, if you’re tinkering with electronics you know this can make life easier. Now, albeit the current available is between 200mA and 400mA this should not be a problem, let’s remember the TX-battery has the same potential so that can be used for anything we might want to add here. Also the VBAT’s can be connected in paralell, there’s reversible fuses behind them allowing this.

Suitable connector can be found from Mouser, part number is 690157000672. On top of that you need ribbon cable with 1.27mm pitch, that’s easily found.

Expansion port’s deeper information is very much tied to next updated thing, well talk more about GPIO and serial then:

Lua is updated with new features

As usual in recent years when there’s a firmware update to transmitters there is a new function or two in the lua API. THis time is no different in that sense but then again, this time makes all the difference. There’s quite a lot of new stuff, just check this out:

  • More io-functions to interact with file system, for example we can create/rename/delete folders.
  • More image function including image creation usable within lcd.renderer, basically a must for displaying advanced shapes on screen
  • New GPS functions, allowing for example to have a image on the screen and a red dot move in real time based on model’s GPS-position.
  • Added a few kill-type commands like “destroy”, something I’ve been waiting for. This allows us to destroy for example application interface when it’s not used to save memory. Very much usable in DC/DS-14/16
  • Added a vario-function to control vario tone based on switch value (Remember, we can create a switch-value from telemetry-value)
  • New icons: Browser and Download

Let’s dig deeper!

Expansion Ports + lua = Pure fun!

Two more lua-functions is now available, we’ll look more into them since they are tied to Expansion Ports. This is where it get’s a bit technical but bear with me, it might be worth it!

First, the GPIO

GPIO stands for “General Purpose Input Output” (Wikipedia) meaning it’s a interface for a device, this time the transmitter with lua, to a) read the value of input (open/closed) or b) to set the output to open or closed. Fine so far, but what can we do? You should have guessed it already… Any of the 9 GPIO pins can be set to input or output, with or without pullup or pulldown resistor (30-50kOhm). Also the output-mode can be push-pull or open-drain. So versatility really is there.

For example,  how about adding a button or switch of any type or form (ON-OFF, ON-OFF-ON etc) anywhere on the transmitter? For example, I have been thinking about adding side-buttons to my DC-24. Add a button, write few lines of lua and you have a button that can be used anywhere through lua-controls. That’s only one simple idea about input. For output use, this means we can control anything that is controllable by digital output. You guys remember the receivers digital input/output? This is exactly the same thing.

Serial port (ports) are here!

This really makes my brain tickle, here’s where it get’s really great and fun!

First of all, the serial port can be initialized to any normal speed, that means 9600baud or 115200baud as an example. So speed will not be an issue. Experimenting with this will tell how the buffering of serial traffic will affect operational work but I believe at this point the usability will be fantastic. The buffer is actually relatively big, being 10KiB. I think the limiting factor will be in fact lua and not the serial port.

So, we can read from serial port or we can write to serial port. What can we use it for? From top of my head, how about writing some telemetry-values to serial port, attaching a Bluetooth to it and show/store real-time telemetry data? Let’s say you fly an electric 800-sized heli with a flying style that draws some amps. Friends are always having fun like “that was a 250A funnel!” One could push the I-motor value to bluetooth and in receiving end to a big display…. That was one idea, real time logging/graphics to a computer? Showing flight modes to audience? Switch and/or stick positions? I’m quite sure there will be more clever people than me coming up with great user-scenarios for the function.

The other direction, writing then? Hmm, this is interesting. In lua we can read the incoming data for example strings or numerical values, both can be included in the same message. Since GPIO takes only ON-OFF values we could for example use serial to write a numerical value between 0 and 255, this would allow us to install a new potentiometer if needed with greater resolution that those today. Installed ones have a value between -100 and +100, that’s 200 points. With serial we could use 256 values.

These can be operated in lua just like any other information. In practice, and this is where it becomes fun, we can control anything lua can control with serial messages. Again, only imagination will tell what will become of this possibility. I know I will be having some fun this summer!

What is available in what transmitter?

New lua-stuff like GPS- and io-functions for example are available in all lua-capable transmitters including DC/DS-14/16. GPIO and Serial is available only in transmitters having expansion ports, that means DC/DS-24 and DS-12.

One more thing. Debug is here!

Ever since lua came to Jeti transmitters with the release of DC-24 I have really liked it, gives totally different type of freedom to do different things. I have had my share of fun with it and when looking at different forums, especially German Jetiforum, it’s quite clear that I’m not the only one. Also we have businesses releasing lua-apps (yes, I call them apps!) for Jeti users. There’s at least JetCat and Digitech that I know of. So it’s definitely a thing now.

What’s been sort of missing is a decent debug tool, a way to test the code by other means than running it in the transmitter and interpreting the error-message with quite little information. This is now improved with Jeti lua release version 1.4 coming with emulator version 5.0. We now have a possibility to use a standard remote debugger like ZeroBrane Studio or IntelliJ IDEA. New lua API 1.4 documentation includes a simple setup-guide and usage example for ZeroBrane Studio. I think this is a clear signal to more professional approach to possibilities with lua. I know I’m not a programmer and will absolutely try this out, I might even learn something :)

When is FW 5.0 available?

I don’t know. As it’s always been, there is no release-date set, at least to my knowledge. But most likely very soon, everything looks really ready so hang in there!

4 thoughts on “Jeti FW 5.0 – DIY-Guys Wet Dream is coming

  1. Nice to read those news…
    BTW where can we get the new API documentation and the new release of the Emulator?

    Cheers

  2. So it looks as though Jeti will be allowing access to just UART and GPIO and not allowing for calls to I2S, SPI or ADC … am i reading that correctly by the shaded out TBD?

    Personally I have no desire to go inside my Tx, but Jeti must have had a reason for doing this.

Leave a Reply

Your email address will not be published. Required fields are marked *