AW: [Oberon] How is ETHO with USB?

Stauber Sven Philipp sven.stauber at
Mon Aug 23 11:32:37 MEST 2010

This 2252+ seems to be a beast ;-)

> Principally a clever idea, but this approach is highly OS dependent. 
> Seems to only work for Windows now.
> With some USB trickery (USB_modeswitch) this can be fixed. 
> But this is not (yet??) implemented in NO/A2.

Not really OS dependent. Just requires a device driver that is aware of this feature... Any OS with a USB mass storage class driver will see the mass storage device (A2 should, too) - well, not all will start the autorun automatically and also, the windows driver found on the "mass storage device" won't help non-MS-OS's  ;-)
Note here that USB stack locates device drivers in a specified order, starting from device-specific drivers (vendor/product ID) going to generic drivers (class/subclass/protocol). If the vendor's driver is installed, it therefore will be loaded and bound to the device and the USB stack does not further look for other drivers... Although this is a very nice feature of USB, it seems to be possible to abuse it...

If you had a specification of the device, "mode-switching" wouldn't be a problem, but without... I wouldn't be patient enough to reverse-engineer such "features".


-----Ursprüngliche Nachricht-----
Von: oberon-bounces at [mailto:oberon-bounces at] Im Auftrag von Chris Glur
Gesendet: Samstag, 21. August 2010 02:00
An: oberon
Cc: crglur at
Betreff: [Oberon] Re. (2) How is ETHO with USB?

Jörg wrote:
> Huawei uses a kind of flip-flop device: First time, the USB device 
> identifies itself as a CD-ROM (see Interfaceclass in your trace, SCSI 
> mass storage), automagically installs its modem driver from it and 
> that driver changes the USB type to modem.

> See detailed description here:

Very interesting, but pity that the Huawei 2252+ is not mentioned.
I wasted my time investigating a friend's Huawei 2252, which had a USB at the PC side and a RS232 at the device side of the cable.
After I bought the 2252+ I discovered that it had a usb connector on the device and different software requirements. The device's plastic cover has a press-out for a serial DB9 connector, and I'm wondering if the PCboard could take a DB9 connector, and run with the old-tested software, instead of buying and using WinXP.

> Principally a clever idea, but this approach is highly OS dependent. 
> Seems to only work for Windows now. 
> With some USB trickery (USB_modeswitch) this can be fixed. 
> But this is not (yet??) implemented in NO/A2.


== Chris Glur.

PS. lets analyse this:
] Several new USB devices...have their MS Windows drivers ] onboard; when plugged in for the first time they act like a ] flash storage and start installing the driver from there.
] After that (and on every consecutive plugging) this driver ] switches the mode internally, the storage device vanishes ] (in most cases), and a new device (like a USB modem) ] shows up. 
Does "first time" mean:
1. that PC saw 'such a device',
2. that PC saw THAT unique device,
3. that device saw a PC ??

Presumably the 'normal PC action' of probing the USB ports are not over written, so the initial action, for both "first time" and subsequent connections, comes from the PC. So:
1. PC says 'Identify yourself';
2. device identifies itself
3. PC can confirm that it already has the driver loaded.

But if the driver is NOT loaded, the device must pretend to be a CDROM..
? So how can the device know IF the PC has got the driver ?

The device could always ID as a CDROM and thus load & run a utility which does:
1. have a look inside the PC & IF no driver exists THEN  load it from the fake-CDROM  ELSE talk-back to the device telling it to switch modes
   & use the existing driver.

In principle, I don't see linux allowing this.
Have these newer M$-WINs got a root/priveledged mode ?

These types of feedback loops can have unintended consequenses, especially when one of the components is made by other parties.
My gmail often locks up - apparently at randon - because of needing cookies ...etc. and having been designed/tested for the mainstream browser. 
Have you read the JavaScript in many http-pages: they always test what make of browser is 'listening', so as the adjust what they say. What happened to universal standards!

Oberon at mailing list for ETH Oberon and related systems

More information about the Oberon mailing list