Showing posts with label Hardware. Show all posts
Showing posts with label Hardware. Show all posts

Monday, April 11, 2011

Turn Your Home Router Into a Super-Powered Router with DD-WRT

Wireless is everywhere and routers are the force that makes it happen, so why not supercharge yours to take proper advantage of it? DD-WRT will let you boost your router’s range, add features, and more.
DD-WRT has a ton of features—more than we can cover in this guide, which is focused on helping you get your router upgraded. Stay tuned, as we’ll go into more depth in a couple more days on all the great things you can do with it, but even if you don’t use the additional features, DD-WRT is worth installing to make your router work better.

What Is DD-WRT?
Here’s our router. Behold: the Netgear WNR2000, revision 2. It’s a mighty fine one, too, but it’s still not the best. Why, exactly? Your router is only as good as its firmware, the software that makes it tick. When you buy a router from Linksys/Cisco, Netgear, D-Link, or others, you’re bound to their software. It’s a nice arrangement; you respect their limitations, and they promise to help with your problems. But what if your warranty’s expired, or you want to shuck their limitations? Maybe you want to take your hardware and push it to its most extreme limits. That’s where DD-WRT steps in.

DD-WRT is an open-source alternative firmware for routers. Its software unlocks features that aren’t present on all routers: static routing, VPN, repeating functions, the list goes on. It also unlocks settings that aren’t accessible normally, like antenna power and overclocking.

Read more: How-to-geek

Sunday, April 10, 2011

The AWESOME Button: A Made-To-Measure USB Input Device

After a quick search of the posts I’ve written for MAKE, it’s clear that I overuse the word “awesome.” It’s not news to me, but I had no idea how bad my problem was. In fact, I think you could say that I abuse the word. In order to cut down on my usage of “awesome” and to help me find suitable replacements, I made The AWESOME Button. It’s a plug-and-play USB device that will type a random synonym for the word “awesome” when the button is pressed. The beauty of it is that it works on any computer with a USB port in any application.

Subscribe to the MAKE Podcast in iTunes, download the m4v video directly, or watch it on YouTube and Vimeo.

How is it made? At the core of The AWESOME Button is the Teensy USB, a really sweet* microcontroller that has the ability to act like a USB mouse or keyboard right out of the box. Not only that, but if you’re most comfortable writing code for the Arduino, you can load your Arduino sketches onto it directly once you install Teensy Loader and Teensyduino on your system. But don’t let that discourage you, they’re both a snap to install.
Of course, I’m not totally serious about this particular application, but I wanted to show how you can make your own custom USB human interface device. If you’re a gamer, you could make a controller exactly to your own specifications. Or perhaps you could hack an Etch A Sketch to control your mouse pointer. I think I want to mod an NES controller so that it works as a Flickr browser. There are many different tremendous* ways you could use this. Leave your terrific* ideas in the comments!

Read more: Make online

Meet IOIO - I/O for Android

ioio-logo.png

I'm very excited to announce the launch of a new product I've been working on for the past months!
IOIO (pronounced: yo-yo) is a product which lets you connect electronic circuits to an Android device and control them from an Android application.

It is comprised of a small (2.7x1.2" = 7x3cm) PCB that connects to an Android device with a USB cable and a software library (Java .jar file) that you use in your Android app which handles all communications with the board.

No firmware programming is required - only Android application authoring with a very simple API (see examples below) for controlling the pins on the board. No modification of the Android device is required - you avoid the complication of modification and the voiding of warranty.

IOIO is available for backorder online from SparkFun on this page.
The first few boards will ship within a couple of weeks. Around that time, the entire software and hardware are going to be 100% open-source with a permissive license.

Main features:

48 total I/O pins - all of which can function as digital inputs and outputs.
Up to 16 analog inputs (10-bit).
Up to 9 PWM outputs.
Up to 4 UART channels.
Up to 3 SPI channels.
Up to 3 TWI (I²C-compatible) channels.
On-board switch-mode regulator providing up to 1.5A of 5V supply. Can charge the Android device as well as power a couple of small motors.
Bootloader on the board pulls firmware off phone, enabling OTA firmware upgrades and application-specific firmware.
Pulse-width measurement, capacitance sensing and more (will be pushed with first OTA firmware upgrade).

Example Code

Just to give you a hint of how simple it would be to write apps using IOIO, here is a small snippet from an app, which controls a single servo motor (on pin 12) and reads a single potentiometer (on pin 40). Exception handling and proper closing have been omitted for clarity.

ioio.waitForConnect();
AnalogInput input = ioio.openAnalogInput(40);
PwmOutput pwmOutput = ioio.openPwmOutput(12, 100);  // 100Hz
while (true) {
  float reading = input.read();
  pwmOutput.setPulseWidth(1000 + Math.round(1000 * reading));
  sleep(10);
}

Sunday, April 03, 2011

Even more about CPUs: What is CPU Caching?

Well, the slowest steps in the fetch-execute cycle are those that require accessing memory (Englander, 2007). CPU caching is a technique developed to minimize the impact that accessing memory has on the overall processing performance of a CPU.

The technique involves placing a small amount (or multiple amounts) of high-speed memory between the CPU and main memory. This memory is referred to as cache memory, which contains copies of data stored in main memory. Because cache memory is generally located on the CPU itself, or in locations which are quicker to access than main memory, the technique serves to improve processing performance by reducing the number of trips across the memory bus required to access data stored in main memory. Briefly, this is how it works:

Cache memory differs from regular memory in that it is organized into blocks. Each block provides a relatively small amount of memory (generally 8 or 16 bytes) and containing copies of data from the most frequently used main memory locations. Each block also contains a tag with the address of the data in main memory that corresponds to the data being held in the block.
For each step in the fetch-execute cycle that requires accessing memory, the CPU first checks to see if the data exists in the cache before referencing main memory. The CPU accomplishes this through a component called the cache controller, which examines the tags to see if the address of the request is already stored within the cache.

If the CPU determines that the data is already stored in cache, it uses it as though it were stored in main memory; thereby, saving the performance cost of having to access memory across the memory bus. If the data is determined to not exist in the cache, the data is copied from main memory to the cache to potential later reuse.

When multiple separate amounts of cache memory are implemented, they are referred to as levels of cache. The level closest to cache controller, which is also generally the fastest to access, is referred to as L1 (for level 1). Subsequent levels of cache are referred to as L2 (level 2) and L3 (level 3); although rarely more than three levels of cache are implemented.

More on Cores: Single Core? Dual Core? Quad Core? What's the Difference?

The core of a processor refers its components, along with system memory, that facilitate the fetch-execute cycle by which computers read (fetch) and process (execute) the instructions of programs. Although the physical implementation of a chip depends upon its architecture, all CPUs consist of two logical components: the arithmetic/logic unit (ALU) and the control unit (CU) (Englander, 2003).
Simply, the ALC is the component of the processor that is responsible for temporarily holding data and all of its performing calculations.

The CU is the component of the processor that is responsible for controlling and interpreting the instructions of a program retrieved from memory by moving data values and their memory location addresses between the different parts of a processor. Each control unit contains three logical subcomponents: the program counter (PC), which contains the address of an instruction to be executed; the memory management unit (MMU), which manages the fetching of instructions from memory; and the input/output (IO) interface, which provides the pipe-work through which the movement of data to and from main memory can occur.

If a processor contains only one set of the aforementioned components, it is referred to as a single-core processor; however, if a processor combines two (dual core), four cores (quad-core), or more processors into a single package, composed of a single integrated circuit, the processor is referred to as a multi-core processor.

Multi-core processors have an advantage over single-core processors; because system resources are shared (i.e. system memory), and facilitates the division of program execution between cores, permitting parallel execution of programs, resulting in an overall performance increase relative to systems with single-core processors; however, the performance gained is not directly proportional the number of additional cores.

Tuesday, January 18, 2011

Boot via USB with an Old BIOS

Dear How-To Geek,
I’m trying to repurpose some old computers by updating them with lightweight Linux distros but the BIOS on most of the machines is ancient and creaky. How ancient? It doesn’t even support booting from a USB device! I have a large flash drive that I’ve turned into a master installation tool for jobs like this but I can’t use it. The computers in question have USB ports; they just aren’t recognized during the boot process. What can I do?

USB Bootin’ in Boise

Dear USB Bootin’,
It’s great you’re working to breathe life into old hardware! You’ve run into one of the limitations of older BIOSes, USB was around but nobody was thinking about booting off of it. Fortunately if you have a computer old enough to have that kind of BIOS it’s likely to also has a floppy drive or a CDROM drive. While you could make a bootable CDROM for your application we understand that you want to keep using the master USB installer you’ve made. In light of that we recommend PLoP Boot Manager. Think of it like a boot manager for your boot manager. Using it you can create a bootable floppy or CDROM that will enable USB booting of your master USB drive. Make a CD and a floppy version and you’ll have everything in your toolkit you need for future computer refurbishing projects. Read up on creating bootable media with PLoP Boot Manager here.

Read more: How-to-geek
Read more: PLoP Boot Manager

Monday, January 17, 2011

KFA2 NVIDIA GeForce GTX 460 WHDI graphics card is first to go wireless

kfa2-gtx-460-whdi-600.jpg


What you're looking at is the world's first wireless graphics card affectionately dubbed the KFA2 (aka, Galaxy) GeForce GTX460 WHDI 1024MB PCIe 2.0. The card uses five aerials to stream uncompressed 1080p video from your PC to your WHDI enabled television (or any display courtesy of the bundled 5GHz WHDI receiver) at a range of about 100 feet. Otherwise, it's the same mid-range GTX 460 card we've seen universally lauded with 1024MB of onboard RAM helping to make the most of its 336 CUDA cores. Insane, yes, but we'd accept nothing less from our beloved graphics cards manufacturers.

Read more: Engadget

HiJacking the iPhone's Headset Port

hijack-ekg.jpg

   Researchers at the University of Michigan describe how to hijack the iPhone's headset port to power peripherals, establish bi-directional communications with them, and interface various sensors, all without jailbreaking your iPhone or having to pay thousands to access to the Apple Dock Connector. This makes it possible for students, hackers, and DIYers to extend the phone's functionality to the physical world. The team is giving away 20 HiJack modules/programmers to enable new apps

Read more: Slashdot

Sunday, January 16, 2011

Kinect hand tracking with WPF 4 and Bing Maps 3-D

I’ve been playing around with Kinect and PrimeSensor in WPF for a bit and have achieved a small technical success that I wanted to share in a new video from InfoStrat. Using the same techniques that allow us to use WPF 4 on Surface 1.0, we can now use depth camera hand tracking to control multi-touch applications.
Here is a very rough proof-of-concept where I’m controlling the InfoStrat.VE WPF 4 multi-touch control using a depth camera.

Read more: DECONSTRUCTING THE NUI

FMBomb - A Beginner's Approach to Hardware Programming

Introduction

In this article, I want to take you through the process of creating your own hardware project. I hope it can serve as an example that working in hardware can be an approachable and a fun hobby for people that are already smart enough to know how to code.
Disclaimer: This is a beginner’s article and as such, I do not use or explain some best practices in hardware construction that would be out of scope for this article. I’m going for quick and simple.

Dispelling Hardware Fears

So right away, I want to attack some of the major reasons not to get into hardware as a hobby, and hopefully convince you otherwise. In talking with people, I found there are really five big reasons that software people don’t get into hardware.

  1. Lack of knowledge in all things electrical
  2. Cost
  3. The dreaded assembly and C programming
  4. Afraid to zap yourself or fry something
  5. Lack of interest
Let me briefly share my opinion on each of these, and then we’ll get to the good stuff. Feel free to skip ahead to the good stuff if you don't want to hear me ramble about each of these. It won't hurt my feelings.

Lack of knowledge in all things electrical

I have a B.S. in Electrical Engineering so I know a little bit about this stuff, but I spent most of my degree solving Fourier transforms, creating PID controllers, and building opamps from scratch. Sure that knowledge helps, but I never touched a microcontroller in college. All my microcontroller knowledge has been self taught while working in my basement. It just takes some effort and a little patience. You’re smart enough to figure this stuff out. Trust me.

Cost

OK, so we all know that writing software is essentially free once you have the computer (how much did that cost you by the way?). Software tools are free for hobby use, and you can accomplish a lot without spending any money. There’s not much we can do here. Hardware parts cost money, but most of the tools to develop firmware are free, and parts are cheaper than you think. And remember, in many cases, you can rip stuff out of those old electronics collecting dust in your attic and give them new life.

Read more: Codeproject

Sunday, January 09, 2011

AMD Puts Out Radeon HD 6000 Open-Source Driver

AMD has just released their open-source driver for the Radeon HD 6000 series graphics cards (sans the Cayman GPUs) with KMS, 2D, and 3D acceleration.

Read more: Slashdot

Tuesday, January 04, 2011

שיפור ביצועי דיסק ה-SATA שלכם על-ידי שינוי הגדרת המערכת מעבודה בממשק-IDE לעבודה בממשק-AHCI

כידוע, טכנולוגיות SATA (או בקיצור Serial Advanced Technology Attachment) היא הטכנולגיה העכשוית אשר בה משתמשים לחיבור דיסקים קשיחים המיוצרים בשנים האחרונות. ממשק החיבור IDE אשר היה נפוץ עד אז (ובהרבה מחשבים גם כיום), אינו נחשב כסטנדרט יותר.
הגדרת הממשק (SATA או IDE) בה עובד מחשב, נקבעת בהגדרות ה-BIOS. על מנת שתהיה תאימות מירבית לכל הממשקים, רב המחשבים מוגדרים כברירת מחדל לעבודה באמצעות ממשק IDE הפחות מהיר, ומשום כך, כאשר נתקין מערכת הפעלה, המערכת תזהה רק את ממשק ה-IDE ותתאפשר עבודה מול הממשק הזה בלבד ברמת ה-Registry. עבודה בממשק זה מביאה ברב המקרים לירידה בביצועי המערכת.
שינוי הגדרת הממשק ב-BIOS מ-IDE ל-AHCI לאחר התקנת מערכת הפעלה, תגרום להופעת מסך כחול עם קוד שגיאה 0x0000007B ברב המקרים, ולא תתאפשר העלאת מערכת ההפעלה עד לשינוי סוג הממשק בחזרה ל-IDE. הסיבה נעוצה בכך שמערכת ההפעלה לא הכירה את ממשק ה-AHCI בזמן ההתקנה ולא התקינה את מנהלי ההתקן (הדרייבר) המתאים לכך.
לשמחתנו, קיימת אפשרות להתערב קצת ב-Registry ולגרום למערכת ההפעלה לזהות את הממשק החדש ולהפעיל את מנהל ההתקן המתאים.
לפני שתמשיכו… שינוי שגוי ב-Regisrty עלול לגרום למערכת ההפעלה שלא לעלות ותדרש התקנה מחדש של מערכת ההפעלה. בצעו גיבוי ל-Registry לפני שתמשיכו בתהליך.
הפעילו את יישום ה-Registry על-ידי לחיצה על התחל – הפעלה (או בשרות החיפוש ב-Windows Vista/7) וכתיבת המילה regedit ולחיצה על לחצן אישור. כאשר נפתח ה-Registry, חפשו את המפתח הבא:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci
image_thumb_3C09516A.png

Read more: Lets blog with Regev

Wednesday, December 29, 2010

Researchers create ultra-fast '1,000 core' processor, Intel also toys with the idea

We've already seen field programmable gate arrays (or FPGAs) used to create energy efficient supercomputers, but a team of researchers at the University of Glasgow led by Dr. Wim Vanderbauwhede now say that they have "effectively" created a 1,000 core processor based on the technology. To do that, the researchers divvied up the millions of transistors in the FPGA into 1,000 mini-circuits that are each able to process their own instructions -- which, while still a proof of concept, has already proven to be about twenty times faster than "modern computers" in some early tests. Interestingly, Intel has also been musing about the idea of a 1,000 core processor recently, with Timothy Mattson of the company's Microprocessor Technology Laboratory saying that such a processor is "feasible."

Read more: Engadget

Monday, December 27, 2010

AMD Radeon HD 6950 can be turned into an HD 6970 using a BIOS hack

10x1227bu3stk.jpg


Ah, the joy of getting something for nothing -- that's what this time of year is all about, right? The techPowerUp! guys seem to think so, and they've got the perfect gift for all you thrifty PC gaming enthusiasts: a BIOS flash for the Radeon HD 6950 that unlocks the full potential of its hardware (in other words, it turns it into an HD 6970). We already knew the two retail SKUs were built on the same Cayman core, but this hack confirms that all the 6950's performance handicaps have been enacted in software rather than hardware, leaving you all to flip a switch, click a few confirmatory dialogs, and get your game on.

Read more: Engadget

Sunday, December 19, 2010

Microsoft keyboard F Lock

למי שמשתמש במקלדת מיקרוסופט, יש את הכפתור המעצבן (לטעמי) F Lock (אי שם מימין למעלה).
הכפתור הזה נועד למעשה לשכפל את התפקוד של שורת הFים.
הכפתור הזה מעצבן כי ברירת המחדל שלו היא כבויה כלומר אין Fים. יש פונקציות אחרות (Open,New  וכו’).
מה שמציק הוא שכאשר מכבים את המחשב הוא שוב מתאפס ונשאר כבוי, ואז אני מוצא את עצמי לוחץ F5 לדיבאג וזה לא זז עד שלוחצים עליו.
אז זהו שיש לזה פתרון. לא נכנסתי לעומק העניין אבל ניתן למצוא את ההסבר כאן.
בכל אופן שינוי קטן ברגיסטרי פותר את העניין לתמיד, למעשה הכפתור נשאר כבוי אבל התפקוד מתהפך.
בכפוף לסוג המקלדת המדוייק יש להשתמש בקובץ הנכון.

Read more: Adiel Sharabi
Read more: Microsoft Keyboards - F Lock Modifier - Scan Code Remap Method

Friday, November 26, 2010

OpenVizsla hopes to bring USB sniffing to the everyhacker

Remember that Kinect hack how-to? A key figure in the story was the use of a USB analyzer that was plugged in-between the Kinect and the Xbox to pick up on USB traffic and pull out a log that could be used for hacking. Well, there's a new 'OpenVizsla' project on KickStarter that's aiming to build open source hardware that can put this typically expensive tech ($1,400+) in the hands of more hackers, who use the hardware for anything from jailbreaking locked-down devices to building Linux drivers for hardware. The project was actually started by hackers "bushing" and "pytey," who have worked on hacking the Wii and the iPhone, respectively. They've already raised a good chunk of change for the project in pledges, with backing from folks like Stephen Fry and DVD Jon helping out the momentum, and hopefully we'll be seeing the next generation of hacks enabled by OpenVizsla and its brood before too long.

Read more: Engadget
Read more: OpenVizsla

Monday, November 22, 2010

Kinect hack creates world's greatest shadow puppet (video)

kinect-hack-creates-worlds-greatest-shadow-puppet-video----engadget.jpg

Hey Xbox 360 Kinect owners, want to spice up those family shadow puppet shows? Then check out the installation prototype created by Emily Gobeille and Theo Watson using an Xbox Kinect connected to a laptop using the libfreenect Kinect drivers and ofxKinect. The openFrameworks system tracks the elbow, wrist, thumb, and tips of the fingers to map a skeleton onto the movement and posture of an animated puppet. And get this: it was made in a day. So just imagine the Kinect homebrew we'll have around this time next year. See it in action after the break.

Read more: Engadget

Razer Nostromo gaming keypad supplants Belkin's n52te Speedpad, does it proud

rzrnostromoisolatedleft-small.jpg

Think you've been gaming on the PC for awhile? If you can't vividly remember gushing over this thing (and scrounging up pennies from under the couch in order to finance one), move along. If, however, you're still the proud owner of an attic-bound Belkin Nostromo n52, you can definitely prepare yourself for a healthy dose of nostalgia here. After co-developing Belkin's n52te Speedpad a few years ago, it looks as if Razer has now fully taken over the gamepad by today introducing the Nostromo. Yeah, just Nostromo. The design is certainly a familiar one, boasting a 16-button keypad, a soft-touch rubberized wrist pad, 16 fully-programmable Hyperesponse gaming buttons and an eight-way directional thumb pad. As for improvements, you'll get the ability to switch instantly between eight keymaps (up from three), and the flexibility of storing up to twenty gaming profiles (up from the previous limit of ten). It's available to order now for $69.99 / €69.99, with an estimated ship date of November 29th worldwide. You know, in plenty of time to stuff your own stocking.

Read more: Engadget

Wednesday, November 17, 2010

How To Use Your Wii Remote as a Gyroscopic Mouse

pairwiimote23.jpg
If you have a spare Nintendo Wii remote with the Motion Plus add-on, you can use it to control your Windows PC from across the room. Here’s how to get it working in a couple of easy steps.
Using the Wii’s Motion Plus add-on and some software, you can easily control presentations or your home theater PC.  You will need:

  • A Wii remote (obviously)
  • The Motion Plus add-on
  • Windows XP, Vista, or 7
  • A Bluetooth dongle for your PC
  • The WIDCOMM Bluetooth stack (from Broadcom’s website) (version 6.2.1.100 at the time of writing)
  • GlovePIE with Emotiv support (from the GlovePIE Project website) (version 0.43 at the time of writing)

The Software
The WIDCOMM Bluetooth stack allows you to pair your computer with the Wii remote without using a code.  That’s the key piece to getting it working, and although the BlueSoleil stack can do this as well if not better, it’s not free.  After the pairing is complete, the GlovePIE application will run a script that takes your controller input and translate that into mouse emulation.  With some tweaking, you can extend the functionality of your makeshift mouse and even use it as a joystick/gamepad.

Read more: How-to-geek

Secret Debug registers in AMD processors

  Hidden password-protected debug registers in the Athlon XP is enough to make any hardware-oriented programmer more paranoid about what could be lurking between the registers. If you work with assembler you slowly grow to understand the architecture of the machine and to know its registers and operations as if they were your own. So it comes as a shock to discover that there is something hidden that the manufacturers built in but didn't bother to tell you about. It is even worse when you discover that they went to active lengths to stop you finding the extra hardware by password-protecting the access. Apparently this is exactly what AMD has done with its processors from the Athlon XP on. A reverse engineer going by the name Czernobyl (Czerno for short) has discovered that the Athlon XP series has included firmware-based debugging features that go well beyond the standard facilities. Four new register each password protected are involved and you can only gain access to them if the EDI register holds 9C5A203A otherwise an exception results.
  The facilities provided are still under investigation but the registers seem to implement a conditional hardware breakpoint. You can arrange a breakpoint to occur on a block of memory specified by an address  mask and data mask. Even this facility would make reverse engineering of some types of system much easier. More probably remains to be discovered.
Read more: I Programmer