Category Archives: Anime

All about Japanese animation

xd-a7400_s

Accessing Casio EX-WORD 電子辞書 from Linux

I’m a (happy!) owner of a Casio EX-WORD Dataplus 5 XD-A4700, a Japanese electronic dictionary. Recently I looked into updating the Japanese-English dictionary (currently the Shogakukan PROGRESSIVE dictionary) installed, because it’s not good enough: too often when looking up odd sentences (like the ones in Fate/Extra CCC) I do not find any matches.

EDICT is adequate, and while I can use it on my phone and tablet, I like the fact that the EX-WORD has a physical keyboard along with the stylus, and a very nice kanji handwriting recognition. After a bit of looking, I found the 5th Edition of the New Kenkyusha dictionary, offered as microSD card,  to be what I needed (but a bit pricey, 10,500 yen on Amazon, and that’s heavily discounted!).

There’s of course one little problem. Although these products have accompanying software, it is in Windows format only.And I’m using Linux. Of course I could just plug in the microSD, but what if I wanted to to move the dictionaries to the main internal memory?  What to do? Although there’s an USB port, the EX-WORD does not operate like a USB mass storage device: communicaation is done through OBEX and specific commands to load, view and install dictionaries (along with listing, download and upload files to the SD card and the internal memory).

Looking through the Internet led me to the libexword project, a library which provides a way to access these electronic dictionaries and a command-line application, and this post deals on how I made it work for me (but notice, it may not work for you).

First of all we needed a checkout of the sources:

git clone https://github.com/brijohn/libexword.git

Then we need to switch branches, because most of the ongoing work is not in the master branch, but instead in the 2.0-dev branch.

cd libexword
git checkout -b 2.0-dev origin/2.0-dev

To this point onwards you’ll need autotools (autoconf, automake) and the libusb development headers installed, along with Python and SWIG (a bindings generator). Run then

./autogen.sh
./configure --prefix=<prefix> # I used /usr for system wide install

If you don’t specify a prefix, the library and the application will be installed to /usr/local. autogen.sh may complain about a missing AM_PROG_AR (it did on my openSUSE system), so edit configure.ac and add AM_PROG_AR around line 15, then rerun autogen.sh.

After this, issue

make
sudo make install

Or become root and issue make install (assuming you’re installing to a system prefix).

Next, you need to get your 電子辞書 and connect it via USB. The kernel will not seem to find it, but it’s normal. Hit the お気に入り/ライブラリー key twice on the dictionary, then move with the arrows until you highlight 通信 (aka “transmission”). After that, push the translate button (訳) and you’ll see the Linux kernel identifying our dictionary (strings may change depending on the model):

usb 2-1.6.1: USB disconnect, device number 8
usb 2-1.6.1: new high-speed USB device number 9 using ehci-pci
usb 2-1.6.1: New USB device found, idVendor=07cf, idProduct=6101
usb 2-1.6.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
usb 2-1.6.1: Product: CESG502
usb 2-1.6.1: Manufacturer: CESG502

Now we need to access the dictionary. However, unless you set up specific rules in udev, only root will be able to access the device. You can create a file in /etc/udev/rules.d called 99-exword.rules with the following:

SUBSYSTEM=="usb", ATTR{idVendor}=="07cf",ATTR{idProduct}=="6101",  MODE="0666"

and then refresh the rules with

udevadm control --reload-rules

After all of this is done, run exword and connect to the device:

$ exword
Exword dictionary tool.
Type 'help' for a list of commands.
>> connect
connecting to device...done
\_INTERNAL_00\ >>

“connect” takes different options: check with “help connect” for what you need specifically.

We can change between paths using the setpath command:

setpath drv0:/// # Root of internal memory
setpath crd0:/// # Root of SD
setpath drv0:///CASIOTXT # Move to the CASIOTXT directory in the internal memory

Notice however that some directories can’t be accessed.

You can list files with the list command (a truncated output shown below):

\_INTERNAL_00\ >> list
<sys_bak>
maintch.wrk
fav.inf
line3.inf
linecd.inf
<SOUND>
<CASIOTXT>
drvvewer.inf
lngfile.inf
<data>

There are also other commands: use “help” to see them all. Issue “disconnect” when you are done, and “exit” to exit the program.

There’s also a Python binding made using SWIG: I’ve yet to play with it.

The libexword developer has also created some GUI tools to mimic the Windows EX-WORD tools (which, it must be noted, work only with the Japanese dictionaries). You can get them at the exword-tools git repo. The procedure for installing them is the same as above (including the modification to configure.ac). You’ll need the development headers of wxWidgets, however, as this is a GUI application.

After installing, you can launch ExwordLibrary, ExwordTextLoader and ExwordLibraryInstaller. The latter is required to install new dictionaries, and unfortunately involves getting a Windows executable and placing it under PREFIX/share/exword, where PREFIX is the path you gave to the libexword configure script. This also means you need wine to run it.

Once that is done, you can use the library application:
exwordlib

 

or the installer to install dictionaries:

exword-dict

And that’s all. I hope this has been useful for using your electronic dictionary with Linux!

Unexpected Christmas gifts: THE IDOLM@ASTER

Sometimes Christmas presents are really unexpected, and today I found out I was given one such gift: the limited edition of THE IDOLM@STER 2, PS3 version. It was quite a bulky box, showing all the main characters from the game (and from the recently-ended anime) (click to enlarge):

Side showing Chihaya, Hibiki and Azusa
Of course, having such a box means that there’s a lot of stuff inside. In fact, once opened, there are two game BDs (one being the actual game, the second being the first volume of Gravure for you! starring Haruka), a soundtrack (no songs, though), a booklet, a number of postcards (mine were showing Iori’s ending from episode 2 of the TV series), a booklet and also the first BD of the anime version:
It turns out the BD is also one of the limited editions, with a nice cover and more goodies, including a small booklet and a CD with the songs heard in the episodes:
And here are the postcards:
What about the game itself? Well, I have played it only briefly so far: I know it will be a bit painful to translate since the text is timed (having it stop, like in Neptume mk.2 is quite handy if you don’t catch something at first) and well, kind of different than the games I played so far. Still, in my opinion the various characters make it a worthwhile challenge.