In this paper, what's mean 10B payload?
"...a packet with 10B payload and 12.25 symbols preamble..."
On the one hand, I vote to close that question because it has nothing to do with programming.
On the other hand, I got interested in the subject and had a look into that paper.
After some minutes of reading, I would say that this is one of the low-quality papers whose authors were in desperate need to publish something in a hurry. For example, they are talking about preambles and headers, don't explain what that should be, are writing "chips" where they obviously mean "chirps", are talking about the payload FEC as being always hard-coded in the header as 4/8
, but in their example use a FEC of 4/5
, and so on.
Furthermore, the paper is full of orthographic errors.
In summary, I never will get it how such papers can pass the peer review. This does not satisfy any reasonable academic or scientific standard.
The rest of my initial answer was wrong. So I have re-written it based on @arminb's answer.
As @arminb has pointed out, the correct answer is: It means 10 bytes.
In addition to @arminb's answer and for those who don't want to just believe a calculator output, I have tried to figure out the details of the calculation.
First of all, in their world, a symbol is as long as a byte. This can be concluded without any doubt from the following calculations.
Secondly, the preamble is not subject to FEC (coding rate): The preamble is 12.25 symbols
which is (12.25 * 4096) chirps = 50176 chirps
when taking into account that the spreading factor SF = 12
, i.e. there are 4096 chirps / symbol
. Given a bandwidth of 125 kHz = 125000 chirps / s
, and without FEC, the time the preamble takes is 50176 chirps / (125000 chirps / s)) = 0.401408 s ≈ 401.41 ms
. This is exactly the number the calculator in @arminb's answer shows.
Third, in the example, the header is three bytes and is not subject to the FEC as well. Thus, the time the header takes is (3 * 4096 chirps) / (125000 chirps / s) = 0.098304 s ≈ 98.30 ms
, provided that a byte is as long as a symbol.
Fourth, the payload is 10 bytes and is subject to the FEC; the FEC is 5/4. Thus, the time the payload takes is ((10 * (5/4) * 4096 chirps) / (125000 chirps / s)) = 0.4096 s = 409.60 ms
, provided that a byte is as long as a symbol.
Fifth, the CRC is two bytes and is subject to the FEC as well; the FEC is 5/4. Thus, the time the CRC takes is ((2 * (5/4) * 4096 chirps) / (125000 chirps / s)) = 0.08192 s = 81.92 ms
, provided that a byte is as long as a symbol.
Adding all these times, we get 0.401408 s + 0.098304 s + 0.4096 s + 0.08192 s = 0.991232 s ≈ 991.23 ms
which is exactly the on-air time for that example packet in the calculator in @arminb's answer.
I hope that this helps further readers who want to understand what is going on behind the scenes.