3 Deleted misunderstood information (1 sample/symbol) and added important details for solution
source | link

Yes, there is. You have to study a broad field in digital communication systems which is called synchronization. Generally speaking, much of the synchronization principles are the same across different parameters. Specifically, you need to implement a timing synchronization (also called timing recovery or clock recovery) subsystem in a digital receiver. You can do it in either in open loop manner (feedforward) or closed loop method (feedback, PLL based). Once you start implementing it, then you will have specific questions for which you can return to SE time and again.

In this particular example, your clock frequency is all right (bits are changing every 100ms --- a constant difference from your sampling intervals). Ideally, the output of a matched filter is sampled at the end the sampling period. Since you don't know the ideal sampling instants (maximum eye opening), you have to use either the knowledge of the data (say, a preamble), or you can use characteristics of your bitstream in a non-data-aided manner.

Easiest to use is Maximum Likelihood (ML) which basically depends on the derivative of the signalEdit: If you are sampling at that instant. However25ms, for that, you generally need two makes your samples/symbol equal to 4. In your caseIf post processing is not an issue, then just use digital filter and square timing recovery for the whole preamble. the closed form expression gives you are doing it once every symbolan exact estimate of timing phase offset.

Then, so you will have to use an algorithm which uses 1 sample/symbol. The most common algorithm operating at 1 sample/symbol is called Muller and Muller (M&M) technique, which in essence balances the output ofinterpolate your data according to the auto-correlation ofestimate obtained above and downsample the pulse shape across two symbolssignal from 4:1.

Yes, there is. You have to study a broad field in digital communication systems which is called synchronization. Generally speaking, much of the synchronization principles are the same across different parameters. Specifically, you need to implement a timing synchronization (also called timing recovery or clock recovery) subsystem in a digital receiver. You can do it in either in open loop manner (feedforward) or closed loop method (feedback, PLL based). Once you start implementing it, then you will have specific questions for which you can return to SE time and again.

In this particular example, your clock frequency is all right (bits are changing every 100ms --- a constant difference from your sampling intervals). Ideally, the output of a matched filter is sampled at the end the sampling period. Since you don't know the ideal sampling instants (maximum eye opening), you have to use either the knowledge of the data (say, a preamble), or you can use characteristics of your bitstream in a non-data-aided manner.

Easiest to use is Maximum Likelihood (ML) which basically depends on the derivative of the signal at that instant. However, for that, you generally need two samples/symbol. In your case, you are doing it once every symbol, so you have to use an algorithm which uses 1 sample/symbol. The most common algorithm operating at 1 sample/symbol is called Muller and Muller (M&M) technique, which in essence balances the output of the auto-correlation of the pulse shape across two symbols.

Yes, there is. You have to study a broad field in digital communication systems which is called synchronization. Generally speaking, much of the synchronization principles are the same across different parameters. Specifically, you need to implement a timing synchronization (also called timing recovery or clock recovery) subsystem in a digital receiver. You can do it in either in open loop manner (feedforward) or closed loop method (feedback, PLL based). Once you start implementing it, then you will have specific questions for which you can return to SE time and again.

In this particular example, your clock frequency is all right (bits are changing every 100ms --- a constant difference from your sampling intervals). Ideally, the output of a matched filter is sampled at the end the sampling period. Since you don't know the ideal sampling instants (maximum eye opening), you have to use either the knowledge of the data (say, a preamble), or you can use characteristics of your bitstream in a non-data-aided manner.

Edit: If you are sampling at 25ms, that makes your samples/symbol equal to 4. If post processing is not an issue, then just use digital filter and square timing recovery for the whole preamble. the closed form expression gives you an exact estimate of timing phase offset.

Then, you will have to interpolate your data according to the estimate obtained above and downsample the signal from 4:1.

2 corrected spellings
source | link

Yes, there is. You have to study a broad field in digital communication systems which is called synchronization. Generally speaking, much of the synchronization principles are the same across different parameters. Specifically, you need to implement a timing synchronization (also called timing recovery or clock recovery) subsystem in a digital receiver. You can do it in either in open loop manner (feedforward) or closed loop method (feedback, PLL based). Once you start implementing it, then you will have specific questions for which you can return to SE time and again.

In this particular example, your clock frequency is all right (bits are changing every 100ms --- a constant difference from your sampling intervals). Ideally, the output of a matched filter is sampled at the end the sampling period. Since you don't know the ideal sampling instants (maximum eye opening), you have to use either the knowledge of the data (say, a preamble), or you can use characteristics of your bitstream in a non-data-aided manner.

Easiest to use is Maximum Likelihood (ML) which basically depends on the derivative of the signal at that instant. However, for that, you generally need two samples/symbol. In your case, you are dongdoing it once every symbol, so you have to use an algorithm which uses 1 sample/symbol. The most common algorithm operating at 1 sample/symbol is called Muller and Muller (M&M) technique, which basicallyin essence balances the output of the auto-correlation of the pulse shape across two symbols.

Yes, there is. You have to study a broad field in digital communication systems which is called synchronization. Generally speaking, much of the synchronization principles are the same across different parameters. Specifically, you need to implement a timing synchronization (also called timing recovery or clock recovery) subsystem in a digital receiver. You can do it in either in open loop manner (feedforward) or closed loop method (feedback, PLL based). Once you start implementing it, then you will have specific questions for which you can return to SE time and again.

In this particular example, your clock frequency is all right (bits are changing every 100ms --- a constant difference from your sampling intervals). Ideally, the output of a matched filter is sampled at the end the sampling period. Since you don't know the ideal sampling instants (maximum eye opening), you have to use either the knowledge of the data (say, a preamble), or you can use characteristics of your bitstream in a non-data-aided manner.

Easiest to use is Maximum Likelihood (ML) which basically depends on the derivative of the signal at that instant. However, for that, you generally need two samples/symbol. In your case, you are dong it once every symbol, so you have to use an algorithm which uses 1 sample/symbol. The most common algorithm operating at 1 sample/symbol is called Muller and Muller (M&M) technique, which basically balances the output of the auto-correlation of the pulse shape across two symbols.

Yes, there is. You have to study a broad field in digital communication systems which is called synchronization. Generally speaking, much of the synchronization principles are the same across different parameters. Specifically, you need to implement a timing synchronization (also called timing recovery or clock recovery) subsystem in a digital receiver. You can do it in either in open loop manner (feedforward) or closed loop method (feedback, PLL based). Once you start implementing it, then you will have specific questions for which you can return to SE time and again.

In this particular example, your clock frequency is all right (bits are changing every 100ms --- a constant difference from your sampling intervals). Ideally, the output of a matched filter is sampled at the end the sampling period. Since you don't know the ideal sampling instants (maximum eye opening), you have to use either the knowledge of the data (say, a preamble), or you can use characteristics of your bitstream in a non-data-aided manner.

Easiest to use is Maximum Likelihood (ML) which basically depends on the derivative of the signal at that instant. However, for that, you generally need two samples/symbol. In your case, you are doing it once every symbol, so you have to use an algorithm which uses 1 sample/symbol. The most common algorithm operating at 1 sample/symbol is called Muller and Muller (M&M) technique, which in essence balances the output of the auto-correlation of the pulse shape across two symbols.

1
source | link

Yes, there is. You have to study a broad field in digital communication systems which is called synchronization. Generally speaking, much of the synchronization principles are the same across different parameters. Specifically, you need to implement a timing synchronization (also called timing recovery or clock recovery) subsystem in a digital receiver. You can do it in either in open loop manner (feedforward) or closed loop method (feedback, PLL based). Once you start implementing it, then you will have specific questions for which you can return to SE time and again.

In this particular example, your clock frequency is all right (bits are changing every 100ms --- a constant difference from your sampling intervals). Ideally, the output of a matched filter is sampled at the end the sampling period. Since you don't know the ideal sampling instants (maximum eye opening), you have to use either the knowledge of the data (say, a preamble), or you can use characteristics of your bitstream in a non-data-aided manner.

Easiest to use is Maximum Likelihood (ML) which basically depends on the derivative of the signal at that instant. However, for that, you generally need two samples/symbol. In your case, you are dong it once every symbol, so you have to use an algorithm which uses 1 sample/symbol. The most common algorithm operating at 1 sample/symbol is called Muller and Muller (M&M) technique, which basically balances the output of the auto-correlation of the pulse shape across two symbols.