Testing 868MHz LoRa range, part 3: round trip

After determining that range of 868MHz LoRa wireless modules E45-TTL-100 have, at least, quite impressive range (5,7km and I was out of line-of-sight to test further) I’ve decided to test something else.

In the beginning I was planning to use those radio modules for telemetry only, but then another thought crossed my mind: why not to build DIY TBS Crossfire for the poor? After all, TBS Crossfire also uses 868MHz LoRa (SX1272 vs SX1276), so it should be possible to build DIY radio link for medium range (up to 5km) for RC planes, right?

First of all, I will need to know how fast data can be transferred and how much delay can I expect in real life. So I’ve modified Arduino code and E45-TTL-100 configuration:

  • UART speed bumped from 9600bps to 57600bps
  • air speed bumped from 2400bps to 19200bps
  • output power lowered from 100mW to 50mW (17dBm)
  • transmitter sends 5 bytes of data (current microseconds and prefix)
  • relay receives packet and resends it to transmitter
  • current received number is deducted from current microseconds and round trip time is showed on OLED display

LoRa E45-TTL-100 round trip test

Results:

  • Round trip time is 82ms on average and it does not changes with distance
  • at lower output power (50mW vs 100mW) reception at 2.8km is worse. 100% of packets are received only then antenna alignment is not worse than 45 degrees
  • with slightly bigger payload size (up to 7 bytes) it should be possible to archive at least 20Hz update rate

Read More

Quick note on SEMTECH SX1276 100mW output mode

Few facts about SEMTECH SX1276 LoRa modem and 20dBm (100mW) mode:

  1. +20dBm (100mW) is possible only on PA_BOOST pin
  2. Pins RFO_LF and RFO_HF allows only up to +17dBm (50mW)
  3. Maximum allowed duty cycle while using +20dBm mode is 1%
  4. Maximum allowed VSWR while using +20dBm mode is 3:1

The biggest problem with +20dBm on PA_BOOST is allowed 1% duty cycle. On the other hand, +17dBm mode (50mW) does not have such a limitation and maximum range should be only 1.42 times shorter than in 100mW mode.

Read More

Hands on: Tiny Frsky 8CH Receiver from Banggood

I have a nasty habit of buying things and then forgetting about them. Something like that happened to Tiny Frsky 8CH Receiver (Wolfbox F802 software compatible) from Banggood I’ve purchased last year. For some time I used it in JJPro P175 quadcopter, but then it landed in a box and I forgot about until last week.

Tiny FrSky 8CH DIY Receiver Pinout

So, let’s do overdue “hands on” on Tiny Frsky 8CH Receiver from Banggood… Continue reading “Hands on: Tiny Frsky 8CH Receiver from Banggood” »

Read More

Testing 868MHz LoRa range, part 2: open space

It was a good weekend. At least for me and CDEbyte E45-TTL-100 868MHz LoRa serial wireless modules based on SX1276. Why? Since weather was nice and looks like those modules are way better than datasheet specifies. Specs states: 3km in open space. And I’ve proven almost twice that much range! Last Friday I’ve placed one E45-TTL-100 with stock antenna on my balcony, took second with me and went for a car ride.

E45-TTL-100 LoRa 868MHz range test results

Area around my home is full of small hills and copses, so most of the time something was blocking the line between transmitter and receiver. But every time I was high enough, I was getting clear signal without any packets lost. At the furthest point of my trip I was 5.7km from the transmitter, inside a car and a copse was between me and TX module. That means no line-of-sight and as a result I’m pretty, pretty sure E45-TTL-100 should be able to work on much higher range that that. I only have to find a good place to test it.

Read More

Betaflight 3.2 Dynamic Filtering Explained

With upcoming Betaflight 3.2, we will be given a new, outstanding, new feature: dynamic filtering. An belive me, it was worth waiting for Betaflight 3.2 only to get it. I do not care much about other changes that happened with version 3.2 but dynamic filtering it the thing! In this post I will explain, in simple words, what is dynamic filtering and how to enable it.

The problem of noise

Gyro has a nasty tendency to pick up a lot of noise. Vibrations. After all, there are a lot of things that can vibrate (motors, propellers) and resonate (frame). Without a good way to filter all that noise out, our racers would not fly as good as they fly now. And you would be replacing motors and ESCs even more often. I you want to know more about gyro noise sources and filtering, please watch my Gyroscope and filtering series on YouTube.

Continue reading “Betaflight 3.2 Dynamic Filtering Explained” »

Read More

Testing 868MHz LoRa range, part 1: urban area

With a (more less) free evening I decided to finally start testing range of 868MHz LoRa E45-TTL-100 radio modules I described only yesterday. Instead of building new testing rig, I only upgraded testing setup I used to test range of FS1000A and XY-MK-5V 433MHz radio modules. Few hours later I came up with this:

LoRa range testing equipment

  • E45-TTL-100 at 9600bps, transparent serial mode
  • Stock (crappy) antannas
  • Logic driven by Arduino Pro Mini
  • Transmitter send 1 byte counter
  • Receiver counts packets and check if all subsequent packets arrived and then displays results on OLED screen
  • Powered from 2S LiPo batteries

I’ve left transmitter on a desk and went for a walk. Even before leaving the building radio signal had to cross around 1 meter of bricks. Then travel through another building and only then go into the direction when I walked.

LoRa range in urban area with E45-TTL-100

I must say: I was impressed. I still am. At 511 meters transmission was clear only when I was not blocking it with my body. Or standing near to metal fence. So I can safely assume: 500m is maximum range in densly populated urban area. On stock antennas and 100mW output power. Next week I will try stronger, dipole antennas.

Read More

Understanding Dterm: how Dterm really works

I will be very honest: until very recently I did not really understood how PID controller’s Dterm really works. Yes, something with dampening, something with “looking into future”, bla bla bla. But the reason for not understanding was because I was overthinking it. There is no “magic” only simple mathematics and few basic concepts which I will now explain.

Setpoint

Setpoint is the value which we request from our system. In case of multirotors, PID setpoint will be a rotation speed around axis given in degrees per second [dps]. Setpoint 0 means we do not want to rotate (keep current attitude) and setpoint 200 means we want to rotate at 200dps

Measurement

Measurement the value that represents actual state of the system measured by some kind of sensor. In our case, it will be the gyroscope and rotation-around-axis speed measured in degrees per second

Error

Error the difference between Setpoint and Measurement computed as Error = SetpointMeasurement. In our case, when Error is above 0, that means drone is rotating too slow and should speed up. If Error is below 0, drone is rotating too fast and should slow down

Understanding Dterm - setpoint measurement and error Continue reading “Understanding Dterm: how Dterm really works” »

Read More

Hands on: E45-TTL-100 868MHz LoRa wireless modules

My quest for ultimate (?) DIY telemetry system for UAVs continues. Last year I was playing with HC-12 433MHz wireless modules with pretty decent results. After all, more than 1km of range for a few bucks is more than acceptable. Still, HC-12 has at least few problems:

  • 433MHz band is very often polluted and used by other Rc systems/subsystems (LRS)
  • 433MHz requires pretty big antennas
  • No frequency hopping
  • No easy way to build network of more than two HC-12
  • 1-1.5km of range is nice, but one might want more

Chengdu Ebyte E45-TTL-100 868MHz LoRa serial wireless module

Continue reading “Hands on: E45-TTL-100 868MHz LoRa wireless modules” »

Read More

Very custom FPV quadcopter for my daughter

When few months ago my older daughter (10 years old) started to express interest in FPV quadcopters, I was both happy and concerned. Happy, since I would have someone to fly with. Concerned, since she has no idea how to fly, I do not have a quadcopter for her and there is a big chance she will get bored fast. So, instead of getting her a brand new, cheap, standard off-the-shelf drone, I checked my repository of “spare” parts and drones, purchased this and that and week later “Omlette du fromage” came to life…

Scarab Knife 200 cartoon sticker bomb

Continue reading “Very custom FPV quadcopter for my daughter” »

Read More