Sometimes the most mundane products have surprisingly sophisticated internals. What’s in a game controller? If it is a Wii remote, you’ll find a lot inside–an IR sensor, Bluetooth, an accelerometer, and EEPROM. It also has a six pin expansion port that allows I2C peripherals connect to the controller.
[DotMusclera] wanted to experiment with a gyroscope and decided to hook up to the Wii MotionPlus to a Microchip PIC. Using information from the WiiBrew wiki, [DotMusclera] connected a PIC18F4550, an LCD, and a handful of components (mostly to do 3.3V level conversion), he set up the hardware on a breadboard. The only odd part you might have to work around is a Wii breakout board that converts from the breadboard to the Wii interface.
The software is easy to follow since it is written in Hi-TECH C and well-commented. The hardware lacks a schematic, but from the parts list and the video, you can probably figure it out. The setup works well and shows roll, pitch, and yaw on the LCD screen.
The project log is very detailed, with a lot of information about gyroscopes and the communication format the gyro uses. The video demo is worth watching as well.
Continue reading “Wii MotionPlus Gyro to Microchip PIC”
We love cheap stuff here. Who doesn’t? [Oscar Rodriguez Parra] does too, and wrote in to show us his super cheapey robot L.I.O.S. The build was for the AFRON design challenge, which involves building a 10 dollar robot to teach students robotics. The winners of the challenge were neat and all, but they all look too fancy flaunting their molded plastics and electronics breadboards.
[Oscar’s] design is super simple, LDRs as eyes, a PIC12F683 to do the brainin, LEDs for indicators and a couple modded servos to drive the wheels. An extraordinarily complex cardboard flap roller helps the cart turn, but probably isn’t going to see much aside from smooth flooring. The electronics are mounted using one of our favorite techniques, the paper perf board (very similar to the substrate free technique).
Check out the video after the jump to see LIOS in action. This is an excellent introduction to robotics for any classroom. Thanks [Oscar]!
Continue reading “L.I.O.S.: The ten-ish dollar robot.”
[Rajendra Bhatt] writes in to let us know about a nice simple IR bounce tachometer. The project uses a startUSB for PIC board and a 16×2 character LCD with a very basic Infrared bounce circuit. Measuring either a reflective or non reflective spot in the rotating object, in this case a bit of white paper, the micro is supposedly capable of measuring up to 99,960 RPM (we think the paper might fly off at this point) with a resolution of 60 RPM. This is the same concept as a beam-break style tachometer but keeps all your electronics on one end of the spinning hazard.
The article also goes into detail about setting the PIC18F2550’s Timer0 register to enable 16-bit resolution. The PIC is configured to turn on the infrared LED for one second, measure the number of pulses (through timer registers), and multiply that value by 60. We would be more careful with the TMR0H and TMR0L counters as they have to be read and written in a certain order to preserve their values, but you’d need to be measuring upwards of 15,360 rpm to run into that error.
It is a quality writeup for anyone interested in learning about the start USB for PIC board, tachometers, or a new project. Thanks [Raj]!
Arguably, Microchip’s PIC microcontrollers do not get enough posts here. One of the drawbacks for some of us is that Linux support for PICs is not very well known. The information is out there, but no one has laid out the process of going from writing C code to programming a chip. Written for Linux users that are familiar with microcontrollers, basic circuits, the C programming language, and can read a datasheet, this how-to should get you up and programming a PIC quickly with Linux.
Continue reading “How-to: Program PICs using Linux”