In this new post, I talk about the newest modifications I needed to perform to the Nintendo Wireless Keyboard.

In questo nuovo post, parlo delle nuovissime modifiche che ho dovuto apportare alla Nintendo Wireless Keyboard.

The return of the Nintendo Wireless Keyboard, Colemak and beyond

In the beginning of March, my computer delayed my studies and my projects. One day, while programming a personal project in C, without even inform me of its decision, the laptop screen decided to "call it a night". I couldn't see anything anymore, the computer would boot, but the laptop screen was like trying to be lit up, but couldn't. In order to perform a backup before taking the laptop to the technician, I had to attach it to a VGA monitor that we used back in the day with an Amiga 1200. While waiting for the laptop to be repaired, I tried to use the tablet to perform most of the operations.

If you remember my previous post, you'll know that I'm using the Colemak layout since november, and I don't want to lose the habit by using QWERTY again, so I needed to set it to the Galaxy Tab. There is a Colemak layout for Android, but I personally have two problems with it:

  1. It's the standard Colemak (that is, no Italian symbols)
  2. It's a softkeyboard

I never was a big fan of touch screens you see, I mean how can you possibly type, or even worse, play videogames that require gamepad-like buttons on a screen? It's a screen! It's not like you can feel if you pressed something.
Anyway, soon after the publication of my previous post, my modified keyboard showed problems with wiring, so I couldn't use it anymore.
I decided to put stickers on the other ones, but I always forgot to apply them, in the end, my hands learnt (still not perfectly) the actual position of the keys without stickers.

If you are one of those who follow me since the beginning, you'll know that in the past I dealt with what is called Nintendo Wireless Keyboard (from now on, I will abbreviate in "NWK").
This keyboard was made by Nintendo (pretty well made actually, I still haven't change the batteries!) to be used with the DS game "Learn with Pokémon: Typing Adventure" released in Japan (2011), Europe (2012) and Australia (2013), strangely, the game was not released in North America.
The keyboard is a standard QWERTY, but nothing prevents me to change the Android files for it and make it Colemak (especially now, that I can type without having stickers).

Looking back at the files I released, I am not very satisfied, because when I edited back then, I did it in a weird way. So I've decided to do both, make a Colemak layout and improve the one I made at the time. While reading information about the game, I noticed that the countries of Europe where the game was released were very few (Italy, France, Spain, Germany and United Kingdom) and the Australian release used the same keyboard as the UK one (again, strange, considering that Australian keyboards are similar to the American ones).
Because the total number of different NWKs is six (European countries plus Japan), I thought "well, I have to edit the Italian one, why not making all of them? They are a handful".

The only problem I had was that I couldn't purchase other versions of the game, so, the first problem was of technical nature, and as far as I could see, I was the second person to publish Android files for this peripheral. So, I couldn't be sure if all the keyboards were the same (product id, scancodes...).

I started by studying the keyboards by looking at the available images on the web and I've discovered some interesting stuff:

  • All the European NWKs have the same number of keys and same physical location (high probability that the scancodes are the same in all of them)
  • Even the Japanese NWK has the same number of keys, and almost the same key physical location. The differences with the European ones are:
    1. It doesn't have the "AltGr" key
    2. It has another key next to Backspace (not present in European NWKs) used for the yen symbol
    3. The key next to the left Shift in European NWKs, is located near the right Shift

Because there were differences, I feared that every keyboard had different scancodes, which led me to think that without the actual keyboards I couldn't do anything.

I still decided to continue researching, and in the end, I come up with a "brilliant idea". I was, of course, searching by using what Japanese people call "romaji" (roman, latin characters), so, what if I searched using the Japanese language?
What I did was searching for the title of the game in Japanese characters appending something like "android" and "product id" at the end of the query.
Thanks to this, I've come across this project, made by a Japanese developer, way before me. Basically, these are the files to correctly map the Japanese NWK to Android.
These were a revelation for me, first of all, the product id for the Japanese NWK is "1001" (my Italian NWK reported "1003"), and second, except for the different keys I have mentioned, all the other keys HAVE THE SAME EXACT SCANCODES in both, Italian and Japanese keyboards. From this fact, I deduce that the scancodes for the Italian NWK are valid for all the European NWKs.

Now, because the Japanese NWK has been covered already, I've decided to provide files only for the European ones.
I want to say that I'm still not sure about the product id, my theory is that it is equal for all the European NWKs. If you happen to own one of these, pair it up to a GNU/Linux distribution, and use the following command to see what is its product id:

cat /proc/bus/input/devices

You're going to find the files for the keyboards in the project "Nintendo Wireless Keyboard Android Keymap".

I hope these will be useful to you, if you have any question, suggestion, maybe, further information on these keyboards, or simply you want to leave a comment, please do it, I'll be glad to read.

Greetings from Antonio Daniele.
Have a nice summer!
See you in September.

Go back to the top, Share, Look at the comments or Comment yourself!

Il ritorno della Nintendo Wireless Keyboard, Colemak ed oltre

All'inizio di marzo, il mio computer mi ha fatto ritardare gli studi e i progetti. Un giorno, mentre programmavo un progetto personale in C, senza farmi la cortesia di avvisare, lo schermo del portatile mi ha "augurato la buona notte". Non vedevo più nulla, il computer si avviava, ma era come se lo schermo del portatile cercasse di accendersi, ma non ci riusciva. Per poter effettuare il backup prima di portare il portatile dal tecnico, ho dovuto attaccarlo su un monitor VGA che usavamo ai tempi dell'Amiga 1200. Mentre attendevo che il portatile venisse riparato, ho cercato di usare il tablet per effettuare la stragrande maggioranza delle operazioni.

Se ricordate il mio post precedente, saprete che da novembre utilizzo la disposizione Colemak, e non volevo perdere l'abitudine utilzzando di nuovo la QWERTY, quindi dovevo impostare tale disposizione sul Galaxy Tab.
C'è una disposizione Colemak per Android, ma personalmente ho due problemi con questa soluzione:

  1. È la Colemak normale (ovvero, niente simboli italiani)
  2. È una tastiera software

Non sono mai stato un grande fan degli schermi sensibili al tatto vedete, voglio dire, come si fa a digitare, o anche peggio, a giocare a dei videogiochi che richiedono pulsanti tipo controller su uno schermo? È uno schermo! Non si percepisce se si preme qualcosa.
Ad ogni modo, subito dopo la pubblicazione del mio precedente post, la mia tastiera modificata ha mostrato problemi coi fili, per cui non l'ho potuta più usare. Ho deciso di mettere degli adesivi sulle altre, ma dimenticavo sempre di applicarli, e alla fine, le mie mani hanno imparato (ancora non perfettamente) le posizioni dei tasti.

Se siete di quelli che mi seguite fin dal principio, saprete che in passato mi sono occupato di quel che viene chiamata Nintendo Wireless Keyboard (d'ora in avanti, abbreviata in "NWK").
Questa tastiera è stata fatta da Nintendo (molto ben fatta, non ho ancora cambiato le batterie!) per essere usata col gioco DS "Impara con Pokémon: avventura tra i tasti" rilasciato in Giappone (2011), Europa (2012) e Australia (2013), stranamente, il gioco non è stato rilasciato in Nord America.
La tastiera è una comune QWERTY, ma niente mi vieta di cambiare i file Android e renderla Colemak (specialmente adesso, che so digitare senza gli adesivi).

Riguardando i file che rilasciai, non sono molto soddisfatto, perché allora li modificai in maniera strana. Quindi ho deciso di fare ambedue le cose, fare una disposizione Colemak e migliorare quella che avevo creato ai tempi. Mentre leggevo le informazioni sul gioco, ho notato che le nazioni europee in cui il gioco è stato rilasciato erano poche (Italia, Francia, Spagna, Germania e Regno Unito) e il rilascio australiano usava la stessa tastiera del rilascio del Regno Unito (di nuovo, strano, considerando che le tastiere australiane sono simili a quelle americane).
Poiché il numero totale di NWK è sei (Stati europei più Giappone), ho pensato "Beh, devo modificare quella italiana, perché non farle tutte? Sono una manciata".

L'unico problema che avevo era che non potevo comprare altre versioni del gioco, quindi il primo problema era di natura tecnica, e per quanto ho potuto vedere, io sono la seconda persona che ha pubblicato file per Android di questa periferica. Quindi non potevo essere sicuro che tutte le tastiere fossero uguali (product id, scancode...).

Ho iniziato a studiare le tastiere guardandone le immagini disponibili sul web, ed ho scoperto cose interessanti:

  • Tutte le NWK europee hanno lo stesso numero di tasti e stessa posizione fisica (con alta probabilità che gli scancode fossero gli stessi)
  • Anche la NWK giapponese ha lo stesso numero di tasti, e quasi la stessa posizione fisica. Le differenze con quelle europee sono:
    1. Non ha il tasto "AltGr"
    2. Ha un altro tasto accanto a Backspace (non presente nelle NWK europee) adibito al simbolo dello yen
    3. Il tasto accanto al Maiusc sinistro nelle NWK europee, è collocato vicino al Maiusc destro

Poiché c'erano differenze, temevo che ogni tastiera avesse scancode differenti, il che mi ha portato a pensare che senza avere le tastiere vere e proprie, non potevo far niente.

Ho comunque deciso di continuare a cercare, e alla fine, mi è venuta una "brillante idea". Io ovviamente, cercavo usando quel che i giapponesi chiamano "romaji" (caratteri romani, latini), perciò ho pensato: "e se usassi la lingua giapponese?".
Quel che ho fatto è stato cercare il titolo del gioco coi caratteri giapponesi, e aggiungere cose del tipo "android" e "product id" alla richiesta.
Grazie a ciò, mi sono imbattuto in questo progetto, fatto da uno sviluppatore giapponese, molto prima del sottoscritto. In pratica, questi sono i file per mappare correttamente la NWK giapponese su Android.
Sono stati una rivelazione, prima di tutto, il product id della NWK giapponese è "1001" (quella italiana riportava "1003"), e in secondo luogo, eccetto i due diversi tasti che ho menzionato, tutti gli altri tasti HANNO GLI STESSI IDENTICI SCANCODE in ambedue le tastiere, quella italiana e quella giapponese. Da questo fatto, deduco che gli scancode della NWK italiana sono validi per tutte le NWK europee.

Ora, poiché la NWK giapponese è stata già fatta, ho deciso di fornire i file solo per le NWK europee.
Voglio dire che non sono ancora sicuro riguardo il product id, la mia teoria è che è uguale per tutte le NWK europee. Se possedete una di queste, collegatela a una distribuzione GNU/Linux, e usate il seguente comando per vedere il suo product id:

cat /proc/bus/input/devices

Troverete i file per le tastiere nel progetto "Nintendo Wireless Keyboard Android Keymap".

Spero che vi tornino utili, se avete domande, suggerimenti, magari, ulteriori informazioni su queste tastiere, o banalmente, volete lasciare un commento, fate pure, sarò felice di leggere.

Saluti da Antonio Daniele.
Passate una buona estate!
Ci si vede a Settembre.

Torna in cima, Condividi, Guarda i commenti o Commenta tu stesso!