So, can I say my "bitrate" is 448 bps? Is it right, or the definition of bitrate says something else that I didnt get?
I'd say that you can send information coded in HIGH-bits as well as in LOW-bits. If you ignore the LOW-bits for coding information, I don't think that this will lower the nominal bit rates.
So if I should calculate your sending bit rate per second, I'd ignore the start bit and stop bit and calculate like that:
0-bit HIGH time: 1000 us
0-bit LOW time: 1000 us
1-bit HIGH time: 2000 us
1-bit LOW time: 1000 us
Total: 4 bits in 5000 us = 4 bits / 0.005 s = 800 bps.
I am using 433 MHz module to send data with a custom protocol I created. Everytime I start sending data I first send a 3000 us HIGH pulse, send the data with 1000 us HIGH pulse (bit 0) or 2000 us HIGH pulse (bit 1) and 4000 us HIGH pulse to finish the data sent.
I think, that even using the cheap ASK/OOK RF modules you can use shorter bit times and you will not need a finishing bit. Receiving is finished after the 32nd bit is received.
Instead the "regenerative receiver" will need some "training bits" to adapt to the signal at the beginning of the transmission.
So a full sending ASK/OOK protocol would perhaps look like, using
- 0 bit HIGH time 300
- 1 bit HIGH time 600
- bit LOW time 450
- start bit time 5000
10x training bits: 300 us HIGH, 300 us LOW
1x very long start bit: 5000 us HIGH
1x bit LOW time 450
32x bit times (HIGH/LOW 300/450 or 600/450)
Total time= 10*(300+300)+5000+450+32*(450+450) in average = 40250 us. = ca. 40 milliseconds
Worst case= 10*(300+300)+5000+450+32*(600+450) = 45050 us = ca. 45 milliseconds
If you want to send (for safety reasons) the protocol 3, 4 or 5 times, no additional training bits are needed, you just would follow with the next long start bit and then send the 32 data bits again.
Don't forget sending some 'training bits' at the beginning of each transmission, so that the receiver can adapt to the receiving signal level, this is important for cheap "regenerative RF receivers"!