Rubik's Cube solving Robots' expert David Gilday, famous for World-record breaking CubeStormer II, is also the creator of the MindCuber that can be built with one single NXT 2.0 set. Here he races against his own creation:
Another great project from Tufts University, this time interfacing a NXT brick with a MIDI synthesizer.
The custom NXT to MIDI board is the key to making it work.
The board is supplied with power via Port A, with enough juice to power an external speaker. Piggybacking on the board is a VS1103 MIDI synthesizer and a Teensy controller which converts the NXT signals into MIDI commands.
On the NXT side of things, there are 3 touch sensors and two motors (for the rotation sensors). Three touch sensors gives you 7 possible combinations which works well for the notes in a scale. The top rotation sensor controls the volume and the bottom rotation sensor controls the octave. From the video it looks like there are 3 octaves of notes available.
What makes it really cool, is that MIDI means you can create all types of different sounds, from pianos to trumpets to pipe organs :) Press the on-board NXT buttons changes the instrument and from the software it looks like there are 128 instruments available.
Continuing on with examples of teaming up the NXT with other computing device (Android, Android, Sifteos) is this great project using the Raspberry-Pi
Using the Raspberry-Pi and some Python scripts, David Llewellyn-Jones from LJMU was able to control his robot from a wireless keyboard.
The keyboard talks to the Raspberry-Pi, which in turn sends Bluetooth Commands to the NXT with instructions on how it should move. The NXT can also send sensor readings back to the Pi, which means you can do some serious computational work without the need for an external PC.
As David says,
The wonderful thing about all of this is that although it requires a huge amount of effort and insight to get each of the individual pieces working, none of the effort was mine. Pulling the pieces together is really straightforward, building on so much clever work by so many people. It's got to the stage where you can grab a phone charger, some Lego, a £35 PC the size of a credit card, a wireless keyboard, an entirely open source software stack, 5m of USB cable and a Sunday afternoon and end up with a complete robot you can programme directly in Python. Brilliant.
Sam Woolf from Tufts University (home of all sorts of NXT goodness) has created an awesome mashup between the NXT and Sifteo Cubes.
Sifteo Cubes
What are Sifteo Cubes you ask? They are little cubes that can display and image and can interact with other Sifteo cubes nearby.
Sam was finding that the kids he was teaching robotics to, were having trouble transferring their paper written program ideas to the computer. So he decided to do something about it.
He's taken three Sifteo Cubes (although it looks like you could add many more) and designed a system where each cube represents a single command, Go forward, Go Back, Wait for Brighter etc. You change between each command by pressing the screen of the Sifteo.
The way to customise a block is to tap with another upside down block, allowing you to increase or decrease durations.
ie. Set the Sifteo to the Go Froward command. Hold another Sifteo upside-down and tap against the first to increase the Go Forward time.
Line up all the Sifteo Cubes together and the last magically turns into a 'Run' button.
Watch the video, seriously, it does a much better job of explaining it than I do :)
Technical Specs
The project boils down to two hardware elements and two software programs. Sifteo Cubes, Lego NXT, a C# program and a NI Labview Program.
I wrote a program in C# controlling the sifteo cubes. This program was the brain of the entire project, waiting for user input from the Sifteo Cubes and then pushing that data to the Lego NXT side. Then, I wrote a separate program using NI Labview, which would recieve the Sifteo user data (commands, order, etc.) through a TCP connection. Finally, through Bluetooth, the Labview program sends the commands to the Lego NXT Robot. The entire process is controlled by a central computer.
A comment on our recent post about an X-Y plotter led us to this fantastic creation. Eason Ke has built what he calls an NXT Painter. What makes this stand out above other X-Y Plotters is tethered to an android smart phone. He's using what looks like a custom App on the smartphone to 'write' a word and then the robot replicates it perfectly on paper.
Eason, any chance of some more details on how it works?
Great project from Wolfgang Beer outline how to connect an Android phone to the NXT. He built a little sentry robot that travels around his house, taking photos with the smartphone. The smart phone serves as the gateway between a HTML5 browser control program (which he can control from anywhere in the world) and the NXT robot itself.
There's a lot of sample code there to get you up and running as well.
Sorry this one is late! I've been flat out these last few months and have only now had a chance to catch up!
Hispabrick 14 was released in early August, and once again it is amazing!
Not exactly a robot (in that there are no motors), but Leon is showing off some great programming skills by cramming an entire Soduku engine into the NXT. It displays the grid on the NXT screen and you use the NXT Brick buttons to navigate around and enter in the numbers.
The software has several levels of difficulty, and generates a completely random game every time.
From the article
So here’s how it works:
The user selects a difficulty (the higher the difficulty, the less visible clues) using the left and right arrow keys and then clicks the orange button
A completely random Sudoku is generated and displayed on the screen
The arrow keys are used for navigating the grid: the left key moves the cursor over one spot to the left, and the right arrow key moves the cursor down one spot. If the user reaches a side/ corner, the next arrow click will bring the cursor to the other side of the playing field, as illustrated below:
Clicking the square orange key when an editable cell is selected (“clue” cells aren’t editable) will increment the cell’s value by 1, unless its value is 9, in which case the cell will be reset to 0
Clicking the rectangular gray key will check the user’s version of the sudoku against the answer key (a copy of the generated sudoku without the non-clue cells removed), and tell the user how many errors there are. If there aren’t any, a “You win!” message will appear and the program will be aborted; if there are errors (including un-solved cells), the user will be asked if he/ she wants the wrong cells reset — if yes, the program will clear these cells, if no, they’ll remain wrong and the user will return to the game
Leon describes the whole project in 4 separate posts, and it's a great read to see the process someone goes through when developing such a program.
Start here - http://worldofmindstorms.com/2012/07/19/sudoku-part-1/ and work your way through.
Source code is available on the last page.
Another nice X-Y plotter from RJ McNamara. The great thing about his projects is that he provides full building instructions as well as the source code in RobotC to make it work!
Remember Cubestormer II? That amazing Rubik's Cube solving robot? Well David Gilday (one half of the Cubestormer team) has posted a nice reflection of the time spent on the project. I hadn't realised that he and Mike Dobson (the other half) were actually in a friendly competition to see who could create the fastest only to decide that they would be better off working together.
The 2013 Guiness Book of Records has just been released and David happily shows off the Cubestormer entry for 'Fastest Robot to Solve a Rubik's Cube'. The official time is 5.270 seconds!
Just a note, the fastest human clocks in at 5.66 seconds.
akiyuki, the builder of the chair-making NXT robot S750, has published a new amazing video on a GBC in his house - with all 17 modules built by himself (!):
The ever popular LEGO MINDSTORMS NXT 2.0 Discovery Book is now available on Kindle and it’s also available as a PDF or EPub.
You can get the Kindle edition directly from Amazon. Instead you can buy the “Ebook Bundle” from the publisher. The package includes a PDF file (Computer/iPad), a Mobi file (Kindle), and an Epub (Sony reader / iPad) file.
If you’re looking for the low Amazon price (only $13.79!), but you don’t have a Kindle, you can read it on your computer with the Kindle for PC program.
This is great news for those who were previously unable to get this book in their country.
Thanks Laurens, for making this available.
A new version of the commercial robot programming language RobotC is out!
Amongst other robot systems, the C-style RobotC also supports NXT programming.
The new version 3.5 includes:
Claude Baumann just published this new book entitled "EUREKA! Problem Solving with LEGO Robotics". This book is different from its predecessors because it doesn’t foster the LEGO Mindstorms package as an end in itself, but rather as a versatile educational tool that can help readers develop their problem-solving capabilities. More information and sample content here.
Sometimes even robots become tired of walking. So Alpha Rex invented the Segway AT (Alpha Transporter) and it's a lot faster than walking! Find more information and code here.