Announcement

Collapse
No announcement yet.

Announcement

Collapse
No announcement yet.

Vigica C100S Channel Lists / Firmware --- S805

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Vigica C100S Channel Lists / Firmware --- S805

    Hi all

    I have recently bought a Vigica C100S set top box for its ability to run DVB-S and Kodi. Unfortunately after scanning for channels i have alot of duplicates and the order is completely random. It does have a built in channel manager that lets you sort A-Z, move and delete channels but this is very time consuming.

    I am hoping that someone has already set up their box and has a backup of their dtv settings including channel list so i could restore them onto my box.

    Failing this I would like to install some kind of linux OS and use enigma2 or similar with easily obtainable channel lists but this has to be a last resort or a simple step by step instructions link. Openelec with TVHeadend seems to be an option but i have read that it disables wifi on the c90s and can't find any clarification on the c100s either way and don't like the idea of wiring my house up with ethernet cables.

    Do any of you use the Vigica c100s and if so what setup are you using?

    #2


    Here is the spec of the box, everything seems to work well, if only it used an existing channel list i would recommend it to anyone

    Comment


      #3
      Originally posted by bago View Post
      Hi all

      I have recently bought a Vigica C100S set top box for its ability to run DVB-S and Kodi. Unfortunately after scanning for channels i have alot of duplicates and the order is completely random. It does have a built in channel manager that lets you sort A-Z, move and delete channels but this is very time consuming.

      I am hoping that someone has already set up their box and has a backup of their dtv settings including channel list so i could restore them onto my box.

      Failing this I would like to install some kind of linux OS and use enigma2 or similar with easily obtainable channel lists but this has to be a last resort or a simple step by step instructions link. Openelec with TVHeadend seems to be an option but i have read that it disables wifi on the c90s and can't find any clarification on the c100s either way and don't like the idea of wiring my house up with ethernet cables.

      Do any of you use the Vigica c100s and if so what setup are you using?

      I have just started using the Vigica C90S and am also frustrated by the awkward way you need to create a favourites list.

      I did read a post referring to the C90S which suggested some way of exporting the channel list to a PC, editing it and then importing it, but haven't tried it myself.

      Comment


        #4
        So a quick update on my progress so far for anyone else who is working with 1 of these at the moment.

        I have created the vitmod v2.1 micro SD card using win32diskimager and the image from http://4pda.ru/forum/index.php?showt...#entry39619319 (Thanks to Vitaly_S and Google Translate)

        I then renamed the kernel on the SD Card and replaced it with the one from http://4pda.ru/forum/index.php?showt...#entry39937060

        I booted with the SD Card inserted and openelec booted fine, I setup OSCam using https://tvheadend.org/boards/13/topics/13301

        I installed tvheadend-3.9.2712 from the 1st link and configured it using the guide http://linuxsat-support.com/showthread.php?t=78286 (Using a DTH Bouquet for local tv with SD channels preferred and the Irish bouquet with all apart from the setanta channels disabled) and installed the TVHeadend HTSP Client.
        (There is an update for tvheadend available but I haven't updated it yet as I'm not sure whether this will be compatible, when i have this system tested i will try updating to see how it affects it)

        I am currently using OpenTV and PyEPG but some channels are missing from it, I have tried different combinations but this is the best 1 i have found so far as other combinations/changing channel numbers of BBC One HD seem to affect things somehow and cause glitches.

        Everything seems to work ok then out of nowhere i will have Oscam issues, i remove the SD card and boot in android and can confirm it's not my C-line but I cannot understand what is actually causing the problem, I am starting to think it might not actually be linked to me adding EIT DVB Grabber in the epg grabber settings and if I can figure out the real issue then I might be able to have EPG for the other channels too. I am using OSCam r10615 if anyone would like to see any logs let me know as any help would be greatly appreciated.

        I am new to all of this so please bare that in mind but I cannot see any problems with the original system from running this alongside it, I'm sure if somebody who actually has experience of this stuff were to get involved the kinks could be ironed out fairly easily, eg. updating tvheadend/oscam could well fix this but i have no idea whether or not different versions are hardware specific, I also can't confirm that the custom openelec is working as it should.

        Comment


          #5
          Have been looking into the format of the files that can be exported and imported into and from the original firmware of the C100S or K1 box, called mw_st1 and mw_s1. After rooting the box these same files can be found in the /data/data/th.dtv folder as dvb_s_mw_st1 / s1. The mw_st1 format differs from many other firmwares in that it does not maintain three sections (sats, transponders, channels, referencing each other) but keeps the transponders in front of their own satellite data in one file. The names of satellites do not have a fixed length but are preceded by a byte giving their length. So the space per satellite in the file is variable. The services are in a separate file, the mw_s1.

          That services listing is similar in structure. After file length, crc value, version number, and number of services follow records of data per service. The C100S channel numbers are just indexes into this list of records. So changing the order in which the records appear is equivalent to changing channel numbers. Each record does have a reference to an index of a satellite and an index to a transponder of that satellite in the st1 file. So any changes in the st1 file will require changes in all the relevant records in the s1 file! Each service record uses two bytes to store its assignment to preferences. Each preference is a bit position in the two bytes.
          Each record has variable length again; there are a number of data blocks that have to be preceded by a 0 or number. If zero it is not present and only the zero is in the record. If non-zero that number of blocks of a certain type are expected to follow. Such blocks themselves can again have embedded blocks that can be present or not, indicated by a leading zero or non-zero. And within that again blocks etc. But not present is not-present, so deeper embedded zeros or non-zeros do not show in the record when their outer block was already not present. So although not a compressed file it is a compact file because no space gets wasted on non-present aspects in the description of a channel. E.g. if the channel has no conditional access, is free-to-air, no space is wasted on room for giving caid codes.
          But creation of a traditional services list with all the fields present requires an unrolling of all these optional embedded blocks.
          Each record typically starts with a 1 (1 block to follow), the number of characters in the name, 0x000000, the name, the vpid and type, option: video caid info, the apid and type, option: audio caid info, option: general caid info, option: txt info, option: subtitles info, and a fixed block with pid, sid, nid, pcr, pmt, sat index, tsp index, scrambled y/n, HD y/n, a number of unknown zero bytes, the preference setting, and at the end 0x3fff.

          Some additional info:
          to set the biss codes or c-sharing stuff go to the installation menu and press 6 times '1',
          the biss code database is a sql3 type and can be exported and edited, e.g. using the free SQLiteStudio editor.
          Note in biss that while the frequency field is decimal, the 'ssid' and 'biss' fields take hex data without spaces. (the writer must have done wifi stuff to call the sid field ssid ,-)
          Every sid must be entered for a stream to be viewed in a transport stream even though all sids may share the same biss of the transport stream..
          Last edited by wwortel; 12-26-2015, 19:17.

          Comment


            #6
            Some more attention points with the original firmware:
            Have tried both the September 2015 Vigica C100S and Venz K1 codes and found that the C100S is most stable and does not have a mw_s1 etc. reading and interpreting problem that the K1 firmware has.
            Things to improve:
            * when listening to radio it is advisable to switch any display systems off. The shown image is completely stationary, has big contrasts and hence will burn into most screens,
            (suggestion to Vigica: make it a moving, screen saving type, screen) The fancy Mali graphics hardware makes this real easy but nobody gave it thought it seems.
            * in upgrading prescriptions it is said to format SD cards with FAT32. I found that while Android recognizes those, the DTV app does not, e.g. to load and store satellite and channel and conditional access data. The th.dtv app only sees FAT16 partitions.
            * the Blue button does Radio/TV mode switching; undocumented.
            * in Android operating Google's play/app store is difficult to operate with just the remote control. It seems the key codes mapping is inadequate to always allow proper navigation from and to positions where you can click something. The button with the mouse symbol toggles between two navigation modes: jumping from clickable item to the next,and moving a cursor around.
            * when storing c-lines in CCCam.cfg it is mandatory to use DOS type line endings (0x0D 0x0A) and not Linux type, just 0x0A. Use a hex editor to check or adapt.
            The format of a c-line is:
            C: FQDN DecimalPortnumber UserName Password no
            (FQDN: fully qualified domain name, no: do not provide emulator code)
            * certain satellite operators manipulate the PMT records to not allow scanning of their services. In such cases the service records have to be made manually. The C100S' DTV app is not clever enough to detect such situations.

            Have now managed to make new channel lists using a script written in Python to dump all scanned and yet unsorted services into a folder, one file for each service.
            To make a new channel list I use my PC OS' file management program. After having copied wanted services into other folders one can influence the order of the services by changing the numbers in the beginnings of their file names.
            Another Python script than reads in natural order all files from each folder with wanted services and makes a new 'mw_s1'.
            Natural other lets 20... come before 1000... which is not the case with alphabetical sorting of file names.
            The file with the lowest starting number in its name will be channel 1 for that satellite, the next higher will be channel 2 etc.
            For those a bit handy with Python scripts and editors, the scripts can be found here: http://dorpstraat.com/vigica/mw_s1_edit.zip
            Some services have been manually added as an example for a satellite that the Vigica box will not scan by itself.

            A big Thank You to the makers of the pycrc library, under the MIT License (MIT), at pycrc.org, who included the mpeg variety. Only a very minor edit was needed: in 'pycrc.py', in function 'crc_file_update', remove the utf-8 type conversion as not all byte values allow the conversion.
            The scripts were made and tested under Linux (Debian/Ubuntu). For Windows you may have to tweak things but this should be minor. Pycrc.org have a version for Windows as well. Have not tested that. Forward slashes in filenames may need to be turned backward slashes and the like to suit Windows.
            Last edited by wwortel; 12-27-2015, 14:55.

            Comment


              #7
              Some more observations on the Vigica C100S:
              * The stock firmware provides a very incomplete list of satellites which is centered around China / Golden triangle. The list stops at 0 degrees and has no entries of satellites west of the zero meridian. The listed satellites have all been given separate entries although some of them share a position above the equator. The example mw_st1 in the firmware above contains satellites from about 35 E to 35 W, so more fit to Europe and the middle East.
              Each position with possibly multiple satellites is one entry. For the Americas one will have to again adapt the satellite list.
              * The time zone ex-factory is also set to China. This can be changed through Android's 'other settings'.
              * when saving data to a SD card, or restoring them, the mw_xx files are found in a directory 'dtv_user_data'. The Vigica will create the directory when saving user settings.
              But the options in the hidden ...cam / ..ss menu to save and retrieve settings work from files in the root of the SD card.

              * cannot repeat this enough: if you want to experiment with making your own channel listings do start with first creating/adapting a satellite list that fits your needs 100%, using the box' provisions for editing. Make all the needed settings for disecq etc.
              Only then blind-scan all the sats you want and don't touch the sat/transponder settings anymore. Export the files from the box and then do the mw_s1 decomposition, sorting and re-ordering of services, and recomposition of the mw_s1 file. Of course, before all this, make a back-up of the original mw_xxx settings. Not changing mw_st1 anymore while changing mw_s1 is essential because the service descriptions in mw_s1 do not contain absolute references to their transponders and sats listed in mw_st1 but only indices.

              After the initial hurdles having been mastered must say the box actually delivers plenty bang for the limited buck.
              A specification shortcoming I find the box not having any display. E.g. using it to listen to radio it would be handy to have a Radio/TV led and a channel number indication.
              Presently there is no feedback whatsoever when using the remote control, other than the On Screen Display, so having a screen connected is mandatory to navigate the box' functionality.

              Some data on the hardware of the C100S:
              S805: ARM v7 rev.1, Meson8B platform. The dtd file used: meson8b_m201_1G.dtd. The DVB-S2 tuner is AVL6211 type that comprises an Airoha AV2012 RF IC and Availink AVL6211LA demodulator IC.
              The wifi is provided via a Realtek RTL8188ETV. Video stream types supported: H264 H265 MPEG4 VC1 MPEG2; Audio stream types: AC3 EAC3 AAC AAC_LATM DTS MPEG.
              Last edited by wwortel; 12-27-2015, 15:25.

              Comment


                #8
                Originally posted by wwortel View Post
                Some more observations on the Vigica C100S:
                * The stock firmware provides a very incomplete list of satellites which is centered around China / Golden triangle. The list stops at 0 degrees and has no entries of satellites west of the zero meridian. The listed satellites have all been given separate entries although some of them share a position above the equator. The example mw_st1 in the firmware above contains satellites from about 35 E to 35 W, so more fit to Europe and the middle East.
                Each position with possibly multiple satellites is one entry. For the Americas one will have to again adapt the satellite list.
                * The time zone ex-factory is also set to China. This can be changed through Android's 'other settings'.
                * when saving data to a SD card, or restoring them, the mw_xx files are found in a directory 'dtv_user_data'. The Vigica will create the directory when saving user settings.
                But the options in the hidden ...cam / ..ss menu to save and retrieve settings work from files in the root of the SD card.

                * cannot repeat this enough: if you want to experiment with making your own channel listings do start with first creating/adapting a satellite list that fits your needs 100%, using the box' provisions for editing. Make all the needed settings for disecq etc.
                Only then blind-scan all the sats you want and don't touch the sat/transponder settings anymore. Export the files from the box and then do the mw_s1 decomposition, sorting and re-ordering of services, and recomposition of the mw_s1 file. Of course, before all this, make a back-up of the original mw_xxx settings. Not changing mw_st1 anymore while changing mw_s1 is essential because the service descriptions in mw_s1 do not contain absolute references to their transponders and sats listed in mw_st1 but only indices.

                After the initial hurdles having been mastered must say the box actually delivers plenty bang for the limited buck.
                A specification shortcoming I find the box not having any display. E.g. using it to listen to radio it would be handy to have a Radio/TV led and a channel number indication.
                Presently there is no feedback whatsoever when using the remote control, other than the On Screen Display, so having a screen connected is mandatory to navigate the box' functionality.

                Some data on the hardware of the C100S:
                S805: ARM v7 rev.1, Meson8B platform. The dtd file used: meson8b_m201_1G.dtd. The DVB-S2 tuner is AVL6211 type that comprises an Airoha AV2012 RF IC and Availink AVL6211LA demodulator IC.
                The wifi is provided via a Realtek RTL8188ETV. Video stream types supported: H264 H265 MPEG4 VC1 MPEG2; Audio stream types: AC3 EAC3 AAC AAC_LATM DTS MPEG.

                Hello, I am a user C100S and I am delighted that someone also interested in this issue. I'm not fluent in python but finally is able to edit the channel list, thank you. Is it possible to convert the channel list from enigma2?
                I am a Windows user, I have some errors, but I'll try to deal with it.
                I tried Vitmod OS and openELEC but all these systems have many bugs and problems and they are very slow.
                Last edited by piotrux; 12-28-2015, 17:03.

                Comment


                  #9
                  piotrux
                  I do not have an Enigma2 box so cannot answer your question from first hand experience. But googled a bit and found this: https://tvheadend.org/boards/4/topics/10103
                  It seems that the Enigma2 channel list database does not store the IDs of the CA systems and AV streams. If that is indeed the case there is no 1:1 translation in the sense of new data record creation. The mw_s1 file does contain all those ID details.

                  Comment


                    #10
                    Originally posted by wwortel View Post
                    piotrux
                    I do not have an Enigma2 box so cannot answer your question from first hand experience. But googled a bit and found this: https://tvheadend.org/boards/4/topics/10103
                    It seems that the Enigma2 channel list database does not store the IDs of the CA systems and AV streams. If that is indeed the case there is no 1:1 translation in the sense of new data record creation. The mw_s1 file does contain all those ID details.
                    Thx. Maybe this will help I found Wetek Play (the same arm platform) converter from enigma2 look at http://www.dreamset-editor.com/
                    I try to use Your editor but a must install linux, because on Windows I have lots of errors.

                    Comment


                      #11
                      piotrux ; the choice of platform or CPU is quite something else than the choice of editor needed to make sat-TV channel lists. The Vigica 'mw_xxx' files are specific to an App that runs on the Vigica under Android and is called 'th.dtv.apk'. That th.dtv application is very different from the approach that OpenElec/Kodi take via a client-server headend solution. What kind of errors are you getting? Sometimes a little thing can cause lots of errors being thrown.

                      Comment


                        #12
                        Hi, WWORTEL I just sent you a PM...

                        Comment


                          #13
                          wwortel I understand everything thx.

                          Error:
                          decompose-mw-s1.py", line 70, in <module>
                          with open(filepath, 'wb') as rcdfile:
                          OSError: [Errno 22] Invalid argument: "C:\\Users\\*******************/services_all\\TV-36-bytearray(b'CaD?avisi')-83"

                          Comment


                            #14
                            piotrux
                            Various things:
                            1. Try changing in line 68 of the decompose script the /services into \services (DOS path format).
                            2. the bytearray() should not be there because in line 67 this bytearray should have been converted to a text string.
                            Apparently the name of the service contains some unusual characters that are not properly handled. Perhaps some things must be added to the three tests done between lines 52 and 57.
                            (careful with indentation; Python uses indentation to structure the programme; do not mix spaces with tabs!).
                            However it is also possible that the error under 1. was detected before trying the conversion. So first do the / \ change. And see if the bytearray is still there in the filename.

                            Under Linux noticed that some service names on my satellites contain a /; this of course messes up the creation of a filename. This is handled on lines 56 and 57 by making them a |.
                            For your windows installation you may want to also intercept \ characters by adding with the same indentation as the other lines:
                            if rcdname[idx] == 0x5c: # \ confuses path; do an |
                            rcdname[idx] = 0x7c

                            All this is only affecting the file names that serve for you to recognize the services so you can select and sort them. The names inside the data records are not touched.

                            In the compose script you'll have to make / \ changes in lines 1, 10, and 29. The windows version of pycrc will also need the utf-8 conversion disabled as described in an earlier post.

                            By the way; looked at the particular service that causes problems. Looked in my blind scan data for that satellite and operator and on Lyngsat.com. Supposedly the channel is 'Caçavision' but already in the scan data that is not correctly given. The Vigica has stored the name with 9 byte positions as hex bytes '43 61 C4 BF 61 76 69 73 69'.
                            So two errors the th.dtv software is making: (1) it does not handle the ç (c cedille) properly and (2) it looses proper count of the length of the string the operator is broadcasting..... I guess the chinese software maker has made some errors with the proper handling of latin and special characters in names of services. The DVB standard provides for the character table being defined before the string is given. The Vigica should have understood that this Caçavision was given by the operator using Latin alphabet #5 (according to ETSI EN 300 468). But somehow that has not been interpreted correctly by the th.apk application.

                            If you have the patience you can use a hex editor to correct the contents of those service files that do not show up with proper service names on the Vigica. Just put proper bytes in the name and adapt the byte that gives the length of the string. Between that length byte and the name there are three 0x00 values. The file length may change a bit but that is not important as length of the entire file is not part of the file contents. The compose script will recalculate the length of the concatenation of all files and that will be part of the header of mw_s1.
                            Last edited by wwortel; 12-30-2015, 14:47.

                            Comment


                              #15
                              Ok. I run Virtual machine with Debian and it's all ok Thx friend!

                              Comment

                              Working...
                              X