Posts Tagged “hsdpa”

A bit late, but here is the first beta of the Option HSDPA driver for FreeBSD 8. It’s more or less completely rewritten and there are some visible changes to the interface.

Because ucom(4) has matured it can now be utilized instead of mucking around directly with the TTY layer. This results in that the device names in /dev has changed and are now longer called /dev/HSO*, instead they follow the standard ucom names of cuaU*.

The new USB stack attach USB devices per USB interface instead of per USB device, so it’s possible to get both a cuaU0 and cuaU1 device (instead of just cuaU0.0 and cuaU0.1). The number of found serial ports can be read through sysctl.

The packet interface is now exposed as a raw interface instead of emulating an Ethernet device (I seriously wonder why I did that…).

The driver switches automatically from install-cd mode to modem mode, there is no longer any need for manual switching through devd. Please remove the option-icon.conf file from your /usr/local/etc/devd directory.
This can be disabled by setting hw.usb.uhso.auto_switch to 0

And last, I’ve renamed the driver to uhso to reflect its USB nature.

Download: uhso-20091122.tar.gz – Add support for iCON 505, fix probing of devices with dynamic number of interfaces, add new custom attach messages based on the port type.

Download: uhsoctl-beta-20090820.tar.gz – uhsoctl connection utility, similar to old hsoctl

Download: uhso-beta-20090812.tar.gz – Minor bug fix and reworked sysctl nodes.

Download: uhso-beta-20090723.tar.gz – No longer PTP interface (completely useless), fixed (hopefully) CDC notification on modem port, added several new device IDs. Thanks to Iain Hibbert for this!

Download: uhso-beta-20090722.tar.gz – Bug fixes that should improve RX speed.

Download: uhso-beta-20090720.tar.gz

If you own an Option device, please leave a comment (or send a mail) with its full name and USB device ID.

I’m particularly interested in the following devices iCON 031, iCON 210, iCON 315, iCON 322, iCON 401, iCON 431, iCON 451, iCON 452, iCON 505.

If you’re running FreeBSD 8 and own an Option device, please mail me the output of

usbconfig -u X -a Y dump_device_desc
usbconfig -u X -a Y dump_all_config_desc

where X and Y (5 and 2 below) can be obtained through usbconfig

# usbconfig
ugen5.2: <Globetrotter HSDPA Modem Option N.V.> at usbus5, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON

This driver has been tested with a Globesurfer iCON 7.2, iCON 255, iCON 505

Quick setup for manual connection
uhsoctl works as before!

Look up the serial ports

# sysctl dev.uhso
dev.uhso.0.netif: uhso0
dev.uhso.0.type: Network/Serial
dev.uhso.0.ports: 2
dev.uhso.0.port.control.tty: cuaU0.0
dev.uhso.0.port.control.desc: Control
dev.uhso.0.port.application.tty: cuaU0.1
dev.uhso.0.port.application.desc: Application
dev.uhso.1.type: Serial
dev.uhso.1.ports: 1
dev.uhso.1.port.diagnostic.tty: cuaU1
dev.uhso.1.port.diagnostic.desc: Diagnostic

Open /dev/cuaU0.0 in a terminal application, for example minicom. Issue the following commands to establish a connection.

AT+CPIN="1234" # Your PIN


_OWANDATA: 1,,,,,,, 72000

If you haven’t configured a PDP context with your providers APN, please see the hso page.

Configure the interface and set a default route

# ifconfig uhso0
# route add default -interface uhso0

Comments 15 Comments »

New release of hso(4), FreeBSD driver for Option iCON branded 3G/HSDPA devices.

Changes to hso(4)

  • Support for the new TTY layer, driver now works with 7.0 upto todays 8.0-CURRENT.
  • Device IDs for Option GlobeTrotter HSUPA and Option GMT382 added.
  • Minor performance and stability issues have been addressed.

Changes to hsoctl(1)

  • hsoctl now forks into background upon a successful connection, the old behvaior can be obtained with -n flag. Disconnection is possible by executing hsoctl -d hso0.  While running in background, important information is logged to syslog.  Complete daemonization is also possible with the -b flag.
  • Use of AT+CGREG in addition to AT+CREG to detect network registration (for service plans where voice calls are disabled).
  • resolv.conf handling have been improved, only nameserver entries are changed, other content is left intact. A bug that sometimes caused garbled data to be prepended to resolv.conf have also been addressed.  The resolv.conf path can be altered with the -r flag, disable resolv.conf with -r /dev/null.
  • hsoctl does now gracefully terminate upon unexpected device removal.
  • Default route installation have been improved.

The code can be obtained from the hso page, the update should hit the ports tree soon (comms/hso-kmod).

Speed test from a rural location. Values are in bits/s, so that’s almost 300 kB/s downstream and around 40 kB/s upstream. Hopefully downstream is slightly better from a more urban location.

hso(4) speedtest

hso(4) speedtest

Comments 2 Comments »

I’ve published the first public beta of my FreeBSD driver for Option HSDPA modems. The driver is still beta but have been successfully tested (and used) with a Option GlobeSurfer iCON 7.2 S device (using a Turbo 3G account from Tre/Hi3G Access Sweden).

The driver is available for download together with instructions at the hso page. Please report successes and failures.

Comments 10 Comments »

I’ve been hacking on a driver for Option GlobeSurfer iCON 7.2 S HSDPA/3G USB cards (and more or less all newer Option cards) for a few days now and I just reached a major milestone. A successful connection!

The driver is called hso for now (same name as the linux driver). The card is not a “normal” 3G-modem in the sense that it’s not simply a serial-over-USB card. Instead it has several serial channels that accept the normal AT interface (signal strength, SMS, etc) and in addition to that a IP packet interface to which one reads and writes raw IP packets. The card is exposed through a simulated Ethernet device. Read the rest of this entry »

Comments 1 Comment »