Abeo internet radio

Although a full mediaplayer is usefull I also like to have an internet radio device with a display. No expensive Squeezebox, just a little device that can do the job and is customizable. I bought this little device for little money. Never heard of the brand, it is an OEM Danish firm.

The device official name is AB-H2003. In the Netherlands it was sold by Aldi and distributed by Teknihall.

Similar devices are: Hama ir210, Netmus NS120, Hipshing IR608n, HDigit Orbiter, Asus AIR u3445, etc...

At the heart of it all there is the mse005 board with a Agic SOC (NUC930 ArmV5) that does the work. This is developed by Magic Systech Inc.

The inside

The device is linux based with busybox. The audio streams are decoded by mplayer. The GUI is a binary called UIProto.

The user settings and stations are stored in the /flash partition. An USB stick is mounted at /attach/ms0

It has 2 USB ports, one internal used tor the Wifi adapter and one external. It supports DLNA but with large collections on my NAS it makes a mess of folder names. This is a serious bug. I think it has something todo with the Character Set.

Pulling the Firmware

The best thing is that there is a telnet daemon running on it. Gaining access is a breeze with account: root and password

I pulled the firmware from the device with the /usr/read8M binary that writes all the nand/mtd blocks to your attached USB stick.

Firmware Update

The firmware can be updated via MediaU or local USB adapter. MediaU also provides the Radio stream library, weather and stock data.

The firmware update via MediaU goes like this:

My system version shows: BT000D5A-a809-a721-a803-c723

UIProto makes this call to MediaU: http://b1.mediayou.net/cgi-bin/GetSW?PD=%s&MP=%s&DS=%s&UI=%s%s&OSD=%s&SER1=%s&SER2=%s

PD= ProductID (BT000D5A)

MP= mplayer version (a80320100803) (a803) /tmp/mv.dat

DS=

UI= UIProto version

OSD= W950OSD version (a80920100809) (a809) /tmp/W950OSDVer.dat

SER1= 000000445588

SER2= 20100721 ?

http://b1.mediayou.net/cgi-bin/GetSW?PD=BT000D5A > [GetFile]vps.mediayou.net/update/stn-d201_005.dat.gz.upd

That gives for this device only the station update list.

For other similar devices:

http://b1.mediayou.net/cgi-bin/GetSW?PD=HS0015BL > [GetFile]vps.mediayou.net/update/stn-d125_SW75.dat.gz.upd

earlier it gave this :)

[GetFile]download.mediayou.net/mplayer-c619_HS15.gz.upd

[GetFile]download.mediayou.net/UIProto-ba18_kicker.gz.upd

[GetFile]download.mediayou.net/W950OSD-b719_kicker.gz.upd

http://b1.mediayou.net/cgi-bin/GetSW?PD=HS00015A > [GetFile]vps.mediayou.net/update/stn-d201_005.dat.gz.upd

earlier it gave this :)

[GetFile]www.mediayou.net/SWUpdate/mplayer-a612_HS.gz.upd

[GetFile]www.mediayou.net/SWUpdate/UIProto-a612_HS.gz.upd

[GetFile]www.mediayou.net/SWUpdate/W950OSD-a612_HS.gz.upd

The online formware update downloads these [Getfuile]*.gz.upd files. The process is as follows:

  1. files are downloaded in /tmp/*.upd.tmp

  2. then /mplayer/mrun CRC is run to make /tmp/*.gz.aaa files

  3. /tmp/*.gz.aaa files are renamed to /tmp/*.gz then updated by UIProto

    1. type /mplayer/mrun UPDATE or use Software Update on device to complete the process.

If you downloaded the upd file manually you can copy them from an USB stick to /tmp, run /mplayer/mrun CRC, rename them from *.gz.aaa to *.gz and run /mplayer/mrun UPDATE

Files that can be flashed / Software Updated from an USB stick are:

/attach/ms0/UIProto.gz - the GUI

/attach/ms0/mplayer.gz - streaming player

/attach/ms0/stn.dat.gz - internet radio list

/attach/ms0/W950OSD.gz - OSD manager

/attach/ms0/fontv - the font bitmap file

/attach/ms0/info - ???

/attach/ms0/flashbin - 8 Mb flash file, whole firmware

/attach/ms0/logobin - the boot logo

Problems

The main problem with the device was that it didn't respond to the remote after a few days of operation and standby cycles.

Afyter decompiling UIProto I found that the CPU has 3 clock states. The lowest one is 32 Mhz by default. That turned out to be the problem. Probably some device drivers (like ir and wifi) couldn't handle that freq. So I changed it to 64 Mhz in the UIProto binary. It worked.

echo 192 > /sys/devices/platform/nuc930-clk/clock

echo 144 > /sys/devices/platform/nuc930-clk/clock

echo 32 > /sys/devices/platform/nuc930-clk/clock << changed to 64, 32 problems with ir and wifi

Another problem was the dead of the Wifi adapter. I bought a new one for 10 euro that solved the problem. (RTL3070 or RTL2070)

See WifiHifi.nl link below where you can get my modded firmware.

Improvements

One major improvement would be a light webserver that manages the users stream URL's. Now you have to give them in by ir remote or use the MediaU.net portal.

Also the problem with DLNA folder browsing makes that part pretty useless.

Related Links (used web.archive.org):

WifiHifi forum: my firmware

Hama ir210: Source code

The Agic soc manufacturer: Magic Systech Inc.

The Online Music service: MediaU