Pages

Showing posts with label opensource. Show all posts
Showing posts with label opensource. Show all posts

Sunday, February 12, 2012

Everything You Need to Know About the Raspberry Pi


The online tech community is wild about the soon-to-be released Raspberry-Pi. The cleverly named device is a $25 Linux computer that is the size of a credit card (right). With impressive specs and even more impressive performance, the Raspberry Pi has been seen running Quake 3(bottom), XBMC, and Air-Play, without lag. The R-Pi is due to start sales to consumers later this February, with the construction of the first 10k finishing on Feb 20th. Only the 'B' version will initially be for sale and will be priced at $35.

The device has an 700 MHZ ARM11 processor, and 128MB of RAM. The upgraded ‘B’ version sports a 10/100Mb Ethernet port and 256MB of ram. For the less-techy people out there, the specs are just short of a modern smart-phone (but can easily outperform the newest iPhone4s). The R-Pi is capable of HD video playback, and outputs through HDMI and RCA (the circular yellow plug on older devices). It has 2 USB 2.0  ports which share the same USB Controller. On the ‘B’ version, the Ethernet port also shares the USB controller. R-Pi will boot off of an SD card (sorry, it will not be able to boot off of USB) and will be powered by micro USB cable. The picture below shows the board’s layout.



On a more technical note, the board also has 16 accessible GPIO (general-purpose I/O). All of the pins are unpopulated and will be digital only. But chances are if you plan on using them, then you probably have a spare A/D converter laying around anyways. Another board referred to as the GertBoard will be released at some-point soon as well. This will allow users to more-easily drive high-power motors and sensors on a shield-like board (the GPIO do not have pull-down resistors or diodes to prevent reverse current attached. It is assumed that users using this will have enough common sense to not fry their board). Because of how easy the GertBoard will be to use, the Raspberry Pi may be able to start a new revolution in the hacking community; the same way Arduino has. The most popular Arduino board, the Uno, currently sells for ~$30 and doesn’t have nearly the speed of the R-Pi.
.
The Raspberry Pi is being developed with the purpose of bringing computer programming back to schools, and not languages like HTML, that most schools currently consider adequate. With a low cost, the R-Pi may be treated as a form of textbook in some tech classes, and will finally allow students to bring home a computer to learn with (without worrying about bricking their parent’s). More high-end languages will be able to be taught like C, or Java and students will also be able to learn more about the structure of operating systems - because the Pi will be completely Open Source and un-brickable. Hopefully, schools will be able find space for Raspberry Pis in their curriculum and buy a few. A $25 computer is a lot cheaper than a $100 textbook...and a lot cooler.

One of the most recent pictures of a Raspberry Pi. The
final version will most likely look similar.
The hacking community is expected to be the main buyers of the first batch of R-Pis. With projects seen on the forums like a a cheap media station, a car PC, an Android Emulator, a robotics micro-controller, and home automation. I plan on buying one to make a multi-media station for my [parents] HDTV (network media streaming, Netflix, YouTube, Interwebs, picture sharing, music, etc). The reason that the first batch is not going to schools is because the R-Pi foundation is hoping that the hacking community will help develop the learning materials, software and tutorials for the less-advanced users. Within the first month I can guarantee that you will see thousands of easy open-source projects using the Pi...Maybe even here on RoboTechEd!


If you plan on getting a R-Pi then I recommend you follow the organization on Twitter and forwarding their tweets to your phone. They don’t expect their inventory to last very long (I give it 10 minutes), even though they are limiting initial sales to 1 per person. The store will open at some point after Feb 20th and before the end of the month. The foundation also plans to ship world-wide from day one. If you want to get a few of these for your school, then you will have to wait for a little later in the year, the foundation will be selling bulk to schools at some point after they get a feel for their sales. Either way you should hop onto the R-Pi forums and check out some cool project ideas, and contribute to the development!


Friday, January 27, 2012

How-To: Fix Track-pad in Ubuntu on a Chromebook

If you followed my post on how to install Ubuntu on a Chromebook, then I’m sure you were less-than-impressed with the track-pad. It acts unresponsive at times, and the multi-touch just isn't there. Well, I recently decided to start using my Chromebook for some Android development (RTE App maybe?) and found that there was a driver to fix the track-pad in Ubuntu.




Courtesy of the CR-48 blog (which also shows how to install Ubuntu), you can install functional track-pad drivers. This includes multitouch, two finger scrolling, and  better responsiveness. All you need to do is download the DRIVERS and double click on .deb package. Then follow the on screen instructions agreeing to all of the terms of service. It will prompt you for the root password (which is user by default). Once done, restart your Chromebook and start programming!

Have more tips/questions? Tweet me @RoboTechEd or on Facebook.

Sunday, December 11, 2011

Using an ATtiny to Save Space and Money


Have you ever needed a microprocessor that is easy to use but isn't as large and bulky as your Arduino? Or maybe you just don’t want to put a bunch of unnecessary money into a project and using a full Arduino just makes the project not worth the effort? That’s where the ATtiny85 comes in. Using a tutorial found on the MIT High-Low Tech Group page, you can now program your ATtiny using a traditional Arduino. Check out the video below for an easy to follow tutorial as well.

I tried this recently and had no issues. It even works with the newest Arduino IDE (Check out Arduino 1.0 if you haven't yet already). All you need to do is load some hardware folders and program your Uno to be an ISP. Then, change your board type to “ATtiny85 w/ Arduino as ISP” and upload your sketch. If you have an Uno you must remember to jump  the ‘reset’ pin to ground so that the auto-reset is disabled with a 10uf cap. Presumably you could also use a 120ohm resistor.

Overall the ATtiny works really well and uses most Arduino commands. The only issue for me is that the Servo library doesn't seem to work - meaning the project I had intended to work on has to use a regular ATmega. Either way, the ATtiny will find a use in some low-processing projects that I’m working on. Leave me some feedback on Facebook or Twitter with some cool project ideas or if you’re having any issues.


Sunday, October 2, 2011

Installing Ubuntu on a Series-5 Chromebook

Dualbooting the Samsung Series-5 (I have the 3G version) with Ubuntu is actually a lot easier than expected and is almost the same as dualbooting on the CR-48 (Google’s beta program to Chromebooks). Online there aren't many tutorials on how to do this because the method used on the CR48 still works perfectly. You can find the tutorial HERE, and I personally only had one problem throughout the whole process.

After Ubuntu is installed for some reason my Chromebook wouldn't boot into my Linux partition. After trying all of the possible commands,  I decided I needed to do some more research, and discovered my boot-up screen looked different from other people’s. They had a massive blue frowning computer picture when booting while I only saw some ASCII art. It turns out, once you boot into developer mode, you need to install a developer BIOS. To do so you open the terminal (Ctr Alt ->) and type in the following.

localhost login: chronos
chronos@localhost $ sudo bash
localhost chronos # chromeos-firmwareupdate --mode=todev

When you restart, your computer startup screen should look like this (press Ctrl+D to skip)
After running that, you will want to re-run the startup script wget http://goo.gl/hnkxo; sudo sh hnkxo’. Your Chromebook should now boot up into Ubuntu! If you want to easily switch between them click HERE for a simple tutorial. If you have any issues feel free to comment here, or tweet me @RoboTechEd.

Saturday, October 1, 2011

Arduino Based Computer Temp Sensing

The Problem

I bought a new graphics card for my computer recently, just to realize I didn’t have a power supply large enough to properly power the new card - causing it to overheat (temporarily, I opened the side of my computer and used a desk fan to cool it). After buying the correct power supply, I decided I needed some type of temperature indicator on my computer...Hello Arduino! (I actually used my Uno32 for this project, to view my review on it click HERE)

Now, this hack is very simple, versatile, and easy to implement. All you need is a general purpose temperature sensor, an RGB LED (or more if you want your computer to look really flashy), and some appropriate resistors so you don't blow up your LED. The Arduino fades an RGB LED from blue to red depending on the temp of your component. When it is over 50°C, the LED will be red. (50C is close to what most NVIDIA GFX cards can handle). I also have a processing sketch in progress to read the value of the temp sensor and store it into a .txt file, and a C++ program (in progress) to alert you when the .txt file says that your computer is too hot.


The Set-Up

Below is the schematic. I know that it isn’t standard, but it’s much easier to read for electronics beginners. I recommend giving yourself a pretty good length in wire so that you can attach the LED(s) wherever you need to. Also, HEAT SHRINK ANY VISIBLE METAL so that you don’t end up messing up your computer. Often, your computer will use the casing as a ground, so any visible wires would be really bad. 

Once you’re all soldered up and ready to go, you’ll want to attach the temp sensor wherever you think has a chance of overheating. To attach it I recommend using electrical tape, and just taping it down (If you have better ideas then let me know). Then put your LED anywhere you think will be easily visible. I recommend taping the wires down with electrical tape as well, or zip-tying it down. You then want to zip-tie all loose wires and attach them to the Arduino somewhere that you have free space. I recommend putting electrical tape on the bottom of the Arduino AND Velcro-ing it down, that way your Arduino doesn’t short, and it won’t move.
I was lucky enough to have a working USB port INSIDE my computer, so that I could leave my Arduino plugged in. The unlucky one’s out there will need to upload the code before they put it in and power it off of a battery, or find some way to get a programming cable inside of their case. After the Arduino code (below) is uploaded, everything should work fine. I set the default room temperature as 17C because that’s how it is in my boiling dorm- but that could easily be changed.
int bluepin = 5; int redpin = 6; int tempPin = A0; int blueout = 0; int redout = 0; float conv = 0.55555; //Wouldnt let me do 5/9 float tempC; int limitinC = 50; void setup() { Serial.begin(9600); pinMode(bluepin, OUTPUT); pinMode(redpin, OUTPUT); } void loop() { float tempVolts = (analogRead(tempPin) * .004882814); //Reads temp sensor and converts it to a voltage level float tempF = (tempVolts - .5) * 100; //Converts the voltage level into a temp(F) float tempC = (conv * (tempF - 32)); //Converts the temp into Celcius //Serial.print("tempC ="); //Commented out for testing //Serial.println(tempC); //Serial.print("tempF ="); //Serial.println(tempF);
float CelConstraint = (tempC - 15); //The average temp of my room in C (limiting the colors to be blue at 15 and red at 50) float CelCtoVal = (CelConstraint*29.68);//converts the value //Serial.print("CelCtoVal = "); //Commented out for testing //Serial.println(CelCtoVal); 
redout = CelCtoVal; blueout = ((512 - CelCtoVal) + 512) //Inverts the colors so 1024 = 0 and 0 = 1024 //redout = ((redout+CelCtoVal)/2); //Use these lines instead of the above if the sensor sometimes is flickering (averages the values) //blueout = ((((512 - CelCtoVal) + 512)+blueout)/2); //Serial.print("blueout ="); //Commented out for testing //Serial.println(blueout); //Serial.print("redout ="); //Serial.println(redout); analogWrite(bluepin, blueout); analogWrite(redpin, redout); if (tempC > limitinC){ Serial.print(1, BYTE); //Send 1 to Processing sketch if too hot delay(100); } else{ Serial.print(0, BYTE); //Send 0 to Processing sketch if cold delay(100); } }

Work In Progress

Below, I have a processing sketch that will read whether or not your Arduino is overheating and write a ‘1’ into a .txt file if it is. I also have a C++ program that will read that file. This is a work in progress. I just started to learn processing and only know very basic C. I hope eventually to make a program that will print the temp in C, F, and to pop-up when the temp is greater than a certain temperature.


Download Everything


Let me know how this works for you guys! If you have any comments/questions be sure to post below or tweet me!

Thursday, September 29, 2011

The Uno32 - A Cheaper and Better Arduino


If you’re looking for a solid new Arduino with better specs, then you should check out the ChipKIT Uno32 by Digilent. The Uno 32 has over double the regular Uno’s IO pins (20 vs 42), a much faster processing speed(16MHz vs 80MHz), and a massive amount of flash memory (32k vs 128k). I recently bought one to test it out, so let’s dive into the review. ( If you want a head start preview, check it out HERE)

Comparison
The major difference between the Uno and the Uno32 is their operating voltages. The Arduino Uno operates at 5v while the Uno32 at 3.3v(Don’t worry though! The Uno32 still has a 5v output pin for your projects). The only issue because of this, is shield compatibility. Some Arduino shields won’t work with 3.3v, but can be rigged to using a transistor and a pull-up resistor. Also, all of the I/O pins are safe for 5v input, just in case you forget (which I have to admit I did...quite a few times). To find out if your shield can be used, go HERE.

Ease of Use
The Uno32 operates almost exactly as a regular Arduino. The IDE looks the same as Arduino’s, and all of the example programs are able to be used on the 32’. The setup and programming all work exactly the same as the regular Uno as well...Honestly there is no obvious difference.

Advantages
The Uno32 has tons of advantages besides the obvious ones I stated in the beginning. The Uno32 has many more user controlled LEDs, as well as more indication LEDs (ex: USB data LEDs). There are also multiple jumpers across the top of the board that can change whether the board is an SPI Master/Slave, if a pin can be used as PWM output, or even if the 5v output goes through the voltage regulator or not (could be handy for some AC signals?). There is also a huge forum dedicated to the Uno32. Having professionals at your disposal is always an advantage!

Disadvantages
Besides the 3.3v operating voltage, there are two more drawbacks that you should know before buying the Uno32. The Uno 32 has 1 less PWM output than the Arduino. Pin 11 cannot be used as one because of the actual limitations of the chip. Also, not every port on the Uno32 can be used as interrupts, only a few (not a big deal considering I rarely use more than 1 anyways in my projects).

Price
The ChipKIT Uno32 sells for £17.99 at Farnell, which is less than $25 USD. This makes the Uno32 CHEAPER than the Arduino Uno (Yes, at least double Arduino’s specs, at a cheaper price)...A pretty obvious buy for anyone looking into buying a new microprocessor.

Rating
I highly recommend ChipKIT’s Uno32 to anyone looking into an Arduino replacement - 5/5 gears!



-Example Video Coming Soon-

Monday, September 26, 2011

ChromeOS Getting Ready for Tablets?


Chrome released a new home page for all beta and dev users a few days ago and it seems like an oddly familiar interface. Maybe you would agree, take a look at the pic below.




Yeah, the old scroll interface is finally gone. It seems to be less computer savvy (although much more sleek) and also much more versatile. And although this is speculation, it could mean that ChromeOS is getting closer to a release on a tablet. Like Android(also Google owned) chrome OS is planned to be ported over to tablets at some point in the future. Although it seems to be far away, at least this update is a step into the right direction, and a step to a cleaner looking homepage! (Anyone else have so many apps that it just looked kind of messy when you scrolled down...If you want to add to that mess you should click HERE to get daily RoboTechEd updates!)

Let me know what you’re thinking on Twitter or the comment box below!

Saturday, September 24, 2011

New Arduino - The Uno +1


Last weekend at MakerFaire NYC (which I wish I went to), the Arduino people announced a few new products, which I’m pumped to use; but one board stands out - the Arduino Due. Although the name shows that it is a whole numerical value above the UNO (maybe they're running out of ideas), the Due is much different where it matters; the processor.

The Arduino Due is introducing a whole new breed of processing power to arduino boards, a step from the standard Atmegas - ARM processors. ARM processors can be found across the electronic world; from cellphones, to low powered computers. Simplicity is what fuels the ARM line, and it only seems natural for one to meet up with an Arduino.  The Due runs at over 90MHz, and has 256K of flash memory - up from 32MHz and 32K of flash on the Uno. On top of the power upgrades the Due has 16 12-bit analog pins, 5 UARTS, and tons of digital pins. Not a bad upgrade to what is already my favorite nerd toy.

On-top of the Due, it was announced that another microprocessor will be released named ‘Leonardo’. The Leonardo uses the same pinout as the UNO, with a ‘simpler circuit’ and comes with USB drivers for it to simulate a mouse, keyboard, and serial connection (arduino custom keyboard anyone). There are more new products/announcements on the Arduino blog located HERE, and when the Due comes out, I’ll make sure to let you guys know how it is...assuming I can force myself to stop playing with it.

Monday, April 11, 2011

Roboweek Day Three - Self Replicating Printers

RoboTechEd’s third #robotofnote for Roboweek isn’t a stereotypical robot. It doesn't walk, talk, or really have much user feedback. But what it lacks it makes up with it's ability to create. Makerbot is a stationary robot that is completely open platform, and arduino controlled - pretty sweet if you need a 3D printer (you guessed it, Makerbot is a 3D printer). A Makerbot kit costs a small price of $1,300 but is way cheaper than a commercial 3D printer. And the best part is that once you have one, the Makerbot can self replicate!

Also available online is a huge amount of CAD files that are known to work on the Makerbot, from coffee mugs, to nuts and bolts. The Makerbot is able to make these things by melting plastic into the desired shape - anything up to 4”x4”x6”. To find out more on the Makerbot, click HERE and make sure to check out the video below to see it in action. And if anyone makes or buys one of these let me know, selling copies of the original may be somewhat fruitful (no...for real, a self replicating 3D printer is pretty sweet)!

Are you celebrating Roboweek? If you're making something cool, would you use a Makerbot to help?less than a minute ago via web Favorite Retweet Reply



Are you celebrating #roboweek? What are you doing to celebrate? A good idea would be to download the RoboTechEd Chrome App! Check it out, and tweet @roboteched or @roboweek with any #robotofnote!

Sunday, April 10, 2011

Roboweek Day Two - Technological Overkill

I’m not sure if you’re subscribed to Robot Magazine (if you’re not, you should be), but if so then you’ll recognize our second Roboweek #robotofnote - DARwIn OP. The OP in this little humanoids name stands for Open Platform, meaning everything about him is available to the public. The code, the parts, and even instructions on how to make one yourself. So if you have tens of thousands of dollars of machinery, you can make a lil’Darwin yourself...Although I doubt most people have the tools/materials to do so.

What makes Darwin so amazing though is the amount of technology packed into such a little bot. He has multiple speakers, mics, an HD camera, built in wi-fi, a mini SD card slot, a 3 axis accelerometer, an ethernet port, 2 USB ports, HDMI out, and many more ridiculous features (I think that list is sufficiently jaw-dropping). The only thing that Darwin is missing are lasers - but I think everything currently crammed in there is sufficient for a little humanoid that stands just under a foot and a half tall. Darwin was made at Virginia Tech, and according to the video below, the project started in 2004, and has had many versions until their success (maybe my school should start something soon, so that by the time i graduate I’ll have a cool little robot to play with). To find out more information about Darwin-OP click HERE.

Which robot is better? DARwIn-OP or NAO?less than a minute ago via web Favorite Retweet Reply



Are you celebrating #roboweek? What are you doing to celebrate? A good idea would be to download the RoboTechEd Chrome App! Check it out, and tweet @roboteched or @roboweek with any #robotofnote!