NES / Sega / etc emulation in your pocket: Browse / configure EXEQ Ray 2 (JXD S5110b) - firmware, software, management

    imageIn this article I will tell about my experience in operating and setting up a game console on android " EXEQ Ray 2 " ( JXD S5110b twin ). Moreover, I will not talk about how it works as an android device, but exclusively as an emulator of old game consoles - Sega, NES (dandy), SNES, DS, etc. After all, it was as a portable emulator that I bought it.

    Quickly go over the boring technical specifications:
    • Dimensions: 195x87x17 mm, 232 g
    • Android 4.1.1 with root privileges “out of the box”
    • 5 '' screen, glossy, TN, 800x480, 5 touch capacitive touch
    • 8 Gb memory + microSD
    • 2-core 1.5 GHz CPU
    • Wi-Fi, mini-HDMI, accelerometer, camera 0.3 MPx
    • Two analog sticks, two bumpers (shift), D-Pad, 4 buttons, start, select
    • Battery: Li-Ion 2200 mAh (3 hours of play)
    • Cost: ~ 4200 rub.

    In the video below, I twisted the prefix in my hands, talked a little about it and showed how it works:

    For everyone who is interested, then I will talk about all the problems that I encountered and tell you how to solve them.

    Choice, and general impressions.

    If someone follows my articles, then he knows that I am not indifferent to old games. And so, I had an irresistible desire to play the same Dendiv or Segov hits on something tangible and iron. Incidentally, I must say that in my childhood I had only the ZX Spectrum and I only played a few consoles with friends. So at the same time I wanted to catch up.

    Of course, I am delighted with the collection of cartridges and consoles from Pixel Devil 'a, but with a bit of brains I realized that this option does not suit me for many reasons. All these consoles just can’t be connected to the monitor, you need to get the cartridges somewhere (or bother with the hardware-cartridge emulators). In general, I'm not ready for this fuss.

    That’s why I decided to look at the market of portable emulators and in particularline of EXEQ . They have quite a lot of models, but for a long time I did not think about the choice. It was repelled from the screen. I decided that 7 '' is already a bit much (the prefix is ​​already becoming not so portable) and chose a model with a 5 '' screen, just in case with a 2-core CPU (why not take it if it costs the same as a 1-core ) and without 3G, because I don’t need it.

    Once again, I note - I consider this device exclusively as a platform for emulators. A little more sophisticated and flexible analogue of the Dingoo A320 . Yes, there is an Android Play Market on the device and you can put android toys. And there is even a built-in mapper that allows you to assign hardware buttons to touch the screen. But personally, this is not interesting to me.

    Yes, you could take the twin from China JXD S5110bfor $ 100 or less. But I did not begin to wait a month for delivery and take the risk of "stolen by mail" for the sake of saving 1,000 rubles.

    So, let's finally have a first impression.


    I must say right away: the screen is bad. The resolution is low, the color rendering gives a cheap blue, on the street everything immediately becomes indistinguishable. But on the other hand, what did you want from the console for 4000 rubles?

    Photos for comparing iPad 2 and EXEQ Ray 2 screen colors:

    Resolution is also not too high. Tell me, why permission, if it is still higher than that of consoles? Here the thing is - the higher the screen resolution, the less soap you will see when interpolating the picture of the console to your resolution. In this case, one often has to choose between a soap picture with linear interpolation or a broken pixel with interpolation turned off.

    Otherwise, approx. The touchscreen is responsive, though sometimes inaccurate. On small points you can miss. But this is nitpicking.

    I did not test the HDMI output, because there was no mini-HDMI -> HDMI adapter at home. But judging by the reviews, everything works fine and up to 1080p.

    Governing bodies.

    I liked everything here. Yes, the buttons are a little booming, but it's not scary. Pressing is clear. The D-Pad cross is made by a single element, and not by separate 4 buttons and is controlled very clearly, without false clicks (in no way compared to the cross of the XBOX 360 gamepad, for example).

    The buttons for the right hand are 4. (For some reason, A / B and X / Y are confused by default, but this is fixed, see below). It’s a pity, by the way, that it’s not 6. As a result, in some games for Sega Mega Drive you have to cast out two buttons on the upper bumpers.

    Two analog sticks. Especially not used, but they work.

    The Start / Select buttons are great. At the top there is a reset button that can be pressed with a fingernail (which in the case of Android can be useful). What is a pity is that there was no place for the hardware buttons "home" and "back" and as a result you sometimes have to call the bottom panel of the android.

    Case, sound, battery.

    The case is a little “rattle”, but overall - approx. It does not cause disgust and even the frame under the metal looks good. True, it is very hot. Especially when it is charging at the same time as working (by the way, in this mode, I still spent a little more than it got infected via USB).

    The battery runs out pretty quickly. It is enough for about 3 hours of play.

    Sound ... He is. By the way, despite the fact that there are 2 groups of holes in the back, there is one speaker inside (on the right). Yes, and for some reason the console has 2 headphone outputs.

    In general, there are not enough stars from the sky, but it does not cause disgust. All is well.


    Let's finally talk about software.

    The prefix comes with firmware from EXEQ and with a bunch of pre-installed emulators and games. All of them are collected in a single application “Game Center X”, which looks like this (sorry for the quality of the picture, the photo is not mine):

    The idea itself is convenient. You have a single center where all the ROMs that you launch from 1 place are collected. And then the emulator itself picks up the selected image and launches the game.

    The only problem is that the pre-installed emulators are extremely limited in settings. They all stretch the picture to full screen while shamelessly splashing it (I never understood people who stretch the 4: 3 signal to their widescreen TV and then admire the flattened faces). With setting up the controls, there’s also no fountain ...

    In general, I wanted to repeat the same experience, but on better and more customizable emulators.

    First I tried the multi-platform RetroArch emulator . The emulator itself is praised, and there are plenty of settings there ... But I didn’t like it.

    Firstly, the design of the Roma library is not very convenient. Even with the delivered VectorGUI, designed to just structure this matter, it looks something like this:

    Yes, and I had problems with the emulator itself. That management fell off, the emulator started not the selected ROM, but the game that was in my memory before that ... In general, I went to look for options further.

    The second option that I found (and which I have stopped so far) is Gamesome Frontend (by the way, just now, posting a link to it to Habr, I noticed the word “vektor” in the name of the bundle! It turns out that this is the same author)


    Emulators themselves are not included in it, but you can connect and configure external ones. Everything is still sorted by platform, everything is customizable. By the way, I had a problem with this frontend. After the start, I had a clean screen and did not want to display the platform. I put it 2 times (the second time after a flashing) and both times there was such nonsense. How to overcome - I do not know. I just turned platforms on and off, connected emulators, set up paths, restarted the application ... And once again it displayed a list of platforms and it worked.

    And here we come to why I reflashed the console ...


    My only wish was that it just work. But do you understand that with an android everything just doesn't happen that way? :)

    As I mentioned above, initially the A / B and X / Y keys are confused. The easiest option is to rebind them in the emulator as needed. But this does not solve some problems. For example, in system “B” it works as “backward”. And this “B” is in place of “A” in all emulators. Those. Having made the familiar bottom button a confirmation button (A) in the emulator, it will still remain a back button in the system. It breaks the brain.

    But this was not the reason for flashing (and for fixing this behavior, flashing is not needed, I will tell you below).

    And the reason was this. We have a right analog stick on the console. Which is not used in games. And so that he did not "disappear", I wanted to hang on him functions such as accessing the emulator menu or rewinding time, for example. And if you want to play with saves, then you might want to hang on it, for example, quick save / load. And then I ran into a major problem. In the original firmware from EXEQ (even the latest one), with all third-party applications (emulators), the right stick is perceived as an analogue of a cross (D-Pad). And nothing can be done about it.

    And that's why I decided to change.

    First I tried the custom Skelrom firmware. But putting it on top of the native EXEQ, I found a bunch of problems. Almost all of the internal memory immediately fell off and the android began to run out of space even to start the clock. Perhaps this could be somehow solved, but I decided to try installing the firmware from the Chinese twin JXD. And reviews about Skelrom on were not the best. In people, something was constantly buggy.

    Firmware from JXD s5110b got up like a native! (The flashing process itself is extremely simple - download the archive, unzip it to microSD and turn on the set-top box while holding the volume up button. Then all by itself).

    After flashing, the right stick was defined by emulators as a separate axis and it became possible to bind to it, for example, access to the menu.

    Solution of problems.

    Now I will list the problems that remained, and how I solved them.

    Confused buttons AB and XY

    This problem remained in the firmware from JXD. It is solved quite simply. You need to edit one system file /system/usr/keylayout/Generic.kl . I'm not very strong in Android and the options for solving this problem, but for this I personally installed the free SHH server Rooted SSH / SFTP Daemon and connected to my android from my PC via SFTP, where I could already download / upload files to the device.

    So, in this file we will be interested in the key bindings BUTTON_A, BUTTON_B, BUTTON_X and BUTTON_Y. Each of them is associated with digital scan codes 304 ... 308. If you are interested in knowing which codes the keys send, you can use the free KeyEvent Display application , or my picture:

    If you need a ready-made solution, then here it is:

    key 304   BUTTON_B
    key 305   BUTTON_A
    key 306   BUTTON_C
    key 307   BUTTON_Y
    key 308   BUTTON_X
    key 309   BUTTON_Z

    Edit the corresponding piece of the file, fill it back (by the way, for some reason I didn’t have the SFTP overflow and I had to erase and upload the file again. If you do so, do not forget to set read permissions for it later).

    The buttons “START”, “A” and “B” work in the system as “home”.

    This is obviously wrong.

    I would like that in the system itself you too could be controlled with the help of hardkey buttons, and not poke a touch.

    To do this, use another system file, /system/usr/keychars/Generic.kcm . In it, you can configure the actions of the iron buttons as you want. I did like this:

    key BUTTON_A {
        base:                               fallback ENTER
    key BUTTON_B {
        base:                               fallback BACK
    key BUTTON_START {
        base:                               fallback ENTER
        base:                               fallback MENU

    Buttons “A” and “SELECT” work as confirmation, and buttons “B” as “back”. Now in the same Gamesome you can crawl back and forth between categories without touching the screen.

    Battery consumption in sleep mode.

    This problem is also faced by many. After I installed the firmware from JXD, the device, being turned off, completely discharged during the night.

    The forums advise CPU Adjuster , where you need to create a profile for the event "screen off" and set everything to a minimum. I did not like him - somehow he is crooked and uncomfortable. And despite the profiles, emulators started to slow down with him. So I installed the CPU Tuner . I also advise setting up such programs, do not let them slow down the processor if it is busy at least 20%. In my experience, the Segi emulator eats about 25% of the CPU. But if the “smart” tuner tries to drop the frequency, then there is a high probability of running into unpleasant micro-friezes.


    That's all for now with problems (hopefully) ...

    Summary of recipes.

    So, having bought a prefix, I advise you to do the following:
    1. Download the latest firmware from the JXD S5110b (namely, “b”!) And flash it (unzip it to microSD, launch the device while holding “VOL +”).
    2. UPD: Install SkelROM on top of it
    3. Correct the confusion with the A / B and X / Y buttons, as well as the system binding of the “B” and “Start” buttons (see above).
    4. Install the CPU Tuner (or SetCPU) and configure the profile for the screen off to prevent battery leakage in sleep mode, as well as configure the performance profile for operation.
    5. Put Gamesome Frontend
    6. Put emulators. My choice: NES.EMU, Snes9xEX +, GBA.EMU, MD.EMU
    7. For launcher I settled on Apex Launcher


    The console has two main disadvantages:
    1. Cheap screen. I would like more resolution, better color rendering and brighter.
    2. Battery for 3 hours of games. Enthusiasts, by the way, already solder to more capacious options.
    (3). A trifle - the lack of hardkey buttons “back” and “home”

    There are many advantages:
    1. Good price (4000 rubles for the official EXEQ and 3000 rubles for JXD)
    2. Convenient form factor
    3. Good buttons, two sticks
    4. Almost speed enough for a smooth game in NES / SNES / Sega / GBA. Unfortunately, all the same, from time to time there are slowdowns even on Segovsky emulsion (especially on Super Nintendo). Not critical, but a little annoying. It slows down a bit on the Nintendo DS, but I didn’t really drive this option.


    Still, I installed Skelrom 1.5 on top of the firmware from JXD. He got up well. And the performance has improved significantly, the Sega / SNES stopped braking in places. Apparently, the reason for this is a poor CPU auto-adjuster, which was originally. And which could not be reconfigured by any CPU Tuners, as settings were constantly reset to default.

    Also popular now: