New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
AirRate Queston --- Ebyte E32 talking to an Ebyte E19 ? #203
Comments
Hi, 0.3kbps - SF: 12 BW: 7 CR: 1 packet is crypted ... Frequency: 433MHz |
can you tell me how to know lora's CR, BW and SF ? |
Extending on @stafil 's comment above, the proper parameters to use for I successfully received packets sent from E32 on E19 using the default parameters on E32, and the following settings on E19:
Note that However, as noted by @stafil and also in the datasheet, the data packet is encrypted, and the decryption algorithm has not been shared with the public by CD-EByte. |
I did it by sniffing SPI signals with USBee AX PRO analyzer |
packet is crypted ... In summary E32 sends twice as data as needed and some operations like check sum or CRC just duplicate the SA1276 job. |
@AdamJGodzik, could you please explain in detail? |
First of all - I did the evaluation of E32-868T30D more than year ago. My recommendation was not to use it because it is not efficient in term of Lora communication . I don't have code but just sending known content and receiving it on RFM95 I was able to understand the frame structure . This post I found recently by chance and I was not sure anybody needs such info . If you are interested you can use my evaluation. The packet structure is : |
@AdamJGodzik Very interesting. Thanks for your discovery! :D |
@AdamJGodzik, |
@AdamJGodzik, What's the purpose of Key index in this scheme ? Here is a test whis FEC disabled ( other params from default) Without FEC no nibles to decode and assemble , received message is 10 bytes only : whis 5 bytes messages key is the same for my 4 E32-868T20D |
Key index is the entry index into 256 table to select actual key - instead of hacking it each time. |
Thank you everyone for your explanations. Currently, I'm trying a communication between an E32-433T30D1B module and a RA-01 module (SX1278, 433Mh) 44 17 00 00 E7 F6 E0 E7 01 It seems 44 is the message size + 0x40 (with "TEST-TEST" message, it's 49) I tried messages with different lengths and with my module the key is always B3. |
Interesting topic. |
Hi! Thanks! Edit: I've managed to send messages from the E32 to the T-beam, but not the other way around. Still struggling with how to send data to the E32... I think that I have to structure the message in an specific way or change the preamble length or something like that. |
How did you manage to send from E32 to T-beam? Sync word? |
This is old but good ! I knew that these modules were not that great, but I did want to be able to use a RFM96 to receive the messages. And thanks also to stafil for the RF settings (btw the sync word is x012). Basically, I just had to use your lookup table and figure out how this module parsed the data (58 bytes blocks except if it gets longer that 3 bytes...). I found out that in my case the 15 bytes messages had a key of xDB and the 1 bytes ones a key of x69. I understand that they just have a lookup table. I wonder why they made such a kludge to have a simple serial bridge,... Cheers |
Hi The E49-400, send data avery 1s and is configured with : I have try different setting around the above one, without success! Can you see the difference with your project ? |
Hello, My configuration for Ra-01 (SX1278) is but the eByte E32 uses SX1278 with LoRa modulation whereas the E49 uses GFSK modulation according the datasheet. Good luck for your project ! |
@ZeSanglier |
@ZeSanglier But what is your Thanks |
Hello @yodapuces63 I've published my testings about radio transmissions between my Ra01 and My E32-433 modules. If it could help you. Best regards :) |
Hi @ZeSanglier Thanks for your detailed and clear document. Best regards |
Great ! |
Hi ! Still have to find the "key" to extract data... |
Hi, I tried to change the chan value. And the XOR key change... 0xB2 with 0x18 chan, 0xB1 with 0x19 chan... it seems the key has a relation with the chan. Regards |
A little bit key-related info.
Seems a kind of logic exist on the key. Last key's byte forms by following code table:
But i see no correlation with chan's 0xAB A-part, and Key's D-part. Seems this just range related values. UPD: I've wrote simple key calculate function
|
@ZeSanglier , can you explain CRC-calculation for FEC case?
Seems all ok, but i'm was stucked on CRC16 checking. Thanks. |
Hello @ZeSanglier do you have a code snippet for decrypting the message from the Ebyte E32? I can see that there are a lot of conversions and decoding of the packets from the E32 to form the message. |
Hello
|
//décodage avec la clef de chiffrement |
Hello I use a "key" string to encrypt/uncrypt the data with a OR The def is : But may be I will try also the AES lib !? |
Unless you have a couple of PhDs in maths and cryptography, do not roll your own crypto. Use AES. |
:-) |
I will be using LilyGo TTGO Lora32 V2.1 and Ebyte E32-900T20D connected to mega. Some say they had make these modules communicates with each other. As soon as the product arrives, I will have them tested. For those who have tried please do guide and help me. |
The problem with UART Ebyte modules is that their firmware is not compatible with regular LoRa modules. You cannot set the proper LoRa settings (SF/BW, and others) and they use an "air data rate" that has no meaning in LoRa – I have long believe they use FSK, not LoRa. So it's impossible to make them communicate with normal LoRa modules. The only way to make them work is to get the non UART models, to use SPI, and drive them with the LoRa library. |
@Kongduino I have found articles already that made them connect to each other. |
@yodapuces63 What are your settings(Airrates etc.) on TTGO and E32, and how did you set them? |
Hello
|
E32-900T20D v8 AirRate to LoRa settings. 300 Bps : BW = 500000, SF = 11, CR4 = 6; |
@zbx-sadman are the settings for transmitting and receiving packets different? or Is it possible to use the same settings for both? |
Air rate value used on E32 side, LoRa settings used on TTGO (naked SX1276) side. |
@zbx-sadman for example, I want to send and receive message from TTGO, are the Lora Settings same for both operations? |
Yes, of course. You need no change LoRa settings after sending before recieve answer. |
@zbx-sadman I hope you can put your Lilygo TTGO and EBtye E32-9000T20D project so that I could have guide on the project that I am working on. Anyways, thank you for always answering my questions and expressing your insights here. I would love to know if there are other important things that would help me on this. |
Very simple example for CDEByte E32 v8 & TTGO T3 v1.6.1 (Lora32). cdebyte_example.ino
e32_companion_example.ino
Channel hopping on Fixed mode: |
Hello @zbx-sadman , I can see that you have different method in your code. How about the library for Ebyte E32 (LoRa_E32_Series_Library). Have you tried using it? |
No, i did not use it never |
@zbx-sadman can you try using it? I think that it will be helpful once you made it communicate using the LoRa_E32_Series_Library. |
Unfortunately, this lib not interesting for me. |
@zbx-sadman I would be happy if you could give it a try. I will try using that library as soon as the components arrive. How about the SetLdo function, did you do something different about that? |
The same content as in the function setLdoFlag() from the article https://blog.zesanglier.fr/2023/02/11/communiquer-entre-un-module-ebyte-e32-et-un-module-ra01-02-sx1278/ |
@zbx-sadman what file should I paste it to? is it on the LoRa.h or LoRa.cpp? |
You can copy changes from this pull-request: d9914a2 |
Hi everyone! I'm currently trying to establish LoRa communication between an E32-900T20D module and an STM32WL55JC1 (Nucleo board with that MCU that has an integrated LoRa radio). After doing some research I found this discussion, which helped me a lot!! The blog post from @ZeSanglier is also amazing. I'm now testing transmission from the EBTYTE module to the STM32. Trying a test similar to what @ZeSanglier did, but I'm getting the following results: E32 config:
From that response I'm assuming:
So in my case it seems I don't have the fixed key that can be used to decrypt the data. Does anyone have an idea of what may be happening? I'm documenting these results in detail on my repo: https://github.com/andremdaraujo/LoRaPingPong/blob/master/README.md - however, as of now, the results shown there refer to tests I've done using 868 MHz. But the result is analogous with 915 MHz. Thank you! |
My exploration into LoRa Radios has gotten me into experimenting with different modules, Now I am trying to see if I can get them to work with each other.
I go two (E19 module) SparkFun SparkX SAMD21 Pro RF 1W Radios using sandeepmistry Lora.h to talk with each other beautifully
I recently got some LoRa modules from ebyte
https://www.ebay.com/itm/Ebyte-E32-915T30D-8km-1W-915M-SX1278-SX1276-915MHz-Long-Range-UART-LoRa-Module/192492725802?hash=item2cd175e62a:rk:1:pf:0
These E32s are UART not SPI modules so I know I cant use them with LoRa.h and an Arduino. However since they are both SX1276 so I should be able to use a UART E32 and send a message and receive it on a E19 module ?
So here is my question
The UART E32 Has AirRate options of 0.3 or 1.2 or 2.4 or 4.8 or 9.6 or 19.2 kbps
So I found a AirRate Calculator
http://www.rfwireless-world.com/calculators/LoRa-Data-Rate-Calculator.html
For the example of 300 or (0.3 kbps) it supposedly the equivalent of 125 bandwidth, code rate 4 to 5, and Spread Spectrum of 12 But in the Calculator above it amounts to a AirRate of "292.96875000000006" not an even 0.3 kbps
And when I send a message from a E32 to a E19 I get a garbled character string
Playing around with the Calculator the only way I could match 300 with the Calculator was to enter 128 BW , 4 to 5, 12 Spread
So before going any further I wanted to ask some clarifying questions
The text was updated successfully, but these errors were encountered: