Monday, July 15, 2013

Full O'Fun with the "FEZ Game-O", an open-source .Net Micro Framework console

GHI Electronics - FEZ Game-O, an open-source console

GHI Electronics believes in the importance of education and the quality of nurturing future generations. The all new FEZ Game-O is a programmable handheld console that lets developers develop applications using Microsoft Visual Studio with C# and Visual Basic. Developers and students learning how to program on the FEZ Game-O can use the same knowledge to develop applications for computers. Similarly, developers that already know C# and Visual Basic (.NET) already know how to program FEZ Game-O.

Not only is it easy to code but having .NET Micro Framework at its core allows the device to be programmed using just a USB cable. Debugging is also supported over USB, from breakpoints and stepping in code to inspecting variables and invoking commands.

We made FEZ Game-O even more awesome by making it all open source! Advanced users can show off their skills by tweaking the core software and even connect JTAG to run native software, using their favorite IDE or even use GCC with command line. We also invite the entire community to continue this open platform and write open source applications and games.

The core of FEZ Game-O is a 32-bit 168Mhz Cortex-M4 processor, STM32F407. This powerful little microcontroller is capable of running all kinds of arcade games and even a software 3D rendering. Advanced users can take advantage of the RLP feature, which allows native code to be invoked from within C# or Visual Basic.

FEZ Game-O is a hacker-friendly device. We want you to open it! Inside, you will find a MicroSD socket, a placement to solder a Bluetooth module (not included) and few IOs. We did not forget about JTAG/SWD and kept it available.

We are releasing FEZ Game-O on Kickstarter, a crowdfunding platform. You can pledge to help us out and be among the very first people to receive one of the best educational tools available, FEZ Game-O. Coding will be more fun than ever before!

..." [GD: Post Leach Level: 99%]

Kickstarter campaign, Open-source programmable hand-held console, FEZ Game-O

Learn how to program your own applications and games on this open-source hand-held console.

We believe anyone should be free in how they use their devices. We also believe that writing applications and games on an open-source platform is a great way to learn programming, for both kids and adults. We have built FEZ Game-O from the ground up with these two beliefs in mind. 

FEZ Game-O is an open-source hand-held programmable console.  With it you can accomplish more in less time as it is programmed using Microsoft's Visual Studio, in C# and Visual Basic (.NET). These are the same tools that professionals use today to create all kinds of applications and games for Windows PCs. A developer who knows C# or VB already knows how to program the FEZ Game-O and a beginner learning C# or VB on FEZ Game-O can use that same knowledge to program a PC.

The goal of FEZ Game-O is not to compete with other closed-source platforms or to sell overly priced games. Instead, we want to build an open-source platform with a community where you will obtain the application for free and even receive the source code of that application as well. We want you to share your work, learn from and improve other's work ... this is the FEZ Game-O mentality.

...

Advanced Users

There are many options for advanced users. For example, the core libraries include a feature that allows users to load native code within NETMF code (Runtime Loadable Procedures) where game logic can be done with managed C# or VB but the critical inner loops can be done in C or assembly.  This is similar to how DLLs function on PCs. Below is an example of a 3D software raycast rendering.

...

Can FEZ Game-O emulate a classic console?

Yes it can! We currently do not have any emulators in development but it is possible to emulate many of the classic consoles. We have a feeling someone in the community will port an emulator. Will that be you?

How easy is it?

Below is a snippet of code to show you how easy it is program the FEZ Game-O using C#. The code shows you how to draw a circle, line, text and bitmap on the LCD.

...

Manufacturing Timeline

  • Place order for additional parts (July)
  • Place order for additional PCBs (July)
  • Start circuit board assembly (August - October)
  • Hand assembly of remaining parts (August - October)
  • Quality Check (August - October)
  • Shipping of backer rewards (August - October)

What we will provide

  • FEZ Game-O console with protective pouch and USB cable
  • FEZ Game-O Eagle design files
  • FEZ Game-O board schematics
  • FEZ Game-O 3D PDF
  • FEZ Game-O SDK compatible with both Visual Studio 2010 and Visual Studio 2012
  • FEZ Game-O tutorials and access to a community-driven code-base

...

FEZ Game-O

image

*** This product is being launched on Kickstarter, learn more . ***

FEZ Game-O is a programmable console that is ideal for education and for open-source application development. Its hardware hosts a powerful 32bit 168MHz STM32 Cortex-M4 processor with 1MB of RAM, combined with a 320 x 240 color display, 3D accelerometer and audio circuitry.

By default, FEZ Game-O ships loaded with the .NET Micro Framework (NETMF) sytem, which allows developers to connect it to a PC using a USB cable then use Visual Studio (even the free express version) to program it, using C# or Visual Basic.

Also with an available JTAG/SWD connection, developers can load any ARM Cortex-M4 compiled-code on the core micro-controller, using their favorite IDE or even using the command line with GCC compiler

FEZ Game-O is open source with all hardware design files provided in EAGLE format. The .NET Micro Framework software is also completely open source.

Key Features

  • Cortex-M4 168Mhz microprocessor
  • 1024KB FLASH
  • 192KB RAM
  • 320 x 240 16-bit TFT display
  • 3D Accelerometer
  • Speaker
  • Volume control
  • USB Connection (for loading and debugging applications)
  • Bluetooth option (see below)
  • JTAG/SWD (for advanced users)
  • Runs off 3xAAA batteries

I was backer #8... :)

2 comments:

Anonymous said...

can you begin with fez game o, if you have never had any expierience with coding?

Greg said...

I think that would be tough. Not impossible, but the initial learning curve would be steep. You'd have to learn C# or VB, learn .Net, learn the Micro Framework (a subset of .Net) and learn general programming and game development...

That said, there's a number of great resources to help you do that, like http://channel9.msdn.com/posts/Beginner