SINUS RDS PROJECT
-
- proppa neck!
- Posts: 919
- Joined: Fri Aug 26, 2016 7:01 pm
Re: SINUS RDS PROJECT
With what i have i did the pcb , provided by rigmo .
with the caps i have also , i know maybe styroflex or even mkt are needed for hogh precision and not ceramic like i did , but what i want to try is hearing the burbuling and then connect the filter and see if it work , by ears.
as in the schematic provided , where it should be connected ?
with the caps i have also , i know maybe styroflex or even mkt are needed for hogh precision and not ceramic like i did , but what i want to try is hearing the burbuling and then connect the filter and see if it work , by ears.
as in the schematic provided , where it should be connected ?
You do not have the required permissions to view the files attached to this post.
- 3metrejim
- no manz can test innit
- Posts: 147
- Joined: Wed Feb 22, 2017 3:00 pm
Re: SINUS RDS PROJECT
I found this diagram from way back (using the way back machine) from a site called myRDS (my being translation of Mon). Not sure if this is from the same person that originally did MonRDS or not. I'm looking for the name of the person that originated the MonRDSso that I can credit them when I finalise the firmware (working to try and get the full 64 character radiotext along with making the text a/b flag work as it should) and release the source code. From the myRDS site, the best name I can come up with is Renaud Cerrato, but no idea if that is the correct person to credit.
Anyway, as for the diagram, just the top section is relevant, the chopper (using a 4051) and a bandpass filter. When experimenting in the simulator I found a bandpass filter would probably be suitable for removing noise generated by the chopping modulator.
Anyway, as for the diagram, just the top section is relevant, the chopper (using a 4051) and a bandpass filter. When experimenting in the simulator I found a bandpass filter would probably be suitable for removing noise generated by the chopping modulator.
You do not have the required permissions to view the files attached to this post.
-
- proppa neck!
- Posts: 919
- Joined: Fri Aug 26, 2016 7:01 pm
Re: SINUS RDS PROJECT
you mean the rds that have 16f876a and the lcd
- 3metrejim
- no manz can test innit
- Posts: 147
- Joined: Wed Feb 22, 2017 3:00 pm
Re: SINUS RDS PROJECT
Yes, Radium, that one. This is the comment from the site about use of 2 bandpass filters (and from simulations done earlier, I'd tend to agree).
Quote from site on WB machine https://web.archive.org/web/20041019182 ... 876_2.html
so it's not just myself saying "Bandpass filters".
Quote from site on WB machine https://web.archive.org/web/20041019182 ... 876_2.html
so it's not just myself saying "Bandpass filters".
I'd still like to know the author of the code for MonRDS that we are playing with though. I've now got it complete with 64 character radiotext and a couple of other enhancements. and small enough to fit in the smaller sibling of the PIC16F628, the PIC16F627 (what I use for testing) with still some bytes of RAM free and enough code space to implement another function or enhancements, maybe.Why use 2 bandpass filter ?
By sampling, subcarrier harmonics (specially the third order : 57KHzx3 = 171KHz) is present in the signal. If injected in the VHF transmitter, this harmonic will dangerousely increase FM deviation which is limited to 75KHz. Neighboring FM stations (ie near your frequency) may be disturbed by this harmonic, resulting in 'noise'.
-
- proppa neck!
- Posts: 2778
- Joined: Tue Apr 05, 2016 1:23 am
Re: SINUS RDS PROJECT
Between the 1n output capacitor and before the 10k RDS level preset:
Note: You can use a TL072 instead of the LM358 - I used the '358 because I have hundreds of them!
You do not have the required permissions to view the files attached to this post.
"Why is my rig humming?"
"Because it doesn't know the words!"![Wink ;)](./images/smilies/icon_e_wink.gif)
"Because it doesn't know the words!"
![Wink ;)](./images/smilies/icon_e_wink.gif)
- 3metrejim
- no manz can test innit
- Posts: 147
- Joined: Wed Feb 22, 2017 3:00 pm
Re: SINUS RDS PROJECT
Well, I managed to find the original author - JJ Goessens. Looks like website down (used to be routed through dyndns). Thanks to the WB machine again (!), most of the original information can still be found. I have no idea how the hex file I was looking at ended up so distorted.
http://www.goessens.dyndns.org/wiki/dok ... nrds_coder
Seems like there are many versions of the PIC16F628 firmware floating about, mainly from the vrtp (russian) website.
Makes me wonder what firmware is on the MonRDS encoders on aliexpress and etsy. They seem to be from Turkey - Robosem Engineering (who also sell other toys - a BA14xx IC stereo coder and the Pira compressor/limiter).
I'll return the MonRDS (628 version) encoder clock/time function to it's original intended operation, and call it a day I think.
http://www.goessens.dyndns.org/wiki/dok ... nrds_coder
Seems like there are many versions of the PIC16F628 firmware floating about, mainly from the vrtp (russian) website.
Makes me wonder what firmware is on the MonRDS encoders on aliexpress and etsy. They seem to be from Turkey - Robosem Engineering (who also sell other toys - a BA14xx IC stereo coder and the Pira compressor/limiter).
I'll return the MonRDS (628 version) encoder clock/time function to it's original intended operation, and call it a day I think.
- sinus trouble
- proppa neck!
- Posts: 1410
- Joined: Fri Aug 22, 2014 11:34 pm
Re: SINUS RDS PROJECT
Yes! I mentioned Goessens in my very first post of this thread! Being French? I would guess his full name is "Jean-Jaques" Goessens??3metrejim wrote: ↑Tue Mar 21, 2023 9:21 pm Well, I managed to find the original author - JJ Goessens. Looks like website down (used to be routed through dyndns). Thanks to the WB machine again (!), most of the original information can still be found. I have no idea how the hex file I was looking at ended up so distorted.
http://www.goessens.dyndns.org/wiki/dok ... nrds_coder
Seems like there are many versions of the PIC16F628 firmware floating about, mainly from the vrtp (russian) website.
Makes me wonder what firmware is on the MonRDS encoders on aliexpress and etsy. They seem to be from Turkey - Robosem Engineering (who also sell other toys - a BA14xx IC stereo coder and the Pira compressor/limiter).
I'll return the MonRDS (628 version) encoder clock/time function to it's original intended operation, and call it a day I think.
![Smile :)](./images/smilies/icon_e_smile.gif)
He did release a more complicated version as mentioned on here!
Anyways, I doubt it was ever produced to be Ground Breaking technology!
To those individuals who expect superior performance for free? Look elsewhere!
Thank you 3mtrjim for your time and knowledge!
![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
I am as stupid as I look! ![Neutral :|](./images/smilies/icon_neutral.gif)
![Neutral :|](./images/smilies/icon_neutral.gif)
- 3metrejim
- no manz can test innit
- Posts: 147
- Joined: Wed Feb 22, 2017 3:00 pm
Re: SINUS RDS PROJECT
A present, I hope it works ok. Seems to test out. But you've got the source code too (with plenty of comments and separated into sections where it needs to be read more easily, although some might be out of date or a little cryptic) so if there are any bugs, you may be able to fix them yourself...
Added 64 character RT capability and flipping of the text A/B flag (it is meant to clear a receiver screen before accepting a new RT so that one message doesn't overwrite another). Also short messages (ended with 0x0D) don't transmit the whole RT buffer, but go back to the start now.
I used one of the old MPASM versions to assemble.
Enjoy...![smiley :tup](./images/smilies/me.gif)
Added 64 character RT capability and flipping of the text A/B flag (it is meant to clear a receiver screen before accepting a new RT so that one message doesn't overwrite another). Also short messages (ended with 0x0D) don't transmit the whole RT buffer, but go back to the start now.
I used one of the old MPASM versions to assemble.
Enjoy...
![smiley :tup](./images/smilies/me.gif)
You do not have the required permissions to view the files attached to this post.
-
- proppa neck!
- Posts: 919
- Joined: Fri Aug 26, 2016 7:01 pm
Re: SINUS RDS PROJECT
mon rds the file i posted above from vrtp with 16f628a standalone , i will test our freind 3m on same pcb .
this done before and my video
the scond link if for the french free renaud cerrato
this done before and my video
the scond link if for the french free renaud cerrato
- 3metrejim
- no manz can test innit
- Posts: 147
- Joined: Wed Feb 22, 2017 3:00 pm
Re: SINUS RDS PROJECT
If you put some proper filtering on the data stream (instead of the multiple RC network) and the 57kHz output, you should have a half decent RDS coder. It might also be a good idea to use something other than a single transistor chopper modulator. These modifications will make the coder less of a simple circuit though, although not excessively so.
I would recommend reading the active filter cookbook, from Don Lancaster. A very early version is on his website. Of course now you would use much better op-amps, but the filter design will still be the same.
https://www.tinaja.com/ebooks/afcb.pdf
I would recommend reading the active filter cookbook, from Don Lancaster. A very early version is on his website. Of course now you would use much better op-amps, but the filter design will still be the same.
https://www.tinaja.com/ebooks/afcb.pdf
Last edited by 3metrejim on Wed Mar 22, 2023 11:09 am, edited 1 time in total.
-
- proppa neck!
- Posts: 919
- Joined: Fri Aug 26, 2016 7:01 pm
Re: SINUS RDS PROJECT
Thanks 3metrejim
- 3metrejim
- no manz can test innit
- Posts: 147
- Joined: Wed Feb 22, 2017 3:00 pm
Re: SINUS RDS PROJECT
Looks like with Chrome web browser (and Edge, Opera) you can use something called the Web Serial API, to access serial ports of a computer. This means it is possible to write a single page web app that can control MonRDS, play music, display the playing track name on radiotext, have a T(raffic) A(nnouncement) button on screen for a presenter to press (with timeout, of course). You can make it as advanced as you like, and in an easy to program language (javascript) that requires no compilation, and isn't completely system specific (but is browser specific, unfortunately).
Anyone willing to try it out? I've spent plenty of time on re-creating PIC source code, so maybe someone else could attempt this.
Anyone willing to try it out? I've spent plenty of time on re-creating PIC source code, so maybe someone else could attempt this.
- 3metrejim
- no manz can test innit
- Posts: 147
- Joined: Wed Feb 22, 2017 3:00 pm
Re: SINUS RDS PROJECT
I could probably re-create it, the most important part is output to the d2a, just need a few hundred milliseconds record of it before it is filtered (logic analyser?).sinus trouble wrote: ↑Sat Dec 19, 2020 11:22 pm I doubt we will ever get a legit version of Pira RDS coding! Unless Jan decides to release it himself.
The problem is being that Jan is clever enough to sell it (the mrds1322) at a very reasonable price to discourage the effort required to re-code a version of it. I also wouldn't want to be responsible for that guy at A*****f getting something of good quality for nothing either (he uses Jan's miniRDS board on a stereo encoder/RDS kit).
-
- proppa neck!
- Posts: 919
- Joined: Fri Aug 26, 2016 7:01 pm
Re: SINUS RDS PROJECT
i was searching very long time for the pira mini rds over year , maybe 2001 or 3 i dont remeber the code was there but never get to download it , as i was not need it , lol , i was playing in that era with vfo .3metrejim can it possible to write something or revert monrds to work with this pcb .
https://pira.cz/rds/show.asp?art=minirds_encoder
https://pira.cz/rds/show.asp?art=minirds_encoder
- 3metrejim
- no manz can test innit
- Posts: 147
- Joined: Wed Feb 22, 2017 3:00 pm
Re: SINUS RDS PROJECT
I doubt it. The PIC shown on the photograph is more likely to be an anti-copy attempt red herring. To over-sample at 361kHz with an old PIC running at 4.332MHz, you'd get only 3 instructions per sample period, one of them needs to write to the port, leaving only two to do something. I expect it's a PIC running at 4x the crystal frequency. Still doesn't leave much time, but just enough if you split the code into blocks. It must be tight, and why the I2C only runs at 600Hz.
I don't like copying tbh, you could improve MonRDS by oversampling the data stream to get rid of most of the RC filter by using the spare pins of PORT A. An external modulator can be built to not take up much board space using surface mount components. Doubling the crystal frequency to 8.664MHz will give plenty of time to make the coding easy, and those crystals are available as easily as the 4.332MHz ones.
You should achieve performance similar to an Innovonics model 710 (an old product). There is enough information in the manual to tell you that switching at 57KHz is enough, followed by two bandpass filters.
A quote from the manual (for educational purposes)
You still need to arrange for the 19KHz lock.
As this was a commercial product, you should be able to achieve good results. There is no diagram to copy - Here some proper reverse engineering needs to be done.
I don't like copying tbh, you could improve MonRDS by oversampling the data stream to get rid of most of the RC filter by using the spare pins of PORT A. An external modulator can be built to not take up much board space using surface mount components. Doubling the crystal frequency to 8.664MHz will give plenty of time to make the coding easy, and those crystals are available as easily as the 4.332MHz ones.
You should achieve performance similar to an Innovonics model 710 (an old product). There is enough information in the manual to tell you that switching at 57KHz is enough, followed by two bandpass filters.
A quote from the manual (for educational purposes)
This indicates that switching at 57Khz is ok (you need at least twice the frequency, to generate a waveform at the frequency you want. Here the minimum is used, and also an integer multiple of your wanted frequency, which makes things easier.)The 114kHz master clock cycles counters IC29 and IC30 through a routine which develops the basic waveshape,
This is telling you what kind of output filter is suitable.A two-section, band-pass output filter removes waveshape segmentation and switching noise. The first filter section, IC34B and IC35A, is tuned to 55kHz, or slightly below the mean subcarrier frequency. The second section, IC35B and IC38A, is tuned to 59kHz, symmetrically above 57kHz.
You still need to arrange for the 19KHz lock.
As this was a commercial product, you should be able to achieve good results. There is no diagram to copy - Here some proper reverse engineering needs to be done.
- sinus trouble
- proppa neck!
- Posts: 1410
- Joined: Fri Aug 22, 2014 11:34 pm
Re: SINUS RDS PROJECT
I am still learning with coding but with 3mtrjims Assembly file there are some parts which stand out!
Here is an example for us amateurs!
Here is an example for us amateurs!
You do not have the required permissions to view the files attached to this post.
I am as stupid as I look! ![Neutral :|](./images/smilies/icon_neutral.gif)
![Neutral :|](./images/smilies/icon_neutral.gif)
- sinus trouble
- proppa neck!
- Posts: 1410
- Joined: Fri Aug 22, 2014 11:34 pm
Re: SINUS RDS PROJECT
If we take a look at Jims EEPROM data! (Default Text)
We can see the hexadecimal values of each character (Letter or Number Etc) which correspond to a Western standard language known as ASCII
So using this table below, We can decode the Text!
We can see the hexadecimal values of each character (Letter or Number Etc) which correspond to a Western standard language known as ASCII
So using this table below, We can decode the Text!
You do not have the required permissions to view the files attached to this post.
I am as stupid as I look! ![Neutral :|](./images/smilies/icon_neutral.gif)
![Neutral :|](./images/smilies/icon_neutral.gif)
- sinus trouble
- proppa neck!
- Posts: 1410
- Joined: Fri Aug 22, 2014 11:34 pm
Re: SINUS RDS PROJECT
I have yet to go through the whole coding?
However, Even with just a quick glance? I can see parts where a process is repeated several times!
Which is quite common in code, Usually indicated by the command GOTO
However, Even with just a quick glance? I can see parts where a process is repeated several times!
Which is quite common in code, Usually indicated by the command GOTO
I am as stupid as I look! ![Neutral :|](./images/smilies/icon_neutral.gif)
![Neutral :|](./images/smilies/icon_neutral.gif)
- 3metrejim
- no manz can test innit
- Posts: 147
- Joined: Wed Feb 22, 2017 3:00 pm
Re: SINUS RDS PROJECT
Sinus, please use the disassembly from the second post (from the MonRDS_bundle.zip file), it will be a lot easier to read (I'm sure it still will generate correct RDS output, the raw data and clock decode properly in RDSSpy at least). I'm not a professional (although I did work writing PIC code in assembly at one point, many years ago). The newer code also has nearly all of the memory locations given a name for even easier understanding as well as restoring the time function, the 64 characters of radiotext, and changing of the text A/B flag. I cannot take credit for the code (credit goes to JJ Goessens), only cleaning it up mainly. I did download it from a Russian site, rather than running the RDS software, so no telling what I started with - It was definitely changed from the original MonRDS code (which I later found on WayBack machine), and some bugs that I cleared weren't present in the original.
If you read the newer assembly along with the RDS standard, you should get a good idea of how it works.
RDS standard (older version), can be found here:
http://www.interactive-radio-system.com ... andard.pdf
If you read the newer assembly along with the RDS standard, you should get a good idea of how it works.
RDS standard (older version), can be found here:
http://www.interactive-radio-system.com ... andard.pdf
- sinus trouble
- proppa neck!
- Posts: 1410
- Joined: Fri Aug 22, 2014 11:34 pm
Re: SINUS RDS PROJECT
I never forget the original creators! But you and others that contribute deserve credit too!3metrejim wrote: ↑Mon Mar 27, 2023 1:02 am Sinus, please use the disassembly from the second post (from the MonRDS_bundle.zip file), it will be a lot easier to read (I'm sure it still will generate correct RDS output, the raw data and clock decode properly in RDSSpy at least). I'm not a professional (although I did work writing PIC code in assembly at one point, many years ago). The newer code also has nearly all of the memory locations given a name for even easier understanding as well as restoring the time function, the 64 characters of radiotext, and changing of the text A/B flag. I cannot take credit for the code (credit goes to JJ Goessens), only cleaning it up mainly. I did download it from a Russian site, rather than running the RDS software, so no telling what I started with - It was definitely changed from the original MonRDS code (which I later found on WayBack machine), and some bugs that I cleared weren't present in the original.
If you read the newer assembly along with the RDS standard, you should get a good idea of how it works.
RDS standard (older version), can be found here:
http://www.interactive-radio-system.com ... andard.pdf
Anyways, Thank You for the feedback and i will be looking into this in more depth soon!
![Smile :)](./images/smilies/icon_e_smile.gif)
I am as stupid as I look! ![Neutral :|](./images/smilies/icon_neutral.gif)
![Neutral :|](./images/smilies/icon_neutral.gif)