Kindle Terminal With Secret Key-press Activation

[Luigi Rizzo] has been working on some hacks for his 3rd generation Kindle. There is already a Python based terminal emulator called AjaxTerm but he wanted a lightweight standalone so he reimplemented the program in C. The 100k binary monitors the keyboard, launching the terminal emulator when it detects a Shift-T sequence. It also uses alternative key mapping to fill in for some of the keys the Kindle’s keyboard is missing.

We haven’t seen a whole lot of Kindle hacking since it was hacked to run Ubuntu. Seems like this terminal emulator is a useful and unobtrusive hack to try out on the beloved reader.

Rendering A 3D Environment From Kinect Video

[Oliver Kreylos] is using an Xbox Kinect to render 3D environments from real-time video. In other words, he takes the video feed from the Kinect and runs it through some C++ software he wrote to index the pixels in a 3D space that can be manipulated as it plays back. The image above is the result of the Kinect recording video by looking at [Oliver] from his right side. He’s moved the viewer’s playback perspective to be above and in front of him. Part of his body is missing and there is a black shadow because the camera cannot see these areas from its perspective. This is very similar to the real-time 3D scanning we’ve seen in the past, but the hardware and software combination make this a snap to reproduce. Get the source code from his page linked at the top and don’t miss his demo video after the break.

Continue reading “Rendering A 3D Environment From Kinect Video”

C# Portable Settings Provider

We live in a world where everything must be portable, ranging from mobile applications to making an application able to run on Linux, Windows and OS X.  Making a C# application to be completely portable across all windows computers is a problem that Microsoft knows about and willingly admits they will not fix. [Mike] from Geek Republic has taken it upon himself to show us how to hack up some code to make your programs portable.  This code is a good push forward for people loving the portability of modern applications. He will admit that bugs may exist so be on the lookout and he would probably appreciate the feedback.  Looking forward to a fully working provider so that .NET applications can be carried wherever people go!

Under-desk RGB Keyboard Lighting

[Jay Collett] was having trouble seeing his keyboard when the room was dim. But throwing a light under the desk just didn’t seem cool enough. Instead he built an RGB light board that is controlled by his desktop. The board is based around an ATmega328 with the Arduino booloader. He etched a single-sided PCB to connect it to a group of five RGB LEDs, with a programming header for an FTDI cable. The board communicates with a PC via serial connection, with a C# control application that [Jay] coded to control the color. We’ve embedded a couple of videos after the break but check his page for a package of code and hi-res pictures.

If you want something cool that’s a little bit less work to build check out the EL-wire keyboard from this links post.

Continue reading “Under-desk RGB Keyboard Lighting”

AVR Programming 03: Reading And Compiling Code

In the last installment of our tutorial series we built a simple circuit on a breadboard and programmed an ATmega168 to make it run. That proves that you know how to follow directions, but the eureka moments of doing everything yourself are on the way. This time around you will get down and dirty with the datasheet, learning where each line of the sample code came from, and give your recently installed compiler a test drive. We will:

  • Talk about bitwise operators and how they work when coding for microcontrollers
  • Discuss C code shorthand
  • Review the sample code from Part 2 and talk about what each line of code does
  • Learn to compile code

If this is the first you’ve heard about our AVR Programming series, head back to Part 1 and start from the beginning. Otherwise, take a deep breath and we’ll being after the break.

Series roadmap:

Continue reading “AVR Programming 03: Reading And Compiling Code”

C Sharp Development 101 – Part 2: Toolbox Controls

In this tutorial we are going to start finding out more about the toolbox we utilized in the previous tutorial.  The Controls available in the toolbox are quite extensive and allow users to simplify a variety of everyday tasks such as manually creating and instantiating a textbox on a windows form.  At the end of this tutorial you should be comfortable finding Controls in the Visual Studio Toolbox, alter or produce code to link tools together using event handlers and ultimately get a better sense of Visual Studio, it’s layout and how to easily navigate it.

Open Call: Send Us Your Debounce Code

If you’ve ever designed an embedded system with at least one button you’ve had to deal with button debouncing. This is also know as contact bounce, a phenomenon where a button press can be registered as multiple button presses if not handled correctly. One way to take care of this is with a hardware filter built from a resistor-capacitor setup, or by using a couple of NAND gates. We find that [Jack Ganssle] put together the most comprehensive and approachable look at contact bounce which you should read through if you want to learn more.

We’re interested in software solutions for debouncing buttons. This seems to be one of the most common forum questions but it can be hard to find answers in the form of reliable code examples. Do you have debounce code that you depend on in every application? Are you willing to share it with the world? We’d like to gather as many examples as possible and publish them in one-post-to-rule-them-all.

Send your debounce code to: debounce@hackaday.com

Here’s some guidelines to follow:

  • Please only include debounce code. Get rid of other unrelated functions/etc.
  • You should send C code. If you want to also send an assembly code version that’s fine, but it must be supplementary to the C code.
  • Please comment your code. This will help others understand and use it. You may be tempted to explain the code in your email but this info is best placed in the code comments
  • Cite your sources. If you adapted this code from someone else’s please include a note about that in the code comments.

As an example we’ve included one of our favorite sets of debounce code after the break. Please note how it follows the guidelines listed above.

Continue reading “Open Call: Send Us Your Debounce Code”