6 Replies Latest reply on Sep 21, 2015 7:48 PM by coloradocarlos

    Edison WiFi setup - password must be either 5 or 13 characters

    Trexter

      Okay so i'm up to setting up wifi. I am asked for a 5 or 13 character network password, but my network's password is 10 characters long.

       

      I noticed this update for the configure_edison program on github, but I have not a clue on how to install it.

       

      configure_edison, ww42 with WEP fix

       

      PLEASE HELP!

       

      thanks ahead of time

        • 1. Re: Edison WiFi setup - password must be either 5 or 13 characters
          Trexter

          update:

           

          I changed my wifi password to a 5 character password and everything works

           

          I would still like to update the files though...

          • 2. Re: Edison WiFi setup - password must be either 5 or 13 characters
            Intel_Alvarado

            Hi Trexter,

             

            This does not happen for me, when I enter the Linux console I enter configure_edison –setup. This gives me an option to change the device name, I used edison in this example. Then the system asks me to choose a password for the device and I use an 8 digit password and confirm. Then you have to choose the wifi you wish to connect to, and press the number. Then you must enter the network password you wish to connect to, password must be between 8 and 63 characters. After confirming the password you should then have access to a wireless connection . What version of the image are you using and from where did you download it?

             

            Regards

            Sergio

            • 3. Re: Edison WiFi setup - password must be either 5 or 13 characters
              Trexter

              Hi,

               

              My version is: edison-rel1-maint-weekly_build_16_2014-10-14_14-56-19

              (it was build 57 before a reflash)

               

              I followed the same exact steps you did

               

              I got it from the intel download page I was directed to in the getting started video.

               

              could an update be my issue?

               

              * I had the option of 8-63 characters before, but it would completely stop at "initiating connection please wait"

              * it only worked when I changed my wifi password to 5 characters

              • 4. Re: Edison WiFi setup - password must be either 5 or 13 characters
                TrentA

                I just started playing with Edison this weekend and had to work through this exact issue myself. You have to modify /usr/bin/configure_edison if you're using WEP because as it states in the error message, it wants exactly 5 or 13 characters whereas I'm using 26 characters. Following Karsten C.'s example at https://software.intel.com/en-us/blogs/2014/11/18/intel-edison-troubleshooting-and-faq, I hacked the file which worked. Here is a diff of my changes:

                 

                root@edison:/usr/bin# diff configure_edison.orig configure_edison

                --- configure_edison.orig

                +++ configure_edison

                @@ -60,6 +60,15 @@

                   wep_key0="%s"

                }

                '''  

                +  WEP_26HEX =  '''

                +network={

                +  ssid="%s"

                +  %s

                +  key_mgmt=NONE

                +  group=WEP104 WEP40

                +  wep_key0=%s

                +}

                +'''

                   WPAPSK =  '''

                network={

                   ssid="%s"

                @@ -359,10 +368,13 @@

                       return wpa_templates.OPEN % (ssid, "scan_ssid=1")

                     elif security == 1:

                       password = ''

                -      while len(password) != 5 and len(password) != 13:

                -        print "Password must be either 5 or 13 characters."

                +      while len(password) != 5 and len(password) != 13 and len(password) != 26:

                +        print "Password must be either 5 or 13 ascii characters or 26 hex."

                         password = getNetworkPassword()

                -      return wpa_templates.WEP % (ssid, "scan_ssid=1", password)

                +        if len(password) == 26:

                +          return wpa_templates.WEP_26HEX % (ssid, "scan_ssid=1", password)

                +        else:

                +          return wpa_templates.WEP % (ssid, "scan_ssid=1", password)

                     elif security == 2:

                       password = ''

                       while len(password) < 8 or len(password) > 63:

                @@ -384,10 +396,13 @@

                     return wpa_templates.OPEN % (ssid, "")

                   elif network_map[ssid] == "WEP":

                     password = ''

                -    while len(password) != 5 and len(password) != 13:

                -        print "Password must be either 5 or 13 characters."

                +    while len(password) != 5 and len(password) != 13 and len(password) != 26:

                +        print "Password must be either 5 or 13 ascii characters or 26 hex."

                         password = getNetworkPassword()

                -    return wpa_templates.WEP % (ssid, "", password)

                +        if len(password) == 26:

                +          return wpa_templates.WEP_26HEX % (ssid, "", password)

                +        else:

                +          return wpa_templates.WEP % (ssid, "", password)

                   elif network_map[ssid] == "WPA-PSK":

                     password = ''

                     while len(password) < 8 or len(password) > 63:

                @@ -409,10 +424,13 @@

                     return wpa_templates.OPEN % (ssid, "scan_ssid=1")

                   elif protocol == "WEP":

                     password = changewifi[2]

                -    if len(password) != 5 and len(password) != 13:

                -        print "Password must be either 5 or 13 characters."

                +    if len(password) != 5 and len(password) != 13 and len(password) != 26:

                +        print "Password must be either 5 or 13 ascii characters or 26 hex."

                         return None

                -    return wpa_templates.WEP % (ssid, "scan_ssid=1", password)

                +    if len(password) == 26:

                +      return wpa_templates.WEP_26HEX % (ssid, "scan_ssid=1", password)

                +    else:

                +      return wpa_templates.WEP % (ssid, "scan_ssid=1", password)

                   elif protocol == "WPA-PSK":

                     password = changewifi[2]

                     if len(password) < 8 or len(password) > 63:


                I tried to clean up some extra lines and such when I pasted this so hopefully I didn't screw it up. If this is a confusing, lines preceded with "-" are lines deleted and "+" are lines added. Summary is that I added the definition section for WEP_26HEX at the beginning and then changed all of the "5 or 13 character" references to look for 26 too; if 26 is found, it calls the WEP_26HEX.

                • 5. Re: Edison WiFi setup - password must be either 5 or 13 characters
                  Itstechpro

                  Having the same problem with release 25.5-15.  Was stymied for a bit until I recalled that the Kinoma I was playing with had the same problem until the code was patched.  As everyone probably knows a 5 character WEP key is five alphanumeric characters in the ASCII set.  When my WEP key was generated, I got 10 hex characters which did not map to the ASCII set.  So to satisfy the '5 character' requirement, I had to go back into the access point and change the password to mappable ASCII characters.

                  Not always possible to do that if you don't own the router or access point so a patch to accept both ASCII and hex format keys is much more desirable.

                  JM

                  • 6. Re: Edison WiFi setup - password must be either 5 or 13 characters
                    coloradocarlos

                    You have a WEP key. After entering configure_edison --wifi and watching it fail on an ASCII, entry, edit /etc/wpa_supplicant, take out the quotes around wep_key0 to indicate hex value:

                    network={
                      ssid="my_ssid"
                    
                      key_mgmt=NONE
                      group=WEP104 WEP40
                      wep_key0=00112233445566778899AABBCC
                    }
                    

                    where the WEP key 00112233445566778899AABBCC is your 26 hex digits for 104-bit encryption.

                     

                    Then:

                    systemctl restart wpa_supplicant
                    

                    Carlos