Given standard AM transmission at 10kHz and FM at 15kHz, the 7.5kHz result produced is obviously not enough. Further optimization would require using specialized data coding schemes that I have not ever touched before.
One possible and probably the one which requires the least tweaking of the current setup would be something along the lines of DPSK (Differential Phase Shift Keyring). This way of encoding information (for analog signals) would be transmitting the change in voltage using a phase shift of the carrier to determine the change in output voltage from the last sample.
However, because the data I am attempting to transmit is digital, I will directly transmit the change in voltage using an integer. Due to the small range of deviation in the following scheme a high or even higher baud rate will be required. This is because we are only able to transmit 3 bit (up to 8) changes. A probable methodology will be as follows.
- Transmit the starting data (full 10 bits) using the scheme provided before
- Transmit the change in integer in the next serial transmission. One possible way to code the change will be in 1 byte, 4 bits for channel A and 4 bits for channel B. In order to discern which 4 bits are for A/B, the MSB and the 5th bit will determine the channel. 1 being A and 0 being B
- Every X transmissions reset and transmit a full 10 bit set of data again
If the receiver were also allowed to transmit data back to the transmitter, it would be possible to only reset the transmission only when required. This means a new set of data would only need to be sent after data has been disrupted.
Implementing the idea above will mostly likely allow the max discernible frequency of data to be around 10kHz and maybe if optimized well reach a desirable 15kHz.