Announcement

Collapse
No announcement yet.

NOOB alert: Ethernet shield doesn't seem to have IP Address

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    NOOB alert: Ethernet shield doesn't seem to have IP Address

    I am trying to change from USB to Ethernet shield, for reliability. I removed the USB, plugged in the ethernet, all the pretty lights are flashing. But there is no new IP address on my networked (confirmed with 2 network sniffers and my router's built in utility).

    did some googling, and it seems that some ethernet shields need to be programmed to have an IP address?

    When I read this link, #2 stuck out at me:

    2.  Network Settings

    The shield must be assigned a MAC address and a fixed IP address using the Ethernet.begin() function. A MAC address is a globally unique identifier for a particular device. Current Ethernet shields come with a sticker indicating the MAC address you should use with them. For older shields without a dedicated MAC address, inventing a random one should work, but don't use the same one for multiple boards. Valid IP addresses depend on the configuration of your network. It is possible to use DHCP to dynamically assign an IP to the shield. Optionally, you can also specify a network gateway and subnet.

    This link provides a way to do that, apparently.

    Problem is, I'm a noob. How do I do that? My guess would be to close down HS, connect via USB, copy the text from that link into a new sketch and do some library things, and upload things...but I don't know anything beyond that, ie. what to do once that's been done (in terms of switching the board back to the HS sketch that I have now).

    anyone want to hold my hand?
    Plugins:
    BLLogMonitor, BLGarbage, BLBackup, BLOutGoingCalls, BLUps, BLRfid, JvEss, DooMotion, Applied Digital Ocelot, AC RF Processor, UltraMon, PJC AVR 430, UPB, Rain8net, DSC Panel, JRiver Media center, Windows Media Player, SageMediaCenter, SnevlCID, MCSTemperature.

    #2
    Originally posted by completelyhis View Post
    I am trying to change from USB to Ethernet shield, for reliability. I removed the USB, plugged in the ethernet, all the pretty lights are flashing. But there is no new IP address on my networked (confirmed with 2 network sniffers and my router's built in utility).

    did some googling, and it seems that some ethernet shields need to be programmed to have an IP address?

    When I read this link, #2 stuck out at me:

    2.  Network Settings

    The shield must be assigned a MAC address and a fixed IP address using the Ethernet.begin() function. A MAC address is a globally unique identifier for a particular device. Current Ethernet shields come with a sticker indicating the MAC address you should use with them. For older shields without a dedicated MAC address, inventing a random one should work, but don't use the same one for multiple boards. Valid IP addresses depend on the configuration of your network. It is possible to use DHCP to dynamically assign an IP to the shield. Optionally, you can also specify a network gateway and subnet.

    This link provides a way to do that, apparently.

    Problem is, I'm a noob. How do I do that? My guess would be to close down HS, connect via USB, copy the text from that link into a new sketch and do some library things, and upload things...but I don't know anything beyond that, ie. what to do once that's been done (in terms of switching the board back to the HS sketch that I have now).

    anyone want to hold my hand?
    if you have usb working then all you have to do is:

    Change the board to be IP in the plugin.
    Check the IP is free on your network.
    Download the sketch from the plugin page.
    upload the new sketch and the board will now be set up with Ethernet as the plugin will change the Sketch for you so you should not have to change anything other than the config page.

    Greig.
    Zwave = Z-Stick, 3xHSM100� 7xACT ZDM230, 1xEverspring SM103, 2xACT HomePro ZRP210.
    X10 = CM12U, 2xAM12, 1xAW10, 1 x TM13U, 1xMS13, 2xHR10, 2xSS13
    Other Hardware = ADI Ocelot + secu16, Global Cache GC100, RFXtrx433, 3 x Foscams.
    Plugings = RFXcom, ActiveBackup, Applied Digital Ocelot, BLDeviceMatrix, BLGarbage, BLLAN, Current Cost, Global Cache GC100,HSTouch Android, HSTouch Server, HSTouch Server Unlimited, NetCAM, PowerTrigger, SageWebcamXP, SqueezeBox, X10 CM11A/CM12U.
    Scripts =
    Various

    Comment


      #3
      Reading between the lines, does this mean that the HomeSeer sketch has the ability to set the ip address? You mentioned that I need to download the sketch from the plugin page, but I already have it downloaded, I think it's version 1.0.0.36

      If that's the right one, all i have to do is go into the sketch and type in an available IP address, then upload it to the board, remove the USB (maybe power cycle it?), and start HomeSeer?

      Thanks,

      Ian
      Plugins:
      BLLogMonitor, BLGarbage, BLBackup, BLOutGoingCalls, BLUps, BLRfid, JvEss, DooMotion, Applied Digital Ocelot, AC RF Processor, UltraMon, PJC AVR 430, UPB, Rain8net, DSC Panel, JRiver Media center, Windows Media Player, SageMediaCenter, SnevlCID, MCSTemperature.

      Comment


        #4
        No. Once you change the board to IP on the plug in page comport drop down you will see there is an IP set for you by the plug in. Make sure this is free on your network and if not change it.
        Once you have all the settings correct on the plug in page then down load the Sketch again as the plug in will change the Sketch on download to have your settings in it. Upload this new sketch to the board and the connect it up.

        Greig.

        Sent from my SM-G925F using Tapatalk
        Zwave = Z-Stick, 3xHSM100� 7xACT ZDM230, 1xEverspring SM103, 2xACT HomePro ZRP210.
        X10 = CM12U, 2xAM12, 1xAW10, 1 x TM13U, 1xMS13, 2xHR10, 2xSS13
        Other Hardware = ADI Ocelot + secu16, Global Cache GC100, RFXtrx433, 3 x Foscams.
        Plugings = RFXcom, ActiveBackup, Applied Digital Ocelot, BLDeviceMatrix, BLGarbage, BLLAN, Current Cost, Global Cache GC100,HSTouch Android, HSTouch Server, HSTouch Server Unlimited, NetCAM, PowerTrigger, SageWebcamXP, SqueezeBox, X10 CM11A/CM12U.
        Scripts =
        Various

        Comment


          #5
          Originally posted by completelyhis View Post
          Reading between the lines, does this mean that the HomeSeer sketch has the ability to set the ip address? You mentioned that I need to download the sketch from the plugin page, but I already have it downloaded, I think it's version 1.0.0.36

          If that's the right one, all i have to do is go into the sketch and type in an available IP address, then upload it to the board, remove the USB (maybe power cycle it?), and start HomeSeer?

          Thanks,

          Ian
          I would highly recommend the beta version as it is more stable with IP than 1.0.0.36. The current beta is 1.0.0.99. If you go to the new version of the plug-in, you will have to upload new sketches to your boards.

          Follow the instructions on page 2 of the help file (attached). Select IP from the Connection: dropdown. Configure your board, then download the new sketches. You will need to use a later version of the Arduino software "Please only use version 1.5.6-r2" and new libraries, but you will end up with a very stable build.

          The new Arduino software is here.
          Attached Files

          Comment


            #6
            man i feel like an idiot! Here is what I have done, and a lot of questions revealing what I don't know:

            What I've done: I downloaded the new Arduino software, which included drivers and such. I also downloaded the new ino file from the plugin. then i renamed the old ino file (adding .bak) to it, and copied the new one in that folder.

            what I don't know:
            I think i'm supposed to open the ino file in the arduino software and send it to the board, right? do i need to configure it all over again with port info? will i lose my pin configuration from the old sketch?

            the instructions say something about downloading new firmware to the board, to be obtained from plugin config page...don't see that anywhere.

            Follow the instructions on page 2 of the help file (attached). Select IP from the Connection: dropdown. Configure your board, then download the new sketches. You will need to use a later version of the Arduino software "Please only use version 1.5.6-r2" and new libraries, but you will end up with a very stable build.
            Can you help me see that in the proper sequence? Ie, do i send the new sketch that I got from the plugin config page to the board (using the arduino software?) THEN config the IP address (using the plugin?) OR do I change the config of the plugin to Ethernet, THEN....arg, i just don't understand the arduino universe enough yet. i must be getting old, i used to be smart. :-(
            Plugins:
            BLLogMonitor, BLGarbage, BLBackup, BLOutGoingCalls, BLUps, BLRfid, JvEss, DooMotion, Applied Digital Ocelot, AC RF Processor, UltraMon, PJC AVR 430, UPB, Rain8net, DSC Panel, JRiver Media center, Windows Media Player, SageMediaCenter, SnevlCID, MCSTemperature.

            Comment


              #7
              Originally posted by completelyhis View Post
              man i feel like an idiot! Here is what I have done, and a lot of questions revealing what I don't know:

              What I've done: I downloaded the new Arduino software, which included drivers and such. I also downloaded the new ino file from the plugin. then i renamed the old ino file (adding .bak) to it, and copied the new one in that folder.

              what I don't know:
              I think i'm supposed to open the ino file in the arduino software and send it to the board, right? do i need to configure it all over again with port info? will i lose my pin configuration from the old sketch?

              the instructions say something about downloading new firmware to the board, to be obtained from plugin config page...don't see that anywhere.



              Can you help me see that in the proper sequence? Ie, do i send the new sketch that I got from the plugin config page to the board (using the arduino software?) THEN config the IP address (using the plugin?) OR do I change the config of the plugin to Ethernet, THEN....arg, i just don't understand the arduino universe enough yet. i must be getting old, i used to be smart. :-(
              The pin configuration, device names, reference IDs are all stored in the devices created by the plug-in, the sketch or connection method will not affect those.

              You can leave the board connected by USB to your HomeSeer computer, then do the following:
              • Download and install the new Arduino software
              • Install the new plug-in
              • Download and install the new libraries, replacing the ones currently installed. You can download the new libraries from the plug-in configuration page. They go in c:\Program Files (x86)]Arduino\libraries
              • Set the new configuration for the board (IP address and port, the MAC address is automatic), tick Auto Connect. The IP address is hard coded in the sketch so it will not work with DHCP and a new sketch must be uploaded if you change it.
              • Download the new sketch. It will be in two places - the windows downloads folder and c:\Program Files(x86)\Homeseer HS3\Config\Arduino Config. It will be HomeseerBoardX.ino, where X is the board number.
              • Open the .ino file from either location with the Arduino software. It will want to put it in a new folder, click OK.
              • Select the type of board and the COM (USB) port from the Tools menu. The port will tell you what board is attached.
              • Upload the new sketch. The port you use when uploading the sketch is only used for uploading. Once the Ethernet sketch is in place, the port number is irrelevant - the actual connection will be at the IP address and port used on the configuration page.
              • Power the Arduino - I use a separate 5-volt supply with the barrel connector, then connect it to your network. It should automatically connect, but you can manually disconnect, reset or connect from the Device Manager.


              Now it will be connected by Ethernet, but all of your configuration will remain the same.

              Comment


                #8
                Wow, thank you so much for all the help. your step by step hand holding really helps!
                One clarifying question: step 2 is to install current plugin. I'm guessing that's different from "sketch" and all those other things. I looking in HS3, and the plugin version is 1.0.0.65, and it doesn't say there is an update available. I see that there is a beta 1.0.0.85, at least, but I have no way how to get it. Could you point me in the right direction, or is 1.0.0.65 good enough?

                Ian

                Originally posted by rprade View Post
                The pin configuration, device names, reference IDs are all stored in the devices created by the plug-in, the sketch or connection method will not affect those.

                You can leave the board connected by USB to your HomeSeer computer, then do the following:
                • Download and install the new Arduino software
                • Install the new plug-in
                • Download and install the new libraries, replacing the ones currently installed. You can download the new libraries from the plug-in configuration page. They go in c:\Program Files (x86)]Arduino\libraries
                • Set the new configuration for the board (IP address and port, the MAC address is automatic), tick Auto Connect. The IP address is hard coded in the sketch so it will not work with DHCP and a new sketch must be uploaded if you change it.
                • Download the new sketch. It will be in two places - the windows downloads folder and c:\Program Files(x86)\Homeseer HS3\Config\Arduino Config. It will be HomeseerBoardX.ino, where X is the board number.
                • Open the .ino file from either location with the Arduino software. It will want to put it in a new folder, click OK.
                • Select the type of board and the COM (USB) port from the Tools menu. The port will tell you what board is attached.
                • Upload the new sketch. The port you use when uploading the sketch is only used for uploading. Once the Ethernet sketch is in place, the port number is irrelevant - the actual connection will be at the IP address and port used on the configuration page.
                • Power the Arduino - I use a separate 5-volt supply with the barrel connector, then connect it to your network. It should automatically connect, but you can manually disconnect, reset or connect from the Device Manager.


                Now it will be connected by Ethernet, but all of your configuration will remain the same.
                Plugins:
                BLLogMonitor, BLGarbage, BLBackup, BLOutGoingCalls, BLUps, BLRfid, JvEss, DooMotion, Applied Digital Ocelot, AC RF Processor, UltraMon, PJC AVR 430, UPB, Rain8net, DSC Panel, JRiver Media center, Windows Media Player, SageMediaCenter, SnevlCID, MCSTemperature.

                Comment


                  #9
                  I'm sure i didn't do something right. thoughts?

                  Arduino: 1.5.6-r2 (Windows 8), Board: "Arduino Uno"

                  HomeseerBoard1:32: error: 'IPAddress' does not name a type
                  HomeseerBoard1:34: error: 'IPAddress' does not name a type
                  HomeseerBoard1:35: error: 'IPAddress' does not name a type
                  HomeseerBoard1:37: error: 'UDP_TX_PACKET_MAX_SIZE' was not declared in this scope
                  HomeseerBoard1:39: error: 'EthernetUDP' does not name a type
                  HomeseerBoard1.ino: In function 'void UDPCheck()':
                  HomeseerBoard1:43: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1:46: error: 'IPAddress' was not declared in this scope
                  HomeseerBoard1:46: error: expected `;' before 'remote'
                  HomeseerBoard1.ino: In function 'void SendConnect()':
                  HomeseerBoard1:245: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1:245: error: 'ServerIP' was not declared in this scope
                  HomeseerBoard1:249: error: 'HomeseerIP' was not declared in this scope
                  HomeseerBoard1.ino: In function 'void Send(byte)':
                  HomeseerBoard1:267: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1:271: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1.ino: In function 'void Send(long int)':
                  HomeseerBoard1:282: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1:286: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1.ino: In function 'void Send(int)':
                  HomeseerBoard1:298: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1:302: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1.ino: In function 'void Send(char*)':
                  HomeseerBoard1:314: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1:318: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1.ino: In function 'void Send(float)':
                  HomeseerBoard1:331: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1:335: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1.ino: In function 'void Send()':
                  HomeseerBoard1:345: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1.ino: In function 'void DataEvent()':
                  HomeseerBoard1:392: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1:392: error: 'ServerIP' was not declared in this scope
                  HomeseerBoard1:509: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  HomeseerBoard1:509: error: 'ServerIP' was not declared in this scope
                  HomeseerBoard1.ino: In function 'void setup()':
                  HomeseerBoard1:583: error: 'ServerIP' was not declared in this scope
                  HomeseerBoard1:583: error: 'HomeseerIP' was not declared in this scope
                  HomeseerBoard1:594: error: 'Ethernet' was not declared in this scope
                  HomeseerBoard1:594: error: 'ip' was not declared in this scope
                  HomeseerBoard1:595: error: 'Udp' was not declared in this scope

                  As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                  This report would have more information with
                  "Show verbose output during compilation"
                  enabled in File > Preferences.
                  Plugins:
                  BLLogMonitor, BLGarbage, BLBackup, BLOutGoingCalls, BLUps, BLRfid, JvEss, DooMotion, Applied Digital Ocelot, AC RF Processor, UltraMon, PJC AVR 430, UPB, Rain8net, DSC Panel, JRiver Media center, Windows Media Player, SageMediaCenter, SnevlCID, MCSTemperature.

                  Comment


                    #10
                    Originally posted by completelyhis View Post
                    I'm sure i didn't do something right. thoughts?

                    Arduino: 1.5.6-r2 (Windows 8), Board: "Arduino Uno"

                    HomeseerBoard1:32: error: 'IPAddress' does not name a type
                    HomeseerBoard1:34: error: 'IPAddress' does not name a type
                    HomeseerBoard1:35: error: 'IPAddress' does not name a type
                    HomeseerBoard1:37: error: 'UDP_TX_PACKET_MAX_SIZE' was not declared in this scope
                    HomeseerBoard1:39: error: 'EthernetUDP' does not name a type
                    HomeseerBoard1.ino: In function 'void UDPCheck()':
                    HomeseerBoard1:43: error: 'Udp' was not declared in this scope
                    As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.
                    ~~~
                    HomeseerBoard1:509: error: 'ServerIP' was not declared in this scope
                    HomeseerBoard1.ino: In function 'void setup()':
                    HomeseerBoard1:583: error: 'ServerIP' was not declared in this scope
                    HomeseerBoard1:583: error: 'HomeseerIP' was not declared in this scope
                    HomeseerBoard1:594: error: 'Ethernet' was not declared in this scope
                    HomeseerBoard1:594: error: 'ip' was not declared in this scope
                    HomeseerBoard1:595: error: 'Udp' was not declared in this scope

                    As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to EthernetUdp.

                    This report would have more information with
                    "Show verbose output during compilation"
                    enabled in File > Preferences.
                    You're having a conflict between the sketch, the libraries and the Arduino software. The Arduino software and libraries are very fluid. You must have everything at the same revision.

                    The newest beta is 1.0.0.99 at the bottom of the additional interfaces page. In order to use Arduino: 1.5.6-r2 I'm pretty sure you have to be on the new beta. I know it will not work with 1.0.0.35 and 1.0.0.65 and might not work with 1.0.0.85. Update to the beta plug-in 1.0.0.99, then download the new libraries from the config page, copy the files to the libraries folder, then download the new sketch. When you open the sketch in the Arduino software, right at the top of the file you will see
                    Code:
                    /********************************************************
                     *Arduino to Homeseer 3 Plugin written by Enigma Theatre.*
                     * V1.0.0.99                                             *
                     *                                                       *
                     *******Do not Change any values below*******************
                     */
                    That will tell you it is the correct sketch. Once all the versions are in sync, it should upload fine.

                    Comment


                      #11
                      Originally posted by completelyhis View Post
                      Wow, thank you so much for all the help. your step by step hand holding really helps!
                      One clarifying question: step 2 is to install current plugin. I'm guessing that's different from "sketch" and all those other things. I looking in HS3, and the plugin version is 1.0.0.65, and it doesn't say there is an update available. I see that there is a beta 1.0.0.85, at least, but I have no way how to get it. Could you point me in the right direction, or is 1.0.0.65 good enough?

                      Ian
                      The plug-in is the Arduino interface for HomeSeer. From it you can download the correct sketches and libraries. The sketch is the firmware (program) you upload to the Arduino boards. Like I said above, I would use 1.0.0.99 from the beta section at the bottom of Additional Interfaces in HomeSeer.

                      Comment


                        #12
                        Success! Thank you so much! your clear and patient explanation gives me yet one more thing to be thankful for on this day. May you be blessed on this day of giving thanks
                        Plugins:
                        BLLogMonitor, BLGarbage, BLBackup, BLOutGoingCalls, BLUps, BLRfid, JvEss, DooMotion, Applied Digital Ocelot, AC RF Processor, UltraMon, PJC AVR 430, UPB, Rain8net, DSC Panel, JRiver Media center, Windows Media Player, SageMediaCenter, SnevlCID, MCSTemperature.

                        Comment


                          #13
                          Originally posted by completelyhis View Post
                          Success! Thank you so much! your clear and patient explanation gives me yet one more thing to be thankful for on this day. May you be blessed on this day of giving thanks
                          I'm very glad I could help. Happy Thanksgiving to you as well.

                          The reason I suggested the beta is that it has been absolutely bulletproof on Ethernet connection reliability. I have 4 boards using POE Ethernet shields and they have had 100% up time over the last several months. Greig also improved the USB connection reliability as well.

                          An added bonus to the beta is the new "Alive" pin and support for a 2-line LDC display.

                          I use the Alive pin with a small opto-coupled relay, to allow critical operations to fail over to traditional control in case HS3 or an Arduino fails. It also turns on a nice bright RED LED upstairs, letting me know the HomeSeer server is not talking to the boards.

                          In addition to the above, Greig has added a whole litany of improvements in the code since 1.0.0.36. I suspect that 1.0.0.99 will become the release version.


                          I have quite a sophisticated setup using 4 Mega 5660 boards. Out of all of my HomeSeer devices, the Arduino is the one technology that I completely count on. It has been stone reliable. Feel free to ask any questions as you move along.

                          Comment


                            #14
                            It worked for a while, but now it shows disconnected. The device shows up on the network, but the plugin doesn't connect. It did at first, now isn't. I think it stopped connecting when I removed the USB cable. I am powering it externally though, so I'm not sure what the problem is. Should I reset it now that I removed USB?

                            Ian
                            Plugins:
                            BLLogMonitor, BLGarbage, BLBackup, BLOutGoingCalls, BLUps, BLRfid, JvEss, DooMotion, Applied Digital Ocelot, AC RF Processor, UltraMon, PJC AVR 430, UPB, Rain8net, DSC Panel, JRiver Media center, Windows Media Player, SageMediaCenter, SnevlCID, MCSTemperature.

                            Comment


                              #15
                              Tried power cycling the unit, rebooting the computer, restarting HS...nothing. Once my wife can spare me i'll run downstairs and re-connect the USB, to see if that fixes it. not sure why it would though :-(
                              Plugins:
                              BLLogMonitor, BLGarbage, BLBackup, BLOutGoingCalls, BLUps, BLRfid, JvEss, DooMotion, Applied Digital Ocelot, AC RF Processor, UltraMon, PJC AVR 430, UPB, Rain8net, DSC Panel, JRiver Media center, Windows Media Player, SageMediaCenter, SnevlCID, MCSTemperature.

                              Comment

                              Working...
                              X