Subscribe to the newsletter to be alerted the moment FunKey is ready

* indicates required

All your games on your keychain !

FunKey is a tiny yet comfortably playable multi-emulator handheld gaming console that anyone can carry on their keychain. Bored in transports, sleeping in class or simply having a few minutes to kill? Pop up your FunKey from your ever-carried keychain and start back your favorite game right where you left it.

Tiny

Tiny

FunKey is only 42.5x44.5x13.8mm when closed (1.67x1.75x0.54").
It's the perfect size to fit on a keychain.
A lot of fun packed in a very tiny and cute design.

Foldable

Foldable

FunKey's foldable has many advantages:
- Large comfortable buttons
- Optimized screen size of 1.52" with a resolution of 240x240
- Automatic standby/wake when closing or reopening.
- Strong protected shell when closed

Powerful

Powerful

FunKey is powerful enough to emulate all your favorite retro consoles at full speed: NES, SNES, Gameboy, GBA, PS1, Sega Genesis, Sega Master System, GameGear, WonderSwan, and more...

Characteristics :

Dimensions : 42.5x44.5x13.8 mm / Processor: ARM Cortex-A7 @ 1.2GHz / RAM: 64MB DDR2 / Storage : SD card 16GB / Display : LCD IPS screen, 1.52”, 240x240 px / Audio : 10 mm mono speaker, 500mW / Battery : 420mAh Li-ion battery for hours of gameplay / Recharging and loading games via Micro USB port

The FunKey Team

The FunKey Team is based near Bordeaux in France

Vincent BUSO

Vincent BUSO

Founder & Firmware engineer
Michel STEMPIN

Michel STEMPIN

Founder & Electronic engineer
David LARBI

David LARBI

Co-Founder & Mechanical engineer

Latest news and articles

Layout: Screen FPC Extender

LCD Screen

The chosen LCD screen for the FunKey console is awesome:

Hinge

The FunKey console uses a foldable design in order to reduce the device size when not in use, and maximize both the screen and keypad size when playing. The screen flat cable must then go into the hinge, and in order to avoid too much stress that would eventually lead to broken cables, it must be “rolled” into it like a flypaper in order to divide the stress over the longest possible length.

Unfortunately, the stock LCD screen ribbon cable is not long enough. This is of course something that the manufacturer can customize, but this costs a fixed tooling fee of $800… We plan to go this way for mass production, but this sounds like a lot of money for the prototyping phase only.

FPC Extender

So, we decided to use cheaper alternatives for our prototypes:

  • for the Revision A, we used individually soldered thin enameled copper wires and an ultra small PCB placed into the hinge: definitely not something to use for more than 2 boards!
  • for the Revision B, we decided to invest some money into a customized FPC (Flat Printed Cable) as we can get 5x FPC prototypes for ~$100 at PCBWay

The problem is: I never designed FPCs before 😉

I got some basic hints from one of my colleague:

  • the copper density must be as constant as possible
  • the traces must use smooth curves instead of sharp angles to avoid tearing during flexion

However, a few questions remained unanswered:

  1. what material and thickness to use for the stiffeners?
  2. what material and thickness for the flex itself?
  3. which stack-up?

I decided to crawl the Web for more information, and here is what I found, I hope this may help some other PCB designers:

Stiffeners

Stiffeners are used over some parts of the FPC cable for various reasons, and I found this page very informative. Basically:

  • stiffeners in FR4 (epoxy) material are added below components to protect solder joints: this is exactly what we will need for our connectors!
  • stiffeners in polyimide (yes, this is the famous “PI” acronym that you meet everywhere, including on the SAEF screen datasheet!) are used to bring thickness to a given value in order to meet the ZIF (Zero Insertion Force) connector requirements
  • aluminum or metallic stiffeners are used as heatsinks in order to dissipate temperature from power components

The stiffener thickness is variable, but is generally between 0.2 mm and 2 mm. I chose FR4 stiffeners with a 0.2 mm thickness as it is the thinnest, but also because this is the thickness for the original SAEF screen stiffener, too.

Flex

For the flex cable itself, I found this slideshow containing a lot of details.

I learned that:

  • a flex is made up of Polyimide (“PI”, aka Kapton which is a trademark from DuPont)
  • Pyralus is another trademark from DuPont for the sandwich including the PI film, the glue and copper laminate, the glue and the PI “Coverlay” (for “Coating Overlay”)
  • the copper can be in rolled Annealed (“RA”) form, or obtained by electro-deposition (“EP”), the former being more common and cheaper
  • for a single or double-sided flex, the minimum bend radius is 6x the total thickness, 12x when using more layers
  • indeed, using curved traces is better that sharp-angled ones!
  • vias should feature “teardrops” to avoid problems with the larger drill / copper / coating registration tolerances for FPCs
  • a hatched ground plane is recommended in order to reduce weight and increase flexibility

With all these elements now clear, I decided to use PI with rolled-annealed copper foil (“RA”) to reduce costs.

Stack-Up

For the layer stack-up and dimensions, I found these 2 links useful:

https://www.epectec.com/flex/material-stackup.html

http://www.asia1tec.com/goodies/FPC_material_datasheet.pdf

The second link shows a stack-up for a common double-sided FPC thickness (without the stiffeners) of 0.196 mm and provides the constitutive materials, for which I found the corresponding datasheets:

https://www.sas-electronics.de/downloads/FL_SF302.pdf

https://www.pcbglobal.com/files/SF302C%20Coverlay.pdf

Please note that with a SF302 0511210DR laminated PI core instead of the SF302 101820DR one, the total thickness lowers to 0.151 mm when keeping the same COverlay. This will probably be my final choice to achieve a greater flexibility.

Layout

Here is my custom layout. Please mind the gap in the hatched ground plane on the bottom side, which is designed to “guide” where the flexion (roll) should take place:

Layout: Screen FPC Extender Update

The previous log detailed the screen FPC extender, used to adapt the stock LCD screen to the FunKey main PCB.

Before launching the FPC fabrication which is quite expensive (~ $100 / 5 pieces), we decided to have a dry run using a paper mock-up. Here is the result:

We covered the old Rev. A PCB with a paper print of the new Rev. B one, and created a paper version of the flex, gluing the connectors on them at the right positions. As you can see, the result is not too bad.

This was until we tried to open the lid flat:

Well, the FPC is a little bit too long, causing a “wave” that totally defeats the original purpose of the “flypaper design”: the small bend radius would certainly cause a failure sooner or later.

Moreover, the FPC is a little bit too wide, too, so it interferes with the internal ribs somehow.

So, back to the drawing board, we decreased the length by 2 mm, and the width to 4 mm, here is the result:

Much better! And the behavior when opening / closing the lid is also improved:

Here are the corresponding layouts:

Meet the team

I tried different angles to approach this log, and writing about us from a third person’s point of view simply wouldn’t work. It was too detached for my taste and it felt hypocritical writing things about myself as another’s POV. Instead I chose the 1st person narrative to talk about our team, “I” meaning “Vincent” in this case. It feels more genuine, and I get to really “tell” our story this way.

FunKey’s project is currently composed of three people which, by order or arrival in the team, are: Vincent (myself) Michel and David. Since we are a small team, the best way to present all of us is simply through FunKey’s story, so here it goes:

Vincent

As some of you may know Funkey started out as a project submitted during the 2017 Hackaday Prize called Keymu. Before explaining why I undertook such a project, let me quickly go over some of my background.

Originally, I studied telecommunications during my master’s in France. Telecommunications is a vast topic that encompasses many areas such as informatics, electronics, networking, signal processing… I specialized in the latter, and during my last year abroad, I quickly drifted towards computer vision, a topic that never ceases to amaze me. After the master’s, I actually continued in this branch during my PhD.

So, yeah, I was a research scholar, in Computer Vision and Machine Learning at the time, pretty far from electronics…

Something always felt missing though, all this high-level knowledge felt shallow without the low-level one. Computer vision is often used on embedded products, allowing them to “see” the world and understand it for us, faster than us. I simply felt the need to know how to build the machines for which we developed these algorithms, in order to understand the whole chain. After my PhD then, I started working as an embedded engineer for a company in France. This is where I met Michel and David for the first time.

When, a few months later, Hackaday published an article about SpriteTM’s tiny console, it was love at first sight. I wanted very badly to build one, not just to own it but because it called to my inner retro-gamer instincts and it was a great way to learn about electronics and embedded software. At the time SpriteTM did not release yet any of the code or designs, hence Keymu was born.

I quickly realized, I undertook something way bigger than expected for a first “side project”. It was completely different than SpriteTM’s design: it was based on a computer module, I needed to develop a custom linux distribution (very different code than for microprocessors, especially the drivers), the mechanical hinge was harder than expected…This is when Michel entered into play.

Michel

It is safe to say that Keymu might have never hatched without him. Apart from helping me with the electronical design, every roadblock I met seemed only small bumps before his incredible experience. He followed the design and all the new ideas from the start, started himself installing the environment for developing the Linux distribution with Yocto, proposed solutions to many encountered problems… All in all, he was already part of the team from the start, he apeared only “officially” in the team during our next project: FunKey Zero but it is simply formalities.

For the purpose of this log, I have asked my partners to present themselves through small bios. Since I started this first narrative point of view, it feels only logical to keep it throughout the log, that is why I prefer to restranscribe their bios as they’ve been provided.

Here is Michel’s:

I started my engineering experience at age 2 (back in 1968) by inserting metallic knitting needles into a live wall socket.

I stumbled upon my first computer (Goupil 2) in January 1980. Shortly after that (and for quite a long time), I got my second computer: an Apple II, still in love with it! I developed my first expansion board for it to hook a Teletype Model 33 from 1963 as a daisy wheel printer over 20mA current loop. I have been developing both hardware and software at the same time since then.

My first Unix steps were in 1984, using a CU connection to the university PDP11. I switched to Amiga 1000 in 1986, and worked mainly on 68k-based custom-made computers until 1996, with lots of business travels worldwide (spent 1 1/2 year in Atlanta, GA, USA during the Olympic Games in 1996).

I discovered Linux 0.9.x in 1994 (Thx to Pierre Ficheux). In 2002 I wrote the iPaq Linux Howto: http://mstempin.free.fr/linux-ipaq/html_nochunks/Linux-iPAQ-HOWTO-1.1.html and since then have used mostly Linux-based systems for my personal work.

I Reverse-engineered the TL-WR703 pocket router hardware in 2012: http://squonk42.github.io/TL-WR703N/ and https://github.com/Squonk42/TL-WR703N

In April 2014 I started the Domino.io project (https://www.kickstarter.com/projects/706167548/dominoio-an-open-hardware-wifi-platform-for-things/description “An Open Hardware WiFi Platform for Things”). We launched a successful Kickstarter campaign in April 2015, with all products delivered to users (almost) on time. They are still available from GL-Inet https://store.gl-inet.com/collections/other-products/products/domino-core-board shop, eBay and Amazon

A lot of experience indeed. At this point I left back FunKey’s story at FunKey Zero. For those who do not know this project, we hit a real roadblock with Keymu, one that could not be overcome this time: the main computer module (Intel Edison) had been discontinuited. In order to improve Keymu, we then developped a board with everything new: processor, storage, display, sound, power management,…

This board was part of our FunKey Zero project submitted in 2018 and was meant to focus on software and electrical development only. We knew Keymu’s hinged design was the only way to go to optimize screen size, buttons thickness, and battery’s autonomy but Michel and I simply did not have enough mechanical design experience to build something fit for production, especially with an active hinge.

This is when David entered the team.

David

To be completely fair, David already knew about Keymu since he helped giving advice when I worked on the mechanical design. After FunKey Zero, we again asked for help reviewing our design and I remember David being instantly on boad (he told me at the time that the project looked really “funky” without even knowing the name was “Funkey”). He was in search of interesting projects to work with, and we were in search for a professional mechanical engineer: it was a perfect match.

As before, here is his bio in his own words:

I have found my calling at age 14 when my parents offered me an electronic discovery kit (before that I wanted to be a road train driver).

To this end I have studied electronic for 9 years. During my last three years of studies, I have discovered electro manufacturing services (EMS) for the first time and had the chance to program my first SMT machine: the CP6 from FUJI: CHIP SHOOTER.
I then worked for 14 years for a company selling cameras designed for industrial applications and scanners for ancient manuscripts.

It is during this time that I have made the switch from electronic design to mechanical design as I self-taught myself how to use SOLIDWORKS. After many hours, I learned to master it and started developing professional mechanical designs.

In 2017, I started my own company (www.novatech-engineering.fr): a mechanical design office specializing in the integration of electronics, the design of plastic injection parts and additive technologies. Projects I designed with my clients are mainly IoT products as well as manual tools (plastic cutters, ZAMAC or magnesium).

I remain passionate and curious about technology in general. The FunKey Project is an adventure full of opportunities to discover and learn. An occasion to conceive, build and sell a very fun product among a pluridisciplinar team, all revolving around a great topic: the retro-gaming.

Back to the story: since then we are equally working on FunKey’s project, as well regarding our respective abilities (software, electrical design, mechanical design) as regarding all other aspects of the project (website, social networks, newsletter, this hackaday page, publicity, emails, commands, production…)

We all have day-to-day jobs but we are working hard during our free time to try and make FunKey a reality.