MasterLink USB adapter

Home Forums General Discussion & Questions MasterLink USB adapter

Viewing 20 posts - 1 through 20 (of 21 total)
  • Author
    Posts
  • #1932
    B3OHACK3R
    BRONZE Member
      • Topics Started 7
      • Total Posts 61

      Hi,

      I have this fancy circuit here that allows easy communication with any ML device out there. In the other thread I was thinking about a light version that would be more or less an USB-ML converter.

      https://beoworld.org/forums/topic/universal-link-adapter/

      You could e.g. connect it to a single-board-computer (Raspberry Pi, etc) and basically do whatever you want. Use it like a MLGW, inject commands, extract commands and have bidirectional audio transmission.
      Some basic software / tinkering skills required. I would release a few examples how to do certain things but the final implementation would be up to you.
      It would act like a USB serial converter as well as a USB sound card.

      For example I’m using it in a setup where it controls a BSys3 that is connected to a LG TV. You would also be able to record analog ML audio and send it to streaming devices / speakers on your network – but that’s up to you then.

      Who is interested in such a thing?

      EDIT:
      This interface is available now. Please have a look here.

      #20169
      B3OHACK3R
      BRONZE Member
        • Topics Started 7
        • Total Posts 61

        Great, thanks for confirming.

        Meanwhile I  created a block diagram of the solution in question.
        More or less copied over the audio block form the universal link adapter project. Just added a simple USB I2S bridge. While there are several other ways implementing it on the audio side –  those two chips (ADC & DAC) are working well with ML and only require minimal surrounding components.

        For ML master/slave selection I probably just add a manual switch on the board. I see no application where this needs to be changed programatically during runtime…

        MUA

        #20099
        B3OHACK3R
        BRONZE Member
          • Topics Started 7
          • Total Posts 61

          I would LOVE this device!

          Great!

          #19723
          silou
          BRONZE Member
            • Topics Started 6
            • Total Posts 18

            I am also very interested.

            is it possible to control it directly by serial Rs232 (with/without a level converter) ?

             

            Thank you for your excellent work !

            #19720
            B3OHACK3R
            BRONZE Member
              • Topics Started 7
              • Total Posts 61

              A very great use case which has been requested by many

              Yes, certainly makes BL2000 and BL3500 a lot more useful again. 🙂

               

              is it possible to control it directly by serial Rs232 (with/without a level converter) ?

              No, that won’t work unfortunately. It’s a half-duplex symmetrical bus working at very low voltages (+/- 0.25V). It is a bit similar to RS422 but won’t work with such transceiver chips due to the low voltages. Also you have to provide power to the data pins as well as to the ML detect pin.  So quite a circuit required and anything else than straight forward.

               

              Thank you for your excellent work !

              Thanks 🙂

              #19719
              silou
              BRONZE Member
                • Topics Started 6
                • Total Posts 18

                is it possible to control it directly by serial Rs232 (with/without a level converter) ?

                No, that won’t work unfortunately. It’s a half-duplex symmetrical bus working at very low voltages (+/- 0.25V). It is a bit similar to RS422 but won’t work with such transceiver chips due to the low voltages. Also you have to provide power to the data pins as well as to the ML detect pin. So quite a circuit required and anything else than straight forward.

                I misspoke ! Controlling the ML USB adapter by direct by UART instead of USB !

                 

                Is there any “waiting list”  for this device and/or ML to RJ45  adapter ?

                Thanks

                #19716
                B3OHACK3R
                BRONZE Member
                  • Topics Started 7
                  • Total Posts 61

                  I misspoke ! Controlling the ML USB adapter by direct by UART instead of USB !

                  Ah, okay. On the hardware side that would work. The thing is that ML requires setting some (nowadays) very uncommon parity bits. I’m glad that I found a USB-serial chip that on the receiving side happily ignores any parity errors but let’s you set arbitrary bits when sending.

                  So if you are not going through the USB interface it gets a bit more complicated and really depends.

                   

                  Is there any “waiting list”  for this device and/or ML to RJ45  adapter ?

                  Will update this thread once everything is ready. Still have to do the compliance testing and paperwork… You can also send me a PM and I’ll put you on the list. 🙂

                  #19712
                  Glitch
                  BRONZE Member
                    • Topics Started 18
                    • Total Posts 267

                    Controlling the ML USB adapter by direct by UART instead of USB

                    I had a similar thought. I considered suggesting adding solder jumpers and some pads to attached wires (or a connector) to the UART signal traces. Without more detail of the design, it is hard to know if suggestions like this make sense or not.

                    I’m glad that I found a USB-serial chip that on the receiving side happily ignores any parity errors…

                    What happens when there is an actual (real) parity error?

                    I’m looking forward to any updates on functionality, availability, and pricing. This device has the potential to be a lot of fun.

                    Glitch

                     

                    #19706
                    silou
                    BRONZE Member
                      • Topics Started 6
                      • Total Posts 18

                      I had a similar thought. I considered suggesting adding solder jumpers and some pads to attached wires (or a connector) to the UART signal traces. Without more detail of the design, it is hard to know if suggestions like this make sense or not.

                      What exactly you’d like to connect there? Right now the RX/TX pins from the ML transceiver circuit are directly connected to the FTDI USB-serial chip. By soldering / removing a few resistors they can also be routed to the 40-way pinsocket. For Raspberry Pis there is a library for bit-banging such things on the GPIOs. Haven’t tried it but they promise it works up to 19200 baud (exactly the ML speed) with zero errors.

                       

                      I would like to inject commands, and extract commands on the ML from an my HA system using rs232.

                      #19486
                      B3OHACK3R
                      BRONZE Member
                        • Topics Started 7
                        • Total Posts 61

                        A quick video with a BL3500. Pretty much the same as the previous one with the BL2000.

                        Still have to take the video with the BeoCenter 2. That works really nice as well. Showing even the AirPlay metadata on the display…

                         

                        #19456
                        B3OHACK3R
                        BRONZE Member
                          • Topics Started 7
                          • Total Posts 61

                          BeoCenter 2 and MasterDataTool in action

                          https://www.youtube.com/watch?v=HRpvP_2JzAE

                          #19432
                          Glitch
                          BRONZE Member
                            • Topics Started 18
                            • Total Posts 267

                            What exactly you’d like to connect there?

                            I’m not exactly sure. It just “seems” like something that might be useful. 😉 Being able to bit-bang from a Raspberry Pi would likely cover anything that I would want to play with.

                            Each telegram contains a checksum. If a bit got flipped somehow (messages colliding etc) the checksum won’t match and the telegram is ignored or resent.

                            My question was related to how the retry strategy works. For example, which device (sender or receiver) initiates a retry? I’m not really looking for an answer here, but your statement of a “USB-serial chip that on the receiving side happily ignores any parity errors” got me thinking a bit. My experience is that 90% of code from most projects is (or should be) dedicated to faults and edge cases. This code is usually under-represented since 90% of the coders only want to work on the 10% of code that is NOT faults and edge cases. 😉

                            Glitch

                             

                            #19213
                            B3OHACK3R
                            BRONZE Member
                              • Topics Started 7
                              • Total Posts 61

                              From a practical point of view, how do you connect into the ML network – I assume instead of ML plug you wire into a connector box?

                              I made this little ML RJ45 adapter you can see on this picture here. You can directly plug it directly into an ML device and then use a standard RJ45 cable for connecting it to the interface board. If you have a ML system with several linkrooms connected then either solder an ethernet cable onto the bus at a convenient location or if you are lucky to have one of those old ML distribution boxes just plug in the little adapter from the picture above. Alternatively you can also wire everything with RJ45 – I made a passive RJ45 hub for joining 6 ML devices.

                              In terms of signal input I’d ideally use (an old unused) iMac – would that work?

                              The title of this thread is not exactly matching anymore. While it still relies on a USB connection for the ML communication, it was later made compatible with a Raspberry Pi single board computer. You just attach the ML interface board to it. You can then run any software you’d like. There are some very well working community implementations for AirPlay, Spotify Connect, etc. available.

                              I have a Beosound 9000 version 1 master, which doesn’t support N.Music or N.Radio – is there any other way that these type of services can be accessed off the music source (ie iMAc in this case)?

                              For those units the theory is setting it to Option 2 (TV speakers connected to BS9000) and let the ML interface board act as a video master. So you can then use TV/SAT/DTV/etc. for streaming through the BS9000. It should work but haven’t tested it yet.

                              If all the above works, I’d order one tomorrow!

                              Not yet available! Should have some stock in around 2 weeks. Also please be prepared to fiddle a bit with the software. I’m using it daily and it works really reliable but the initial setup requires some very basic software “tinkering” skills. Already wrote an nice documentation for it but it’s not the typical plug-n-play product.

                              #19198
                              Guy
                              Moderator
                                • Warwickshire, UK
                                • Topics Started 16
                                • Total Posts 1,047

                                Quick question: If the device is set up as an audiomaster and connected to an ML equipped B&O TV in V.OPT 2, will the TV show audio metadata if the screen is unmuted/turned on?

                                (I am not sure if this was ever tested during the linkplayer experiments)

                                #18969
                                B3OHACK3R
                                BRONZE Member
                                  • Topics Started 7
                                  • Total Posts 61

                                  Created a little documentation website over here. Still in early stage but already covers the most important things. https://mdt.polyvection.com/
                                  Also there here a few software examples. https://gitlab.com/masterdatatool/software

                                   

                                  #18655
                                  B3OHACK3R
                                  BRONZE Member
                                    • Topics Started 7
                                    • Total Posts 61

                                    The female 16-pin ones are a bit problematic to source. I still couldn’t find them at Molex but TE makes a compatible part. I just recently learned that it’s called an SDL connector.
                                    So if you have a traditionally wired ML system probably it’s best to either directly solder a RJ45 cable to an existing ML one – or use one of those legacy 6-port ML distributor boxes to chain it together.

                                    If I ever get hold of some 16-pin ML female THT connectors I can make a small adapter for that as well. Like you say, 16-pin ML on the one side, two RJ45 on the other. One of them then goes into the device you removed the 16-pin cable from while the other then connects the MDT. Let’s see…

                                    #18629
                                    B3OHACK3R
                                    BRONZE Member
                                      • Topics Started 7
                                      • Total Posts 61

                                      Nice. I guess that it could also be served to NL devices as well?

                                      There is an easy to use AirPlay sender application. Then you are not limited to NL-only devices. Had a test setup where you could press play on a BeoGram and then the sound would come through a BeoLit12. It even allows you to sync multiple AirPlay receivers.
                                      Technically it would also be able to handle NL but one first need to reverse engineer that protocol. Replicating something like a NL/ML BLC shouldn’t be too complicated. Unfortunately I don’t have much time for going down that rabbit hole right now.

                                       

                                      #18450
                                      djerik
                                      BRONZE Member
                                        • Topics Started 4
                                        • Total Posts 7

                                        Wow – great work.

                                        Let me know if you want to sell one or help programming?

                                        #18432
                                        B3OHACK3R
                                        BRONZE Member
                                          • Topics Started 7
                                          • Total Posts 61

                                          Wow – great work. Let me know if you want to sell one or help programming?

                                          Thanks 🙂
                                          Here you will find some extensive documentation about it and also how to buy one.
                                          https://mdt.polyvection.com/

                                          #15563
                                          djerik
                                          BRONZE Member
                                            • Topics Started 4
                                            • Total Posts 7

                                            I tried to order one, but I don’t receive any reply’s.

                                            Did anyone else buy and receive one?

                                          Viewing 20 posts - 1 through 20 (of 21 total)
                                          • You must be logged in to reply to this topic.