Running mxit in mpowerplayer on Linux (Ubuntu 7.04)

I’m peppering this with enough keywords so that other idiots will be able to find this easily. MXit is a mobile-phone based chat system that’s very popular in South Africa (Rugby World Cup champions 2007, thank you very much; want to wine about Cueto’s “try”, then first click here). It is possible to run the MXit Java midlet on a J2ME emulator (am I saying this right?) such as mpowerplayer or microemulator. Of course this works on Windows, even the average 12 year-old MXit user can successfully follow the many guides available online and then brag about his technical prowess online to his “friends”.

Obviously, I had to get this working on Ubuntu Feisty Fawn (7.04), you really don’t have to ask why. And obviously, it Just Didn’t Work(TM). MXit, both versions 3.0.5 and 5.2.x, hang forever at “Registering” or “Logging in”. After much swearing and trying The Usual Solutions(TM), I dusted off my ethereal / wireshark, and also my trusty old tcpdump and set out analysing TCP packet dumps.

I really hate packet analysis, it’s such a pleb thing to do. Oh well, one does one’s best to forget one’s breeding. Temporarily.

It turns out that if you set the maximum TCP receive buffer to 170K (instead of the default 1M on Feisty), everything starts working again. My current hypothesis is that some of the other auto-tuned TCP parameters than rely on the max receive buffer setting, now better accommodate the small MXit packets. For those of you who still don’t understand what all of this means, run the following as root to get MXit working on Feisty:

echo “4096 87380 174760″ > /proc/sys/net/ipv4/tcp_rmem

To make this permanent across boots, check the man page for sysctl.conf or add the line above to your /etc/rc.local.

Let me know in the comments if this is useful. I optimistically estimate that there has to be at least one (1) other person that will run into this problem. Ever.

Related posts:

  1. a critical look at ubuntu feisty beta on an hp nc8430 laptop
  2. The Linux-running Entertainment PC that I can’t afford right now
  3. Backport of unison 2.27.57 to Ubuntu 7.10
  4. A first whiff of Gutsy Gibbon power-management
  5. More Human than Human

7 Responses to Running mxit in mpowerplayer on Linux (Ubuntu 7.04)

  1. I’m no longer using mxit, Jabber/GoogleTalk and “fring” does the job for me. However, I find this post useful in inspiring me to try to get J2ME emulation going on my laptop.

    OTOH, right now, I’m more interested in emulating Python for Series60 on my laptop, so that I don’t have to upload scripts and run them on my N70 in order to test them… ;)

  2. Hi there Hugo! How difficult is it to run Python on the Nokia S60 emulator (somewhere on http://www.forum.nokia.com/main/platforms/s60/ ), or is that not the problem?

    I had to stop myself from installing Python on my 6120 the other day. :) What are you doing with Python on your N70?

  3. With Python on my N70? Not much, just procrastinating, really. ;) At the moment I’m using it to record stuff… the included sound recorder can only record 1 minute (why?!), the other sound recorders I found so far cost money (ah, so that these can be sold?). Why pay for a sound recorder when less than 50 lines of Python code does the job?

    AMR is far from perfect. The silence-detection is the most irritating thing at the moment: when there’s clean silence between just about every word, it just sounds terrible. It is till okay for hand-transcribing things though. Raw wav takes too much space, and I don’t feel like buying an MMC card that I will only ever use in my phone. (OTOH, if I use wav, I *might* be able to get some speech recognition working? Then I could “pay” for an MMC card with the time I save doing completely manual transcriptions?)

    As I’m just hacking together 50-liners, emacs is all I use at the moment. If my pipe-dreams ever come true (uh, finishing my M, as a first step, *sigh*), I might take a look at the S60 emulator in December or next year.

  4. Oh my word, you legend. Awesome find!

    I submitted a bug report here about this:
    https://bugs.launchpad.net/ubuntu/+bug/173126

    Do you think this can be fixed by something in the application, i.e. Mpowerplayer, flushing the socket or something similar more frequently?

    The windows application to change some tcp settings is http://www.dslreports.com/drtcp
    OR
    http://www.speedguide.net/downloads.php

    Cheers.

  5. ” Daniel T Chen wrote 14 hours ago: Is this symptom still reproducible in 8.10 (which uses an accepted-better TCP algorithm)?”
    https://bugs.launchpad.net/ubuntu/+source/procps/+bug/173126/comments/2

  6. Buks van Tonder

    I’ve found an alternate solution.
    Download the mpp-sdk “mpowerplayer sdk for java”
    run the command as spesified “java -jar player.jar” this wil open the mpowerplayer.

    Download a jad file from http://www.mxit.co.za/wap

    open the jad file with mpowerplayer and voila.

  7. I’m busy developing a MXit connection manager for Telepathy/Empathy on Linux.

    http://code.google.com/p/telepathy-mixer/

    It is still a while from being called stable, but give it a try if you are desperate.

    You might still have the network issue mentioned in this post – the same fix will work.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>