Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

SMC EZ-Stream Wireless Audio Adapter, 11Mbps (SMCWAA-B)

mipix 18 Lis 2010 13:26 3036 6
  • #1 18 Lis 2010 13:26
    mipix
    Poziom 30  

    SMC EZ-Stream Wireless Audio Adapter, 11Mbps (SMCWAA-B)
    Witam
    Poniżej zamieszczam opis uruchomienia radia internetowego, bez użycia oryginalnego pilota.
    Dodatkowo metoda modyfikacji fabrycznej listy stacji radiowych.

    Producent: SMC
    Nazwa handlowa: EZ-Stream Wireless Audio Adapter, 11Mbps
    Model: SMCWAA-B

    0 6
  • #2 06 Gru 2010 00:12
    mipix
    Poziom 30  

    Po kolei.
    SMCWAA-B jest to radio internetowe z funkcją klienta serwera UPnP. Odtwarza pliki MP3, WMA i strumienie sieciowe zakodowane we wspomnianym formacie.
    Bardzo dobrze działa z serwerem Twonky, który dodatkowo ma funkcję transkodowania strumieni, dzięki czemu można posłuchać stacji radiowych w formacie AAC.
    Producent zadbał o klienta udostępniając mu na okres próbny 60 dni, swoją bazę ponad 1500 stacji radiowych. Z polskich rozgłośni znalazło się tam kilka. Ich wybór, to kwestia indywidualnego gustu muzycznego.
    Przy tej ilości dobrym pomysłem jest zrobienie sobie grupy ulubionych stacji. Jest miejsce na 20 pozycji, oraz dodatkowo 10 pozycji wybieranych bezpośredniego z klawiszy 0...9.
    Niestety wybieramy z listy 1500 wskazanych wcześniej przez producenta. Na domiar złego po 60 dniach zostaje ona zredukowana do 50 pozycji.

    Radio to domyślnie łączy się z siecią WiFi
    SSID: SMC, brak szyfrowania, tryb "B"

    Nie ma możliwości podłączenia się siecią Ethernet.
    Jedynym przyciskiem jest RESET. Cała reszta odbywa się z poziomu pilota.

    Po rozebraniu, jest możliwość podłączenia się przez port konsoli prostym kablem szeregowym na MAX232 (3,3V) RxD, TxD, GND. Parametry transmisji:
    Prędkość: 115200
    Bity danych: 8
    Parzystość: Brak
    Bity stopu: 1
    Sterowanie przepływem: Brak

    Przy rozpracowywaniu urządzenia, przypadkowo uszkodziłem oryginalne oprogramowanie. Na szczęście bootloader nadal pytał o wgranie nowego.
    Z tej strony można pobrać najnowszy firmware: Link do strony produktu, Link do oprogramowania ver.3397

    Poniżej zapis logu startowego

    Code:
    SystemDeviceManager: This device is the new standard default io device
    

    mod: pcCardSlotService

    mod: modBootloaderOS
    BootloaderOS

    mod: modNoBootflagReset
    Using original unserialized printf
    System initialisation done.

    DM1000 Bootloader XF43
    -----------------
    HWID:  00000084, HWVS:  00000003
    BLDS:  00000000 (Rescue: 0, Mem Type: 1)
    ILEN:  00140000, IMAX:  00180000
    FLASH: manuf_id = 0x0001, device_id = 0x2249

    Bootloader: CRC ok! Id=00000001, V=00002b06, 20040422-155533UT
    Image:      CRC ok! Id=0000000e, V=00000d45, 20041111-111021UT
    CnE:        CRC ok! Id=0000000e, V=00000d45, 20041111-111021UT

    Press Ctrl-A to avoid starting image!

    Start image!

    mod: shellModule
    mod: EVMRadio2HAL
    mod: mdbAndLlc




    mod: pcCardSlotService
    mod: networking
    Hermes Wireless interface
    preped 2 interfaces, initializing...
    00:10:C6:3C:4E:AA
    change net state to EIPCFG_DHCP_IN_PROGRESS

    mod: NetCfgServiceSnap
    mod: NetStatusServiceModule
    mod: avDriver
    mod: streamingDriver
    mod: StreamingFrmWrk
    mod: DataStreamManagement
    StreamDataStreamManager::StreamDataStreamManager: could NOT retreive 1394 bus service

    mod: UPnPModuleService
    mod: StreamingFramer61883
    mod: ShoutcastStreamProcess
    mod: MP3StreamProcess
    mod: WmaStreamProcess
    mod: WaveStreamProcess
    mod: LpcmStreamProcess
    mod: FramerStreamProcess
    mod: modOsCommand
    mod: modAgereRTS
    mod: SsdpClient
    mod: UpnpControl
    mod: NapModule
    mod: NapModuleTest
    mod: NetCfgServiceWirelessShell
    NetCfgApp: Disconnected

    mod: Presets
    mod: Favourites
    mod: RadioStationDBService
    mod: ResourceManagerShell
    mod: ResourceManagerService
    FONT_MAP_INDEX >>>> 0x10000000
    FONT_MAP_INDEX >>>> 0x10000001

    mod: LCDDisplayService
    LCDDisplay initialized!

    mod: WaveRadio2AppControl
    ------------------------------------------------------------
    Initializing Wr2_AppControl
    ------------------------------------------------------------
    LibraryVersion:      WAA (Release)
    LibraryBuildVersion: 3397/- (2004-11-11  11:10:14)                                                   
    LibraryCVSTag:       waaSmc12_20041111_rc
    ------------------------------------------------------------
    mod: IrControl
    mod: LocalUi
    mod: UPnPDevice
    UPnPDeviceInit()

    mod: CheckAsserts
    mod: IrNetControl
    initstructor
    Entered IrCommandInjector::initialize!
    IrCommandInjector::initialize: received a pointer to m_pIrInterpreter
    Using original unserialized printf
    System initialisation done.

     CMDLINE tool ready for commands. Try "help" for help.
    /cfg>Newly connected
    NetCfgApp: Connected to BSS
    change net state to EIPCFG_DHCP_FINISHED

    /cfg>

    Urządenie pracuje pod kontrolą systemu KnOS
    Code:
    /cfg>sys ver                                                                    
    
    Library Name                Version                    CVS Tag Name             
    -------------------------------------------------------------------------------
    KnOS 2.4 (Release)          3397/- (2004-11-11  11:10:14)waaSmc12_20041111_rc   
    DM1000 HAL (Release)        3397/- (2004-11-11  11:10:14)waaSmc12_20041111_rc   
    WAA (Release)               3397/- (2004-11-11  11:10:14)waaSmc12_20041111_rc   
    GTS (Release)               3397/- (2004-11-11  11:10:14)waaSmc12_20041111_rc   
    UIService (Release)         3397/- (2004-11-11  11:10:14)waaSmc12_20041111_rc   
    AudioHWService (Release)    3397/- (2004-11-11  11:10:14)waaSmc12_20041111_rc   
    StreamingFrmWrk (Release)   3397/- (2004-11-11  11:10:14)waaSmc12_20041111_rc   
    CompatibilityServ (Release) 3397/- (2004-11-11  11:10:14)waaSmc12_20041111_rc   
    EVMRadio2 HAL (Release)     3397/- (2004-11-11  11:10:14)waaSmc12_20041111_rc   
    StreamingFrmWrk (Release)   3397/- (2004-11-11  11:10:14)waaSmc12_20041111_rc   
    1394Service (Release)       3397/- (2004-11-11  11:10:14)waaSmc12_20041111_rc   
    Framer61883 (Release)       3397/- (2004-11-11  11:10:14)waaSmc12_20041111_rc   
    Presets (Release)           3397/- (2004-11-11  11:10:14)waaSmc12_20041111_rc   
    Favourites (Release)        3397/- (2004-11-11  11:10:14)waaSmc12_20041111_rc

    Zestaw komend jest zbliżony do Linux-a
    Code:
    /cfg>help                                                                       
    
    30 Available commands:                                                         
    help     help - shows help                                                     
    rd       rd <addr> <count> - reads <count> values starting at <addr>           
    wr       wr <addr> <value> - writes <value> to <addr>                           
    ls       ls [-r|-x|-c] - shows content of current directory                     
    cd       cd <dir> - changes directory to <dir>                                 
    pwd      pwd - shows current path                                               
    get      get <attributename> - reads value of <attributename>                   
    set      set <attributename> <attributevalue> - writes <attributevalue> to config <attributename>
    cfg      cfg setdefault- resets configuration to factory settings               
    bat      bat <batch-name>                                                       
    shell    shell [-h|-i|-o|-s] - shell configuration                             
    net      networking (TCP/IP)                                                   
    ping     ping <ip-address>                                                     
    probe    probe <ip-address>                                                     
    netcfg   print network settings                                                 
    os       [help, th, load, sem, blk, byte, timer, q, evf, evt, map, wp]         
    sys      [help, llc, mdbsettings, mdbdump, dma, pic, cp15, reset, clock, stat, ver, info, frm, tgen, av, uart, spi, gpio]
    rts      Agere (reference test system)                                         
    ssdp     UPNP/SSDP client control [enable, disable, send, setVerbose(x)]       
    upnp     UPNP control point [help]                                             
    nc       nc[]                                                                   
    nap      [help|verbose|..]                                                     
    ncfg     ncfg [general wireless ip] or ncfg profile #index                     
    rsdb     RadioStationDB                                                         
    rm       Resource Manager commands: [help, all]                                 
    lcd_out  [on|off]                                                               
    waaed    waaed help...                                                         
    ir       ir help... 


    Przy braku oryginalnego pilota można posłużyć się komendami z poziomu konsoli
    Code:
    ir send <komenda>
    

    lista komend: all, backward, dislike, down, favourites, forward, home, info, iradio, k0, k1, k2, k3, k4, k5, k6, k7, k8, k9, left, like, play, power, preset, repeat, right, setting, shuffle, stop, up, vdown, vup


    W moim przypadku pomocna okazała się komenda
    Code:
    ir mode 1

    Odbiornik IR został przestawiony w tryb TRACE. Dzięki czemu po odebraniu właściwego kodu, terminal pokazał nazwę komendy. Na nieszczęście żaden z uniwersalnych pilotów nie był w stanie poprawnie sterować tym radiem. O ile standard transmisji ramki to JVC, to rozlokowanie klawiszy niestety już nie. Są one rozmieszczone losowo. Objawia się to tym iż np. Play = 1, Stop = 6, VolUp=0. Z pomocą przyszedł pilot uniwersalny z funkcją zapamiętywania, "uczenia się" kodów.

    Lista katalogów
    Code:
    /cfg>ls 
    
    d. "ResourceManager"
    d. "NTP"
    d. "Application"
    d. "Rhapsody"
    d. "Presets"
    d. "Favourites"
    d. "RadioStationDB"
    d. "SystemConfig"
    d. "dev"
    d. "System"
    d. "UPnP"
    d. "NetCfg"
    d. "Shell" 


    Bardzo interesująca jest zawartość katalogu:
    Code:
    /cfg/RadioStationDB/Partition/DirectoryServerList>
    
    .a "url2" = ""
    .a "url1" = ""
    .a "url0" = "http://www.radiosmc.com/setupapp/smc1/asp/rsdb/update.asp"
    .a "lastValidServerCount" = "0"
    .a "count" = "3"


    Wpisując tam inny adres serwera (jakiś własny), umożliwimy sobie ręczną aktualizację listy stacji radiowych, odcinając się od fabrycznego serwisu V-tuner.

    Oto jak to zrobić. Wpisujemy kolejno komendy:
    Code:
    cd RadioStationDB
    
    cd Partition
    cd DirectoryServerList
    set url0 "http://www.mojserwer.com/mojestacje.xml"


    UWAGA: adres serwera musi być także podany w pliku mojestacje.xml, ponieważ jest on pobierany razem z listą stacji radiowych. Gdy go nie zmienimy w pliku XML, to kolejna aktualizacja zostanie przeprowadzona z oryginalnego serwera producenta.

    Struktura pliku XML:
    Code:
    Nagłówek:
    

        <?xml version=”1.0 encoding=”iso-8859-1 standalone=”yes”?>
        <station_db version=”2007-01-14T15:03:48Z” format_version=”2.0 station_count=”48>

    Tutaj bardzo ważne jest pilnować znacznika station_count, trzeba go zwiększać przy dodawaniu kolejnych stacji.

        <database_info>
        <format_version>2.0</format_version>
        <name>vTuner</name>

    Adres URL serwera z którego aktualizowana będzie lista stacji,
    Wpisać swój np. http://www.mojserwer.com/mojestacje.xml

        <server_url>http://www.radiosmc.com/setupapp/smc1/asp/rsdb/update.asp</server_url>
        <service>SUPER</service>.</database_info>

    Teraz właściwa lista stacji:

        <station_list>

    Sekcja stations zawiera 6 zmiennych:

       1. id           - unikalny znacznik dla każdej stacji
       2. station_name - krótka nazwa pokazywana w menu radia
       3. description  - długa nazwa stacji, opis itd. przycisk INFO na pilocie
       4. bw           - bandwidth, szerokość pasma (kbps)
       5. url          - adres URL statcji
       6. mime_type    - m3u, mp3, wma

    Przykład:

        <station>
                <id>4392</id>
                <station_name>Radio ZET</station_name>
                <description>Radio z fajną muzyką.</description>
                <bw>128</bw>
                <url>http://radiozetmp3-05.eurozet.pl:8400</url>
                <mime_type>m3u</mime_type>
        </station>

    Dla każdej stacji powtórzyć taką sekcję, pilnując znaczników ID, dla każdej pozycji inny.
    Podać łączną ilość stacji Station_count na górze w station_db tag
    Zamknąć znacznik station_list i otworzyć znacznik directory_list:

        </station_list>
        <directory_list>

    Katalog jest bardzo ważny. W tym miejscu stacje są zbierane w grupy, sortowane.
    układ bazuje na strukturze katalogów, podkatalogów i stacji, przykład:

    Nazwa katalogu "Internet Radio", 3 podkatalogi, 0 stacji.

        <dir name=”Internet Radio” subdir_count=”3 station_count=”0 >

    3 podkatalogi: “Genres” 0 stacji, “Adult Contemporary” 0 stacji, “All stations” 2 stacje:

        <dir name=”Genres” subdir_count=”28 station_count=”0 >
        <dir name=”Adult Contemporary” subdir_count=”3 station_count=”0 >
        <dir name=”All Stations” subdir_count=”0 station_count=”2 >
             <station>8512</station>
             <station>12049</station>
        </dir>

    W każdym katalogu umieścić ID poszczegóonych wybranych stacji a na koniec zamknąć wszsystkie otwarte katalogi i podkatalogi.

        </dir>
        </dir>
        </dir>
        </directory_list>
        </station_db>


    Teraz wystarczy wpisać stacje radiowe według własnego "widzimisie" i ręcznie zaktualizować listę stacji w odtwarzaczu.

    Analizując zawartość oprogramowania doszedłem do wniosku, że podobne operacje można by zrobić w radiach Philips SLA5520, oraz Terratec NOXON Audio i być może w obecnych klonach z Allegro

    Miłego słuchania :)

    0
  • #3 19 Paź 2011 02:45
    Janusz
    Poziom 26  

    Czy potrafiłbyś podobnie rozpracować SLA 5520 ?
    Czy jest możliwa modyfikacja firmware w w/w Philipsie by prawidłowo wyświetlane były polskie znaki?

    0
  • #4 19 Paź 2011 07:36
    mipix
    Poziom 30  

    Po rozpoznaniu, byłem nawet gotów wgrać firmware z Philipsa do mojego urządzenia. Wsad jest niemal identyczny. Polskie znaki u mnie nie działają. Nie modyfikowałem samego oprogramowania jedynie jego ustawienia domyślne, tak aby nie była pobierana lista stacji z serwera producenta tylko moja.

    Prawdopodobnie da się przerobić w ten sam sposób tego SLA 5520
    Pozdrawiam

    0
  • #5 20 Paź 2011 02:57
    Janusz
    Poziom 26  

    A czy nie myślałeś o modyfikacji oprogramowania tak aby dodać język polski a przynajmniej polską czcionkę przy wyświetlaniu nazw utworów? Czy jest to możliwe do zrobienia?
    Mnie jej brak strasznie irytuje.
    Pozdrawiam

    0
  • #6 21 Paź 2011 18:36
    mipix
    Poziom 30  

    Do tego trzeba by mieć wersję źródłową softu i kompilator tego egzotycznego systemu KnOS. Nie znalazłem w sieci nic co mogło by w tym pomóc.

    0
  • #7 20 Lis 2011 23:59
    frijerz
    Poziom 11  

    Widze, ze jest wiecej uzytkownikow Philipsa SLA5520 :) Ja dzis nabyłem takie urządzenie, mam tylko problem z ulubionymi, moze ktos pomoze? Zarejestrowalem sie legalnie, zrobilem liste ulubionych stacji radiowych i wyslalem to. Jednak w urządzeniu w zakladce Ulubione jest nadal pusto :( Czy nie zapisuje tam ulubionych stacji, tylko ulubione mp3?

    0
  Szukaj w 5mln produktów