Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    MAC Address issues

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    3
    12
    1.5k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • jevsundefined
      jevs
      last edited by

      I need a real MAC address to set up a static IP on the ethernet board. I had to get rid of the Wi-Fi version because nothing would allow it to properly move a file at a reasonable speed and without crashing.
      I have the ethernet version working now, but I want to give it a static IP.
      However, the MAC address is in a format I cannot use: P0xBE:0xEF:0xDE:0xAD:0xFE:0xEE
      I know this is just some generic filler, but the IT guys can't work with this. It does not seem to be a supported format or values.

      Can I just make up a MAC address and enter it in the config in a more conventional format like MM:MM:MM:SS:SS:SS ? Like using a generator to randomly create something like 3B:C5:14:FA:21:8C ?

      I am not sure what format I should use or enter, I am just researching this as of today, but I need to get this locked down.

      botundefined 1 Reply Last reply Reply Quote 0
      • botundefined
        bot @jevs
        last edited by bot

        Even better, simply remove the gcode to set the MAC address, as the ethernet version of the Duet 2 will generate a unique MAC address based on the MCU serial number, in the absence of a user-set MAC address.

        Also, there's no reason that BE:EF:DE:AD:FE:EE would be an invalid MAC address, but they may have objections to using a human-chosen MAC.

        *not actually a robot

        jevsundefined 1 Reply Last reply Reply Quote 0
        • jevsundefined
          jevs
          last edited by jevs

          "Also, there's no reason that BE:EF:DE:AD:FE:EE would be an invalid MAC address, but they may have objections to using a human-chosen MAC."

          The confusion is the extra characters because P0xBE:0xEF:0xDE:0xAD:0xFE:0xEE does not equal BE:EF:DE:AD:FE:EE to the average person, unless you know to decode it that way. It does not state this in the documentation in a clear way. Most people may not know that. I had a feeling it was something like this, but no way to read and verify that I found so far.... I never gave MAC addresses a second thought until today, so I would not have known that.

          The documentation is not totally clear on this, but now it makes more sense after this conversation.

          From the manual:
          M540: Set MAC address
          Parameters

          Pnnn The MAC address
          Examples

          M540 P0xBE:0xEF:0xDE:0xAD:0xFE:0xED
          M540 PDE:AD:BE:EF:CA:FE
          Sets the http://en.wikipedia.org/wiki/MAC_address of the printer. This should be done before any other network commands. The MAC address is six one-byte hexadecimal numbers separated by colons. The 0x prefix is optional.

          All devices running on the same network shall all have different MAC addresses. For your printers, changing the last digit is sufficient.

          Note on the Duet 2 Wifi the MAC address is unique and set on the Wifi Module so this command has no effect. The default MAC address on a Duet 2 Ethernet is generated from the unique processor ID so there is normally no need to change it.

          So if I want to enter my own MAC address of lets say 3B:C5:14:FA:21:8C for example. I believe I would enter:

          M540 P0x3B:0xC5:0x14:0xFA:0x21:0x8C
          or
          M540 P3B:C5:14:FA:21:8C

          Would these end up the same MAC address of 3B:C5:14:FA:21:8C ?

          1 Reply Last reply Reply Quote 1
          • jevsundefined
            jevs @bot
            last edited by

            @bot said in MAC Address issues:

            Even better, simply remove the gcode to set the MAC address, as the ethernet version of the Duet 2 will generate a unique MAC address based on the MCU serial number, in the absence of a user-set MAC address.

            I will experiment and try this. This seems like a good way if it works.

            1 Reply Last reply Reply Quote 0
            • jevsundefined
              jevs
              last edited by

              I commented out the M540 MAC address line in the config.g
              However, now, how would I tell what unique MAC address it assigned? How can I retrieve it?

              botundefined 1 Reply Last reply Reply Quote 0
              • botundefined
                bot @jevs
                last edited by

                @jevs that is a good question. If you can connect it to a router that you have access to, you should be able to deduce which Mac/ip combo is the duet.

                Paneldue will display then IP in console if it connects, if you have a paneldue. I wonder if sending the gcode for MAC address without any parameters would return the Mac.

                *not actually a robot

                1 Reply Last reply Reply Quote 0
                • jevsundefined
                  jevs
                  last edited by jevs

                  M540 does return a MAC address.

                  1 Reply Last reply Reply Quote 1
                  • botundefined
                    bot
                    last edited by

                    I just saw your post about the formatting. It surprised me too at first, as I'm not a programmer. Apparently it's a conventional way of denoting hexadecimal numbers.

                    https://stackoverflow.com/questions/8186965/what-do-numbers-using-0x-notation-mean/30659292

                    *not actually a robot

                    1 Reply Last reply Reply Quote 0
                    • jevsundefined
                      jevs
                      last edited by jevs

                      You also cannot just randomly change digits. I put in "II" as the last two. Those are I's as in "eye" 🙂
                      This did not change the last digits to ":II". It actually messed up the whole MAC addess.

                      So, what I did was go to a random MAC address generator. Set the prefix to "be" like what the duet has in the default and then generated a made up MAC address.

                      For example if I generate a random MAC address specifying "be" as the prefix and the generator gives me be:dd:e0:d3:31:62, i would then enter this line in the config.g:

                      M540 P0xbe:0xdd:0xe0:0xd3:0x31:0x62

                      Once it saves the config.g and reboots, you can run "M540" from the G code command line and it will report the MAC as be:dd:e0:d3:31:62

                      So, as of now we have a static IP on the system assigned and the MAC address is showing up normal and just as I set it.

                      Success......finally. The documentation certainly needs some clarification on this one in my opinion.

                      botundefined 1 Reply Last reply Reply Quote 0
                      • botundefined
                        bot @jevs
                        last edited by bot

                        Haha... this comes back to those pesky "0x" prefixes. The two digits that follow 0x are hexadecimal numbers. You were a few letters off of the highest digit in hexadecimal.

                        0 1 2 3 4 5 6 7 8 9 A B C D E F

                        That's like counting to 15 in hexadecimal.

                        *not actually a robot

                        1 Reply Last reply Reply Quote 0
                        • jevsundefined
                          jevs
                          last edited by

                          Yeah. A little more in depth info on the M540 section of the instruction set could be beneficial, but it all makes sense to me now.

                          Adding that entering "M540" by itself will report the MAC address would be great since it does work. This can be used to test that you are getting what you intended without going on the network and trying to find out if it is there, especially in a scenario where you do not have any control or access to the network controls.

                          Phaedruxundefined 1 Reply Last reply Reply Quote 0
                          • Phaedruxundefined
                            Phaedrux Moderator @jevs
                            last edited by

                            @jevs said in MAC Address issues:

                            Adding that entering "M540" by itself will report the MAC address would be great since it does work.

                            This is true of any gcode that is used to set values. Sending it without values will return the currently set values. I'll add a note about that to the gcode wiki though.

                            Z-Bot CoreXY Build | Thingiverse Profile

                            1 Reply Last reply Reply Quote 1
                            • First post
                              Last post
                            Unless otherwise noted, all forum content is licensed under CC-BY-SA