E45-TTL-100 not transmitting when connected to Arduino

While working on one of my project involving Arduino and E45-TTL-100 LoRa 868MHz radio modules, I've discovered that it is not working exactly like expected. Documentation states:

(…) When the data inputted by user is up to 58 byte, the module will start wireless transmission (…)
(…) When the required transmission bytes is less than 58 byte, the module will wait 3-byte time and treat it as data termination (…)

If I understand this correctly, E45-TTL-100 should begin radio transmission when:

  • 58 bytes were sent via serial port
  • serial transmission stopped for 3 bytes. So, at 9600bps, 3ms pause whould trigger transmission
void loop() {
    Serial.print("Test");
    delay(100);
}

In theory, code from the able should send string "Test" every 100ms. Unfortunately, it was not happening. Second E45-TTL-100 was not receiving anything. Also SDR dongle was not catching any transmissions. Something was wrong. I even contacted CD Ebyte, but they were unable to help me and The Internet was equally useless. What was wrong? No idea… looks like some kind of E45-TTL-100 MCU bug…

The solution

The solution is, hmmm, surprisingly simple. You not only have to stop transmitting, but also end serial port (Serial.end()) and open it again (Serial.begin()) after short period of time. In my experiments I've determined that 20-30ms of closed port selves the problem. So, code from above should be replaced with following:

void loop() {
    Serial.print("Test");
    Serial.end();
    delay(30);
    Serial.begin(9600);
    delay(70); //The rest of requested delay. So 100 - 30 = 70
}

It might not be the prettiest solution ever, but it works.

Read More

E45-TTL-100 Configuration Tool for Linux

This will be fairly short entry. Do you know what E45-TTL-100 LoRa wireless serial modules were missing? They were missing configuration tool for other platforms than Windows. And even on Windows it had some minor problems. Luckily, this has changed only a few hours ago.

E45-TTL-100 configuration tool for Linux

Stronnag, the man behind mwptools mission planner and tools for iNav and multiwii-nav, has released E45-TTL-100 configuration tool for Linux. Kudos!

Read More

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

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

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

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