1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Need EasyTether and Samsung Phone for Mobile Internet

Discussion in 'Peripheral Hardware' started by Gaming4JC, Mar 9, 2011.

  1. Gaming4JC

    Gaming4JC New Member

    Messages:
    3
    Likes Received:
    0
    Hello All,
    I'm having a lot of trouble getting a Samsung cell and EasyTether to work on FreeBSD. It works fine on linux, but the little daemon just isn't working. x(

    Also due to my hardware limitations, that's the only access I have to the internet currently, without a wvdial port which I could use for a serial modem.

    Ok so here's what I've got.
    EasyTether Binary: http://www.mobile-stream.com/easytether/drivers.html
    Code:
    pcbsd# brandelf -t Linux easytether
    pcbsd# ./easytether
    ELF binary type "3" not known.
    ./easytether: Exec format error. Binary file not executable.
    pcbsd# sudo brandelf -t Linux easytether
    pcbsd# ./easytether
    ELF binary type "3" not known.
    ./easytether: Exec format error. Binary file not executable.
    pcbsd# kldstat
    Id Refs Address            Size     Name
     1   85 0xffffffff80100000 df7168   kernel
     2    1 0xffffffff80ef8000 5f38     nullfs.ko
     3    1 0xffffffff80efe000 1ad510   zfs.ko
     4    2 0xffffffff810ac000 3990     opensolaris.ko
     5    1 0xffffffff810b0000 1cbd0    geom_eli.ko
     6    2 0xffffffff810cd000 2ab80    crypto.ko
     7    3 0xffffffff810f8000 dc40     zlib.ko
     8    1 0xffffffff81106000 1e5f8    geom_journal.ko
     9    1 0xffffffff81125000 20fe0    geom_mirror.ko
    10    1 0xffffffff81146000 3158     geom_uzip.ko
    11    1 0xffffffff8114a000 e730     if_ipw.ko
    12    1 0xffffffff81159000 13578    if_iwi.ko
    13    1 0xffffffff8116d000 1ebf0    if_iwn.ko
    14    1 0xffffffff8118c000 12498    if_wpi.ko
    15    1 0xffffffff82cf7000 ad40     mmc.ko
    16    1 0xffffffff82d02000 4010     mmcsd.ko
    17    1 0xffffffff82d07000 ff88     ahci.ko
    18    1 0xffffffff82d17000 a520     siis.ko
    19    1 0xffffffff82d22000 8088     sdhci.ko
    20    1 0xffffffff82d2b000 51e0     scd.ko
    21    1 0xffffffff82d31000 65d0     mcd.ko
    22    1 0xffffffff82e22000 14156    snd_hda.ko
    23    1 0xffffffff82e37000 3901a    sound.ko
    24    1 0xffffffff82e71000 1ca5e    linux.ko
    25    1 0xffffffff82e8e000 224      msdosfs_iconv.ko
    26    2 0xffffffff82e8f000 21ce     libiconv.ko
    27    1 0xffffffff82e92000 220      cd9660_iconv.ko
    pcbsd# readelf -e easytether
    ELF Header:
      Magic:   7f 45 4c 46 02 01 01 03 00 00 00 00 00 00 00 00 
      Class:                             ELF64
      Data:                              2's complement, little endian
      Version:                           1 (current)
      OS/ABI:                            UNIX - Linux
      ABI Version:                       0
      Type:                              EXEC (Executable file)
      Machine:                           Advanced Micro Devices X86-64
      Version:                           0x1
      Entry point address:               0x401580
      Start of program headers:          64 (bytes into file)
      Start of section headers:          21120 (bytes into file)
      Flags:                             0x0
      Size of this header:               64 (bytes)
      Size of program headers:           56 (bytes)
      Number of program headers:         9
      Size of section headers:           64 (bytes)
      Number of section headers:         29
      Section header string table index: 28
    
    Section Headers:
      [Nr] Name              Type             Address           Offset
           Size              EntSize          Flags  Link  Info  Align
      [ 0]                   NULL             0000000000000000  00000000
           0000000000000000  0000000000000000           0     0     0
      [ 1] .interp           PROGBITS         0000000000400238  00000238
           000000000000001c  0000000000000000   A       0     0     1
      [ 2] .note.ABI-tag     NOTE             0000000000400254  00000254
           0000000000000020  0000000000000000   A       0     0     4
      [ 3] .note.gnu.build-i NOTE             0000000000400274  00000274
           0000000000000024  0000000000000000   A       0     0     4
      [ 4] .hash             HASH             0000000000400298  00000298
           0000000000000190  0000000000000004   A       6     0     8
      [ 5] .gnu.hash         LOOS+ffffff6     0000000000400428  00000428
           0000000000000068  0000000000000000   A       6     0     8
      [ 6] .dynsym           DYNSYM           0000000000400490  00000490
           00000000000005b8  0000000000000018   A       7     1     8
      [ 7] .dynstr           STRTAB           0000000000400a48  00000a48
           000000000000035f  0000000000000000   A       0     0     1
      [ 8] .gnu.version      VERSYM           0000000000400da8  00000da8
           000000000000007a  0000000000000002   A       6     0     2
      [ 9] .gnu.version_r    VERNEED          0000000000400e28  00000e28
           0000000000000040  0000000000000000   A       7     1     8
      [10] .rela.dyn         RELA             0000000000400e68  00000e68
           0000000000000030  0000000000000018   A       6     0     8
      [11] .rela.plt         RELA             0000000000400e98  00000e98
           0000000000000408  0000000000000018   A       6     d     8
      [12] .init             PROGBITS         00000000004012a0  000012a0
           0000000000000018  0000000000000000  AX       0     0     4
      [13] .plt              PROGBITS         00000000004012b8  000012b8
           00000000000002c0  0000000000000010  AX       0     0     4
      [14] .text             PROGBITS         0000000000401580  00001580
           00000000000029f8  0000000000000000  AX       0     0     16
      [15] .fini             PROGBITS         0000000000403f78  00003f78
           000000000000000e  0000000000000000  AX       0     0     4
      [16] .rodata           PROGBITS         0000000000403fa0  00003fa0
           0000000000000396  0000000000000000   A       0     0     32
      [17] .eh_frame_hdr     PROGBITS         0000000000404338  00004338
           0000000000000094  0000000000000000   A       0     0     4
      [18] .eh_frame         PROGBITS         00000000004043d0  000043d0
           0000000000000294  0000000000000000   A       0     0     8
      [19] .ctors            PROGBITS         0000000000604e08  00004e08
           0000000000000010  0000000000000000  WA       0     0     8
      [20] .dtors            PROGBITS         0000000000604e18  00004e18
           0000000000000010  0000000000000000  WA       0     0     8
      [21] .jcr              PROGBITS         0000000000604e28  00004e28
           0000000000000008  0000000000000000  WA       0     0     8
      [22] .dynamic          DYNAMIC          0000000000604e30  00004e30
           00000000000001b0  0000000000000010  WA       7     0     8
      [23] .got              PROGBITS         0000000000604fe0  00004fe0
           0000000000000008  0000000000000008  WA       0     0     8
      [24] .got.plt          PROGBITS         0000000000604fe8  00004fe8
           0000000000000170  0000000000000008  WA       0     0     8
      [25] .data             PROGBITS         0000000000605158  00005158
           0000000000000010  0000000000000000  WA       0     0     8
      [26] .bss              NOBITS           0000000000605168  00005168
           0000000000000020  0000000000000000  WA       0     0     8
      [27] .comment          PROGBITS         0000000000000000  00005168
           0000000000000023  0000000000000001  MS       0     0     1
      [28] .shstrtab         STRTAB           0000000000000000  0000518b
           00000000000000ee  0000000000000000           0     0     1
    Key to Flags:
      W (write), A (alloc), X (execute), M (merge), S (strings)
      I (info), L (link order), G (group), x (unknown)
      O (extra OS processing required) o (OS specific), p (processor specific)
    
    Program Headers:
      Type           Offset             VirtAddr           PhysAddr
                     FileSiz            MemSiz              Flags  Align
      PHDR           0x0000000000000040 0x0000000000400040 0x0000000000400040
                     0x00000000000001f8 0x00000000000001f8  R E    8
      INTERP         0x0000000000000238 0x0000000000400238 0x0000000000400238
                     0x000000000000001c 0x000000000000001c  R      1
          [Requesting program interpreter: /lib64/ld-linux-x86-64.so.2]
      LOAD           0x0000000000000000 0x0000000000400000 0x0000000000400000
                     0x0000000000004664 0x0000000000004664  R E    200000
      LOAD           0x0000000000004e08 0x0000000000604e08 0x0000000000604e08
                     0x0000000000000360 0x0000000000000380  RW     200000
      DYNAMIC        0x0000000000004e30 0x0000000000604e30 0x0000000000604e30
                     0x00000000000001b0 0x00000000000001b0  RW     8
      NOTE           0x0000000000000254 0x0000000000400254 0x0000000000400254
                     0x0000000000000044 0x0000000000000044  R      4
      GNU_EH_FRAME   0x0000000000004338 0x0000000000404338 0x0000000000404338
                     0x0000000000000094 0x0000000000000094  R      4
      STACK          0x0000000000000000 0x0000000000000000 0x0000000000000000
                     0x0000000000000000 0x0000000000000000  RW     8
      LOOS+474e552   0x0000000000004e08 0x0000000000604e08 0x0000000000604e08
                     0x00000000000001f8 0x00000000000001f8  R      1
    
     Section to Segment mapping:
      Segment Sections...
       00     
       01     .interp 
       02     .interp .note.ABI-tag .note.gnu.build-id .hash .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r 
              .rela.dyn .rela.plt .init .plt .text .fini .rodata .eh_frame_hdr .eh_frame 
       03     .ctors .dtors .jcr .dynamic .got .got.plt .data .bss 
       04     .dynamic 
       05     .note.ABI-tag .note.gnu.build-id 
       06     .eh_frame_hdr 
       07     
       08     .ctors .dtors .jcr .dynamic .got 
    pcbsd# 
    
    And information specific on the hardware:
    Ideas on getting this to work on BSD? Or should I just submit a bug report? And what info to include on it? :\

    Thanks. :)
     
  2. SirDice

    SirDice Moderator Staff Member Moderator

    Messages:
    17,425
    Likes Received:
    14
    You're trying to use a 64 bit linux executable. The linux ABI layer currently only supports i386 (32 bit).
     
  3. aragon

    aragon New Member

    Messages:
    2,031
    Likes Received:
    0
    What Samsung phone do you have? If it's an Android device, upgrade to Froyo - FreeBSD supports USB tethering natively with Froyo.
     
  4. Gaming4JC

    Gaming4JC New Member

    Messages:
    3
    Likes Received:
    0
    @SirDice: Hmm, maybe I'll look around for the i386 version then and see if I can't get it to boot. I still have my doubts... :(

    @aragon: I have an android. 2.1- update 1. My phone doesn't have an "official" update to 2.2 update, though I might be able to upgrade it through other means as long as I don't brick it.

    Tell me more about the native tether, do I just plug it in with USB Debug mode on and FreeBSD magically does it? :e
     
  5. aragon

    aragon New Member

    Messages:
    2,031
    Likes Received:
    0
    No need for USB debug mode. Just set your phone into "Kies" mode and plug it in with umodem(4) loaded. FreeBSD will detect it as a CDC serial device which you configure in ppp(8).
     
  6. Gaming4JC

    Gaming4JC New Member

    Messages:
    3
    Likes Received:
    0
    Okay, thanks. :)

    So you don't think there will be any problems with the phone being detected as a modem? Some one on ##freebsd had mentioned if it was ugen 7 (it's ugen7.2) it may not function properly if at all due to lack of driver support. Which would probably mean umodem won't dectect it.

    And last but not least, doesn't ppp usually dial a phone? Technically I can't dial 3G, so I assume you just run "ppp -auto".

    Sorry for any newbishness, not used to BSD yet. :stud
     
  7. SirDice

    SirDice Moderator Staff Member Moderator

    Messages:
    17,425
    Likes Received:
    14
    Technically you are actually using it as a modem (it will respond to the traditional AT commands). Normally you need to "dial" a special number, usually *99#. Some phones also require an initialisation command to switch it to 3G before dialing. Most of the time this is something like
    Code:
    AT+CGDCONT=1,"IP","internet"
    The "internet" in that line refers to the APN profile that's used to connect the phone to the internet.
     
  8. aragon

    aragon New Member

    Messages:
    2,031
    Likes Received:
    0
    Upgrading to Froyo changes the way the phone identifies to the USB host in such a way that umodem will detect it. If you have a Galaxy S like me, it will work. I can only assume other Samsung Android phones will be the same.

    For the rest, what SirDice said.