Yup, lots of wires. New body, too. With my 3D printer back in service, cases were printed for the electronics, along with new wheels all around. These new wheels add around an inch of ground clearance, and better off-road traction.
As well, the first shipment of new parts has arrived: a USB WiFi adapter, an ultrasonic range sensor, H-Bridge motor controller, 9-DOF IMU and a temperature probe.
There are a lot of really cool developments in this post; let’s dive in.
He may not look like much right now, but STEVE is an evolving project I’ve been wanting to start for quite some time. He is a robot, into which I will combine software, hardware, and mechanical design.
Currently STEVE is an AVR microcontroller and LM298 dual motor driver, strapped to a circa 1985 remote control car. Over the last few days, I began laying the foundation with serial communication, motor control, and power. In the next few weeks, I should receive the first order of parts to give STEVE senses.
- Ultrasonic range sensor
- 9-Degrees-of-freedom Intertial Measurement Unit (with compass)
- DS18B20 Temperature Sensor
- USB WiFi Adapter
- LM298 Motor Driver (a better unit)
- Servo (to pivot ultrasonic range sensor)
- Current Sensing
This is a great wish list, but without the software to tie it all together, not very useful. Therefore, I’m assigning my Raspberry Pi 2 B+ as STEVE’s brain. My vision is for the Pi to do all the heavy processing such as navigating, making decisions, and hosting the user interface for mission planning. That way, the AVR is only a hardware controller that manages Input/Output, and communicates bi-directionally with the Pi.
Over the last week the project has evolved very rapidly, and a new body is in the works. My 3D printer has some serious overtime coming up, as I begin designing and printing STEVE’s mechanical components. The ability to print new wheels, mounts, gears and body components is critical to the success of this project, and will also mean I can be very flexible with how everything is implemented.
I have a lot of freedom to do really cool things with this, and I look forward to posting regular updates on STEVE’s progress here!
This has been a long time coming. To summarize, Bell Aliant’s FibreOP Internet service includes a wireless router that has proprietary, limited firmware. It tends to suffer from latency and WiFi issues. So, I sought to replace it with my own wireless router! I ended up first building an overpowered but very functional pfSense Linux Firewall/Router.
Despite my monstrous UPS, I was not happy with the 1 hour run-time. The whole reason for the pfSense router was that FibreOP “hides” its Internet on a VLAN, which means a standard, consumer router will not be able to access the Internet. And from some forum posts I had read, it seemed DD-WRT was also incapable of it.
Finally, today, I pushed through and realized it takes only 4 simple steps to connect a DD-WRT router directly to the FibreOP modem.
Atlantic Canada is very fortunate to have access to Bell Aliant FibreOP Internet. It is a legitimate Fibre-to-the-Home (FTTH) service, in the same price range as cable and DSL offerings. Speeds start at 50/30 (download/upload in Mbps) for $70/month without any promotions.
As great as the Internet itself is, the wireless router they include is the bottleneck. It is an Actiontec R1000H. Our biggest headaches with it were low WiFi throughput and frequent WiFi drop, but the interface was a little lacking in advanced features.
The logical solution is to use another router. Unfortunately, Bell has configured the service in a way that simply swapping in a new router will not work at all!
Through some research and my own trial and error, I was able to install pfSense to a spare computer, and take control of my Internet.
Disclaimer: Do not follow these steps if you have Bell’s IPTV service, as it will no longer work. There are other sites that describe how to keep those services working, but mine does not. As well, though there should be no impact, I advise against doing this if you have FiberOP Home Phone and rely on it for emergency communications.
This is not an easy task. It requires a very good understanding of computer networking, basic understanding of Linux networking terminology, and availability of network equipment (switches, wireless access points, cables, NICs). Chances are you found this page because you meet some of that description. Just know that if it isn’t working out, you can plug in the Actiontec and pretend it never happened.
Indeed, Pi day (3/14, March 14th) is upon us once more. Last year I had the fortune of being the first person to recite many digits of Pi at our college’s celebrations, and this year I have worked on remembering additional decimal places.
Practice your Pi here! (Refresh if it didn’t load.)
Modern day GPS devices are essentially miniature computers. Many have a compact version of Windows, called Windows CE, installed, and the GPS software runs over top of it. However, GPS manufacturers often lock out this extra functionality. There are different packages and ways to unlock your GPS, however because there are so many different brands, it isn’t always one-size-fits-all.
I Googled for information on unlocking the Magellan RoadMate 1424 (the GPS I have) but the only information I found was a couple of people who couldn’t do it. Not deterred, I set off and entered the unknown. Read on for my story (spoiler: it ends in success).
The other day, while helping a friend set up his new computer, I came across a bizarre and irritating problem. I installed Google Chrome, and was on the internet, and noticed that everything was in italics. It was difficult on the eyes. I tried to change some settings in the Page Font menu in Chrome, but to no avail. I found other people had this problem, and after digging in the system’s Fonts folder, I found the issue.
Last weekend I tried to install Windows 98 on the oldest laptop of mine. It didn’t work, it gave an error, “Insufficient system memory”. Funny, I had 2GB of RAM…
After all, it is a laptop. Why doesn’t Windows XP ask these questions? Maybe it just knows.
I wonder if it’s any better than Justin TV?
23 minutes remaining, no, I mean, 14 minutes, no, I mean, 3 hours 27 minutes!
I miss this… Sort of, not really. It’s so much nicer to have it all shut down on its own.
I’ve got a video of it trying, and failing, to boot, however, bad quality, and not all that important.
The other day, I figured I should try to hook up my playstation 2 Rockband drums to my computer, to use with Reason, so that when I record my drum tracks, I can use something that actually looks similar to a drum set, instead of a keyboard. The keyboard is good for certain off-beat timed riffs, but the real drums are better for rhythm, and are more satisfying to play.
I spent plenty of time on the internet, and tried out one other method before finding this one that works the best so far. The first one I tried was something like this: Using Joy2Key, I converted the Drum Kit’s button presses to keyboard keys. Then, because Reason doesn’t support using a computer keyboard to play notes, I used another program, Live Midi Keyboard which then interpreted computer keyboard presses as not presses on an onscreen piano. Then, using MidiYokeNT, I created a virtual MIDI interface, allowing Live MIDI Keyboard to output to a virtual MIDI cable, and I set Reason to accept input from this virtual input. This worked, but with two major flaws:
- Major latency issues (too many conversion steps, keyboard repeat delay problems).
- Cannot hit two notes at the same time. Probably has to do with keyboard limitations.
Now, I have a solution that actually works, and though there still is a bit of lag, it is much better than the last setup. Unfortunately, real time playing is very difficult, requiring you to play the note before it is supposed to be heard. But, when I record music, just lowering the BPM does the trick.
The post that showed me this setup is here. It uses two pieces of software, one, MIDI Yoke NT, and another, called Rejoice. Rejoice converts the joystick signals to midi, allowing assignable notes, volumes, delays, and velocities (however, I don’t believe the program is velocity sensitive, as the controller doesn’t seem to be either).
I have it hooked up, and it makes recording music so much more fun and intuitive. Playing the music on an instrument that resembles the real thing makes coming up with a new riff a lot easier, and it requires pushing yourself to actually make it sound good. Does anyone else have a better setup, with no latency, for Windows? I found one for Mac OS X with no latency, but, that’s Mac, not PC.
Comments about Windows 7
I received a comment below from someone who installed Rejoice on his Windows 7 machine. I wrote this article while using Windows XP, but when I switched to 7 I noticed the same issue he is having – missing ocx files. You can fix this by locating the missing files, and copying them into your Program Files\Rejoice folder. I am hosting a zip with all the files here.