Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    ASIX AX88179 USB to GigE

    Scheduled Pinned Locked Moved Hardware
    52 Posts 9 Posters 29.5k Views
    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.
    • stephenw10S
      stephenw10 Netgate Administrator
      last edited by

      FreeBSD 8.3 is the base for 2.1 and now 2.1.1.

      Steve

      1 Reply Last reply Reply Quote 0
      • M
        mcampbell
        last edited by

        @stephenw10:

        FreeBSD 8.3 is the base for 2.1 and now 2.1.1.

        Steve

        Actually, I was referring to FreeBSD 10.  I realize we haven't even made the leap to FreeBSD 9 yet, so we may still be talking years away(?), I was just curious if there was an expectation as to what future pfsense version that might line up with?

        1 Reply Last reply Reply Quote 0
        • M
          mcampbell
          last edited by

          In the meantime, I will definitely try out the driver you posted, Bryan.  And I'll report back the results of my testing.

          1 Reply Last reply Reply Quote 0
          • stephenw10S
            stephenw10 Netgate Administrator
            last edited by

            Ah sorry. 2.2 will be built on FreeBSD 10. Some very early pre-alpha builds have come out of the build servers so wer're hopefully not talking years. Not ready for public consumption yet though.

            Steve

            1 Reply Last reply Reply Quote 0
            • M
              mcampbell
              last edited by

              Interesting, I would have thought that a leap from FreeBSD 8.3 to 10/10.1 would have warranted a major (not just a minor) version change on the pfsense side as well.  But that gives me hope, since now I know I don't have to wait two full versions away, but just one!

              1 Reply Last reply Reply Quote 0
              • B
                bryan.paradis
                last edited by

                @mcampbell:

                Interesting, I would have thought that a leap from FreeBSD 8.3 to 10/10.1 would have warranted a major (not just a minor) version change on the pfsense side as well.  But that gives me hope, since now I know I don't have to wait two full versions away, but just one!

                backporting drivers is fairly common. Note that the driver wont be in freebsd release until 10.1 not 10.

                1 Reply Last reply Reply Quote 0
                • stephenw10S
                  stephenw10 Netgate Administrator
                  last edited by

                  @mcampbell:

                  I would have thought that a leap from FreeBSD 8.3 to 10/10.1 would have warranted a major (not just a minor) version change

                  Yes I see what you mean. However I would argue that the changes that went into 2.1 were much more extensive from a pfSense point of view than even though the base system only incremented from FreeBSD 8.1 to 8.3. The 2.2 release will not have many new features as I understand it, the devs are concentrating purely on bringing the base system up to FreeBSD 10 so from that point of view pfSense will not have changed dramatically. It's being built as 2.2 currently but who knows the devs might decide it warrants a major change and go straight to 3.0. Just have to wait and see.  ;)

                  Steve

                  1 Reply Last reply Reply Quote 0
                  • M
                    mcampbell
                    last edited by

                    @bryan.paradis:

                    backporting drivers is fairly common. Note that the driver wont be in freebsd release until 10.1 not 10.

                    Duly noted!  But I would suppose that it's generally easier to backport within the same major version, as opposed to jumping between two major versions.

                    @stephenw10:

                    Yes I see what you mean. However I would argue that the changes that went into 2.1 were much more extensive from a pfSense point of view than even though the base system only incremented from FreeBSD 8.1 to 8.3. The 2.2 release will not have many new features as I understand it, the devs are concentrating purely on bringing the base system up to FreeBSD 10 so from that point of view pfSense will not have changed dramatically. It's being built as 2.2 currently but who knows the devs might decide it warrants a major change and go straight to 3.0. Just have to wait and see.  ;)

                    Steve

                    Fair enough.  It's a worthy cause, as I'm sure that if nothing else, there's a lot of security updates between 8.3 & 10.  Perhaps we'll see a goodly amount of bug fixes as well.

                    1 Reply Last reply Reply Quote 0
                    • H
                      Huxy
                      last edited by

                      Hiya,

                      I attempted to load the axge module provided, but get an exec format error.
                      I'm using release 2.1 i386. Have I missed something?

                      [2.1-RELEASE][root@pfSense.localdomain]/boot/modules(38): ls -la
                      total 125
                      drwxr-xr-x  2 root  wheel    512 Jan 28 19:09 .
                      drwxr-xr-x  7 root  wheel    512 Sep 11 23:51 ..
                      -r-xr-xr-x  1 root  wheel  103996 Sep 11 23:51 bwi_v3_ucode.ko
                      -r-xr-xr-x  1 root  wheel  15890 Jan 28 19:08 if_axge.ko

                      [2.1-RELEASE][root@pfSense.localdomain]/boot/modules(39): usbconfig
                      ugen0.1: <uhci root="" hub="" intel="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE
                      ugen1.1: <ehci root="" hub="" intel="">at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE
                      ugen1.2: <product 0x8000="" vendor="" 0x8087="">at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE
                      ugen1.3: <ax88179 asix="" elec.="" corp.="">at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON

                      [2.1-RELEASE][root@pfSense.localdomain]/boot/modules(40): kldload if_axge.ko
                      kldload: can't load if_axge.ko: Exec format error

                      Cheers</ax88179></product></ehci></uhci>

                      http://blog.codeape.co.uk

                      1 Reply Last reply Reply Quote 0
                      • B
                        bryan.paradis
                        last edited by

                        @Huxy:

                        Hiya,

                        I attempted to load the axge module provided, but get an exec format error.
                        I'm using release 2.1 i386. Have I missed something?

                        [2.1-RELEASE][root@pfSense.localdomain]/boot/modules(38): ls -la
                        total 125
                        drwxr-xr-x  2 root  wheel    512 Jan 28 19:09 .
                        drwxr-xr-x  7 root  wheel    512 Sep 11 23:51 ..
                        -r-xr-xr-x  1 root  wheel  103996 Sep 11 23:51 bwi_v3_ucode.ko
                        -r-xr-xr-x  1 root  wheel  15890 Jan 28 19:08 if_axge.ko

                        [2.1-RELEASE][root@pfSense.localdomain]/boot/modules(39): usbconfig
                        ugen0.1: <uhci root="" hub="" intel="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE
                        ugen1.1: <ehci root="" hub="" intel="">at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE
                        ugen1.2: <product 0x8000="" vendor="" 0x8087="">at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE
                        ugen1.3: <ax88179 asix="" elec.="" corp.="">at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON

                        [2.1-RELEASE][root@pfSense.localdomain]/boot/modules(40): kldload if_axge.ko
                        kldload: can't load if_axge.ko: Exec format error

                        Cheers</ax88179></product></ehci></uhci>

                        Are you running amd64?

                        @bryan.paradis:

                        i386 Untested - Use at your own risk

                        1 Reply Last reply Reply Quote 0
                        • H
                          Huxy
                          last edited by

                          Turns out it was the download link. I manually downloaded and sftp'd the file from windows to the pfsense box and I was able to load the module.

                          However, as soon as I attempt to assign the interface to a role, the machine crashes with reference to the algx module.

                          
                          Fatal trap 12: page fault while in kernel mode
                          cpuid = 0; apic id = 00
                          fault virtual address = 0x8
                          fault code = supervisor read, page not present
                          instruction pointer = 0x20:0xc5091e46
                          stack pointer = 0x28:0xd6775c94
                          frame pointer = 0x28:0xd6775ca0
                          code segment = base 0x0 limit 0xffffff, type 0x1b
                          = DPL 0, pres 1, def 32 1, gran 1
                          processor eflags = interrupt enabled, resume, IOPL = 0
                          current process = 14 (axge0)
                          trap number = 12
                          panic: page fault
                          
                          

                          http://blog.codeape.co.uk

                          1 Reply Last reply Reply Quote 0
                          • B
                            bryan.paradis
                            last edited by

                            @Huxy:

                            Turns out it was the download link. I manually downloaded and sftp'd the file from windows to the pfsense box and I was able to load the module.

                            However, as soon as I attempt to assign the interface to a role, the machine crashes with reference to the algx module.

                            Well that sucks. Can you get the exact error?

                            1 Reply Last reply Reply Quote 0
                            • B
                              bryan.paradis
                              last edited by

                              Ok. Well I am redoing the environment I compiled that in. My new adapter will be here on friday.

                              Cable Matters SuperSpeed USB 3.0 to RJ45 Gigabit Ethernet Adapter

                              1 Reply Last reply Reply Quote 0
                              • H
                                Huxy
                                last edited by

                                Cool. Thanks for the response. I suspect you noticed, but I added the crash error to my previous post.
                                Hopefully, the new build environment will help, as will having the hardware for testing.

                                http://blog.codeape.co.uk

                                1 Reply Last reply Reply Quote 0
                                • B
                                  bryan.paradis
                                  last edited by

                                  @Huxy:

                                  Cool. Thanks for the response. I suspect you noticed, but I added the crash error to my previous post.
                                  Hopefully, the new build environment will help, as will having the hardware for testing.

                                  Thanks for updating that. What exactly did you do to produce the issue. So I can try reproducing.

                                  Also here is the md5 for that module: F313B0FA8A7C38CF1E3A8A4DD39F2C22

                                  1 Reply Last reply Reply Quote 0
                                  • H
                                    Huxy
                                    last edited by

                                    I checked the md5sum and it was fine. Here's the steps I took to cause a crash. 100% reproducible.

                                    *** Welcome to pfSense 2.1-RELEASE-nanobsd (i386) on pfSense ***
                                    
                                     WAN (wan)       -> re0        -> v4/DHCP4: 192.168.1.162/24
                                     LAN (lan)       -> em0        -> v4: 192.168.1.6/24
                                    
                                     0) Logout (SSH only)                  8) Shell
                                     1) Assign Interfaces                  9) pfTop
                                     2) Set interface(s) IP address       10) Filter Logs
                                     3) Reset webConfigurator password    11) Restart webConfigurator
                                     4) Reset to factory defaults         12) pfSense Developer Shell
                                     5) Reboot system                     13) Upgrade from console
                                     6) Halt system                       14) Disable Secure Shell (sshd)
                                     7) Ping host                         15) Restore recent configuration
                                    
                                    Enter an option: 1
                                    
                                    Valid interfaces are:
                                    
                                    usbus00   (up)
                                    em0   00:16:3e:9c:ae:88   (up) Intel(R) PRO/1000 Legacy Network Connection 1.0.4
                                    re0   00:16:3e:39:ad:93   (up) RealTek 8139C+ 10/100BaseTX
                                    usbus10   (up)
                                    ue0   00:24:9b:09:84:0f (down) USB Ethernet
                                    
                                    Do you want to set up VLANs first?
                                    
                                    If you are not going to use VLANs, or only for optional interfaces, you should
                                    say no here and use the webConfigurator to configure VLANs later, if required.
                                    
                                    Do you want to set up VLANs now [y|n]? n
                                    
                                    *NOTE*  pfSense requires *AT LEAST* 1 assigned interface(s) to function.
                                            If you do not have *AT LEAST* 1 interfaces you CANNOT continue.
                                    
                                            If you do not have at least 1 *REAL* network interface card(s)
                                            or one interface with multiple VLANs then pfSense
                                            *WILL NOT* function correctly.
                                    
                                    If you do not know the names of your interfaces, you may choose to use
                                    auto-detection. In that case, disconnect all interfaces now before
                                    hitting 'a' to initiate auto detection.
                                    
                                    Enter the WAN interface name or 'a' for auto-detection: ue0
                                    
                                    Enter the LAN interface name or 'a' for auto-detection
                                    NOTE: this enables full Firewalling/NAT mode.
                                    (or nothing if finished): em0
                                    
                                    Enter the Optional 1 interface name or 'a' for auto-detection
                                    (or nothing if finished):
                                    
                                    The interfaces will be assigned as follows:
                                    
                                    WAN  -> ue0
                                    LAN  -> em0
                                    
                                    Do you want to proceed [y|n]?y
                                    
                                    Writing configuration...done.
                                    One moment while we reload the settings... done!
                                    
                                    

                                    http://blog.codeape.co.uk

                                    1 Reply Last reply Reply Quote 0
                                    • B
                                      bryan.paradis
                                      last edited by

                                      @Huxy:

                                      I checked the md5sum and it was fine. Here's the steps I took to cause a crash. 100% reproducible.

                                      *** Welcome to pfSense 2.1-RELEASE-nanobsd (i386) on pfSense ***
                                      
                                       WAN (wan)       -> re0        -> v4/DHCP4: 192.168.1.162/24
                                       LAN (lan)       -> em0        -> v4: 192.168.1.6/24
                                      
                                       0) Logout (SSH only)                  8) Shell
                                       1) Assign Interfaces                  9) pfTop
                                       2) Set interface(s) IP address       10) Filter Logs
                                       3) Reset webConfigurator password    11) Restart webConfigurator
                                       4) Reset to factory defaults         12) pfSense Developer Shell
                                       5) Reboot system                     13) Upgrade from console
                                       6) Halt system                       14) Disable Secure Shell (sshd)
                                       7) Ping host                         15) Restore recent configuration
                                      
                                      Enter an option: 1
                                      
                                      Valid interfaces are:
                                      
                                      usbus00   (up)
                                      em0   00:16:3e:9c:ae:88   (up) Intel(R) PRO/1000 Legacy Network Connection 1.0.4
                                      re0   00:16:3e:39:ad:93   (up) RealTek 8139C+ 10/100BaseTX
                                      usbus10   (up)
                                      ue0   00:24:9b:09:84:0f (down) USB Ethernet
                                      
                                      Do you want to set up VLANs first?
                                      
                                      If you are not going to use VLANs, or only for optional interfaces, you should
                                      say no here and use the webConfigurator to configure VLANs later, if required.
                                      
                                      Do you want to set up VLANs now [y|n]? n
                                      
                                      *NOTE*  pfSense requires *AT LEAST* 1 assigned interface(s) to function.
                                              If you do not have *AT LEAST* 1 interfaces you CANNOT continue.
                                      
                                              If you do not have at least 1 *REAL* network interface card(s)
                                              or one interface with multiple VLANs then pfSense
                                              *WILL NOT* function correctly.
                                      
                                      If you do not know the names of your interfaces, you may choose to use
                                      auto-detection. In that case, disconnect all interfaces now before
                                      hitting 'a' to initiate auto detection.
                                      
                                      Enter the WAN interface name or 'a' for auto-detection: ue0
                                      
                                      Enter the LAN interface name or 'a' for auto-detection
                                      NOTE: this enables full Firewalling/NAT mode.
                                      (or nothing if finished): em0
                                      
                                      Enter the Optional 1 interface name or 'a' for auto-detection
                                      (or nothing if finished):
                                      
                                      The interfaces will be assigned as follows:
                                      
                                      WAN  -> ue0
                                      LAN  -> em0
                                      
                                      Do you want to proceed [y|n]?y
                                      
                                      Writing configuration...done.
                                      One moment while we reload the settings... done!
                                      
                                      

                                      Try this one went a different route with it this time:

                                      rename to if_axge.ko and check md5 afterwards.

                                      if_axge.ko
                                      md5: 69F1819099F9183865E5895D97A6E9EE
                                      

                                      Also if it fails can you please setup the interface manually on the shell one step at a time. Maybe your system log showing the last error happening would be helpful as well. I don't know what part of the assign script actually triggered the problem. I figure though it must have been in the axge_ifmedia_upd() function it was calling a updated function from an updated file. This time instead of bringing in the update I switched it back to calling the original function.

                                      if_axge.txt

                                      1 Reply Last reply Reply Quote 0
                                      • H
                                        Huxy
                                        last edited by

                                        Boom! Great work!

                                        This new version seems to work fine. I've now got a working connection.
                                        I've yet to do thorough testing but it all looks good! Here's the ifconfig which I ran using a SSH login shell.

                                        [2.1-RELEASE][root@pfSense.localdomain]/root(2): ifconfig ue0
                                        ue0: flags=8843 <up,broadcast,running,simplex,multicast>metric 0 mtu 1500
                                                options=8000b <rxcsum,txcsum,vlan_mtu,linkstate>ether 00:24:9b:09:84:0f
                                                inet6 fe80::224:9bff:fe09:840f%ue0 prefixlen 64 scopeid 0x9
                                                inet 192.168.1.6 netmask 0xffffff00 broadcast 192.168.1.255
                                                nd6 options=1 <performnud>media: Ethernet autoselect (1000baseT <full-duplex,master>)
                                                status: active
                                        [2.1-RELEASE][root@pfSense.localdomain]/root(3):</full-duplex,master></performnud></rxcsum,txcsum,vlan_mtu,linkstate></up,broadcast,running,simplex,multicast> 
                                        

                                        http://blog.codeape.co.uk

                                        1 Reply Last reply Reply Quote 0
                                        • B
                                          bryan.paradis
                                          last edited by

                                          @Huxy:

                                          Boom! Great work!

                                          This new version seems to work fine. I've now got a working connection.
                                          I've yet to do thorough testing but it all looks good! Here's the ifconfig which I ran using a SSH login shell.

                                          [2.1-RELEASE][root@pfSense.localdomain]/root(2): ifconfig ue0
                                          ue0: flags=8843 <up,broadcast,running,simplex,multicast>metric 0 mtu 1500
                                                  options=8000b <rxcsum,txcsum,vlan_mtu,linkstate>ether 00:24:9b:09:84:0f
                                                  inet6 fe80::224:9bff:fe09:840f%ue0 prefixlen 64 scopeid 0x9
                                                  inet 192.168.1.6 netmask 0xffffff00 broadcast 192.168.1.255
                                                  nd6 options=1 <performnud>media: Ethernet autoselect (1000baseT <full-duplex,master>)
                                                  status: active
                                          [2.1-RELEASE][root@pfSense.localdomain]/root(3):</full-duplex,master></performnud></rxcsum,txcsum,vlan_mtu,linkstate></up,broadcast,running,simplex,multicast> 
                                          

                                          Haha hardcore. First Freebsd thing I ever messed with. Maybe I didn't even need to buy one for $20 hahahaha. Can you test the throughput? There may be another change to get it to do usb 3.0 speeds. Are you on usb 2.0 or 3.0?

                                          What is your output of usbconfig

                                          1 Reply Last reply Reply Quote 0
                                          • stephenw10S
                                            stephenw10 Netgate Administrator
                                            last edited by

                                            Nice one!  ;D
                                            There's no USB3 support at all in FreeBSD 8.3 as far as I know so that getting that working would be significantly more complex.

                                            Steve

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.