Generate Clocks with the SI5351 and an Arduino

A SI5351 clock generator chip and an Arduino

If you’re dealing with RF, you’ll probably have the need to generate a variety of clock signals. Fortunately, [Jason] has applied his knowledge to build a SI5351 library for the Arduino and a breakout board for the chip.

The SI5351 is a programmable clock generator. It can output up to eight unique frequencies at 8 kHz to 133 MHz. This makes it a handy tool for building up RF projects. [Jason]‘s breakout board provides 3 isolated clock outputs on SMA connectors. A header connects to an Arduino, which provides power and control over I2C.

If you’re looking for an application, [Jason]‘s prototype single-sideband radio shows the chip in action. This radio uses two of the SI5351 clocks: one for the VFO and one for the BFO. This reduces the part count, and could make this design quite cheap.

The Arduino library is available on Github, and you can order a SI5351 breakout board from OSHPark.

Electric Chainsaw Teardown

An electric chainsaw with its case removed

For his Beyond Unboxing series, [Charles] tore apart a Ryobi cordless chainsaw to get a better look at how this battery powered tool works.

Inside he found a three-phase motor and controller. This motor looks like it could be useful in other projects since it has a standard shaft. The battery pack was popped open to reveal a set of LG Chem 21865 cells, and some management hardware.

With all the parts liberated from the original enclosure, [Charles] set up the motor, controller, and battery on the bench. With a scope connected, some characterization of the motor could be done. A load was applied by grabbing the spinning shaft with welding gloves. [Charles] admits that this isn’t the safest way to test a motor.

While it is a very fast motor, the cut-in speed was found to be rather low. That means it can’t start a vehicle from a stop, but could be useful on e-bikes or scooters which are push started.

This chainsaw a $200 motor, controller, and battery set that could be the basis of a DIY scooter. It sounds great too, as the video after the break demonstrates.

[Thanks to Dane for the tip!]

[Read more...]

Autonomous Balloon Popping

Quadcopter drone for popping balloons

Taking on an autonomous vehicle challenge, [Randy] put together this drone which can locate and pop balloons. It’s been assembled for this year’s Sparkfun Autonomous Vehicle Competition, which will challenge entrants to locate and pop 99 luftbaloons red balloons without human intervention.

The main controller for this robot is the Pixhawk, which runs a modified version of the ArduCopter firmware. These modifications enable the Pixhawk to receive commands from an Odroid U3 computer module. The Odroid uses a webcam to take images, and then processes them using OpenCV. It tries to locate large red objects and fly towards them.

The vision processing and control code on the Odroid was developed using MAVProxy and Drone API. This allows for all the custom code to be developed using Python.

The Sparkfun AVC takes place tomorrow — June 21st in Boulder, Colorado. You can still register to spectate for free. We’re hoping [Randy]‘s drone is up to the task, and based on the video after the break, it should be able to complete this challenge.

[Read more...]

Reverse Engineering LCD Displays

Dorkbot logo on a large LCD display

Over at DorkbotPDX in Portland, a member showed up with a stack of large LCD displays from point of sale terminals. [Paul] took it upon himself to reverse engineer the displays so that they can be recycled in future projects.

The control circuit for this LCD resides on a rather large PCB with quite a variety of components. The board was reduced to three main components: an MSM6255 display controller, a 32k RAM chip which is used as the framebuffer, and a tri-state driver.

With all the unneeded components out of the way, a custom board based around an ATmega88 MCU was added. This board was soldered in to interface with the LCD controller’s bus. This allows data to be written from the 128k flash ROM on the custom board into the frame buffer. Once this is done, the display controller will display the data on the LCD.

Now that data could be written, [Paul] figured out the correct configuration for the display controller. That was the final piece in getting images to show up correctly on the display. If you happen to find some old Micros 2700 POS terminals, [Paul]‘s detailed write-up will help you scavenge the displays.

I2C From Your VGA Port

Breakout board for VGA to I2C

VGA, DVI, and HDMI ports use Display Data Channel (DDC) to communicate with connected displays. This allows displays to be plug and play. However, DDC is based on I2C, which is used in all kinds of electronics. To take advantage of this I2C port on nearly every computer, [Josef] built a VGA to I2C breakout.

This breakout is based on an older article about building a $0.25 I2C adapter. This adapter hijacks specific lines from the video port, and convinces the kernel it’s a standard I2C device. Once this is done, applications such as i2c-tools can be used to interact with the port.

[Josef] decided to go for overkill with this project. By putting an ATmega328 on the board, control for GPIOs and LEDs could be added. Level shifters for I2C were added so it can be used with lower voltage devices. The end product is an I2C adapter, GPIOs, and LEDs that can be controlled directly from the Linux kernel through an unused video port.

A Robot’s Favourite Pen

A test of various pens using a robot

Some people are very picky about their pens. Entire forums exist to discuss the topic of pen superiority. However, it comes down to a personal choice. Some people like gel while others prefer ballpoint.

[Jens] built a drawing robot that produces drawings like the one seen here. It uses several linkages connected to two stepper motors, which give fine control over the pen. With the robot working [Jens] set out to find the best pen for robotic drawing.

Seven pens were tested on the machine, each drawing the same pattern. [Jens] found that gel and rollerball pens work the best on the robot, and started examining the performance of each.

The pens all performed differently, but two winners were chosen to use in the machine. The Pentel Energel Deluxe RTX and the Pilot G-2 07 beat out the competition since they maintained good lines at high speeds.

If you’re looking to build a drawing robot, [Jens]‘ research should help you pick the best pen for your application. For inspiration, a video of the robot in action is waiting after the break.

[Read more...]

Heating Up a Printrbot’s Bed

A heated bed for the Printrbot 3D printer

Heated beds for 3D printers help reduce the amount of curling and warping of parts. The warping happens when the part cools and contracts. The heated bed keeps the part warm for the entire print and reduces the warping.

As an upgrade to her Printrbot, [Erin] added a heated bed. The first plan was to DIY one using Nichrome wire, but heated beds are available at low cost. They’re basically just a PCB with a long trace that acts as a resistor. She added a thermistor to monitor temperature and allow for accurate control.

The Printrbot heated bed worked, but didn’t heat up quite quick enough. [Erin] was quick to scratch off the solder mask and solder new leads onto the board. This converted the board into two parallel resistors, halving the resistance and doubling the power.

This version heated up very quickly, but didn’t have a steady heat. The simple control that was being used was insufficient, and a PID controller was needed. This type of control loop helps deal with problems such as oscillations.

The Printrbot’s firmware is based on Marlin, which has PID support disabled by default. After rebuilding the code and flashing, the PID gains could be adjusted using g-codes. With the values tuned, [Erin]‘s printer was holding steady heat, and can now print ABS and PLA with minimal warping.

Follow

Get every new post delivered to your Inbox.

Join 93,990 other followers