555 based FPGA/CPLD debugging oscillator

Randomgarfield from fromorbit posted the above video, depicting his use of a 555 timer as a small oscillator tο clock CPLDs whіƖе debugging a small state machine.

I needed a variable slow speed clock to help me debug a design I’m creating with a bunch of CPLDs. Given the current focus on the venerable 555 timer IC, I thought rather than using my usual AVR/PIC solution I’d create something with the handy little timer.

I wanted a guaranteed 50% duty cycle, so I paired the 555 with a 74HC74 flip-flop in a clock divider set up. The flip-flop divides the 555’s frequency by half giving you a perfect 50% duty cycle no matter what the 555’s duty is.

The 555 generates a clock in the range of 0.4-1.2KHz, but after the division the board outputs about 0.2-660Hz from the flip-flop, perfect for my requirements.

Since I only had SOIC NE555D in my parts bins and I only had DIP 74HC74’s I’ve ended up with an mix of SMD and through-hole technologies. The DIP has two flip-flop, but I’ve wired them in parallel so that one drives the output and an open-collector transistor (handy for 3.3v circuits) and the other drives a LED built into the cases power-switch.

The box has an internal 9V battery or can have it’s power supplied by the circuit (5V, 3.3V circuits will use the battery).

While no schematic is furnished, the construction should be straightforward. The rate of the 555 appears to be varied using a potentiometer.

Bus Blaster v2: JTAG Serial Wire Debug support

A KT-link buffer clone supporting JTAG Serial Wire Debug is now available for Bus Blaster v2 pre-release testers. This should support the new 2-wire SWD debugging protocol when available in OpenOCD and urJTAG.

The KT-link is the first FT2232-based JTAG debugger with support for the new SWD and SWV JTAG interface used on low pin count ARM chips. The libswd project is adding support for SWD to OpenOCD and urJTAG, and the KT-link will be the first supported programmer.

Bus Blaster v2 is buffered by a reprogrammable CPLD instead of discrete logic chips. New buffer logic can be loaded so the Bus Blaster appears like many common JTAG debuggers. In anticipation of the Bus Blaster v2 release, we prepared this KT-link compatible buffer clone that can be loaded into the CPLD. See all the Bus Blaster v2 buffers. Join development discussion in the forum.

LibSWD: JTAG serial wire debug library

libswd is an open source library for the new 2-wire JTAG protocol called Serial Wire Debug. The developer is currently working to integrate it with OpenOCD and urJTAG.

Most open source projects supporting SWD seem to be standardizing on the KT-link style FT2232 programmer. The CPLD on Bus Blaster v2 can imitate the KT-link buffer, so we’ve started work on a clone. We’ll post an update when it’s working.

The basics of USB battery charging: a survival guide

An introduction to USB battery charging: a survival guide

Arguably the most useful part of USB’s power capabilities is the ability to charge batteries in portable devices, but there is more to battery charging than picking a power source, USB or otherwise. This is particularly true for Li+ batteries, where improper charging can not only shorten battery life, but also can be a safety hazard. A well-designed charger optimizes safety and the user experience. It also lowers cost by reducing customer returns and warranty repairs. Charging batteries from USB requires balancing battery “care and feeding” with the power limitations of USB as well as the size and cost barriers ever present in portable consumer device designs. This article discusses how to achieve this balance.

Thanks rsdio!

Control an LED with brainwaves and Arduino

Sean the Flex Guy has posted his basic experiments capturing brainwave data from the Neurosky Mindset BCI and conveying it to an Arduino. The readings are processed by the Arduino and displayed on an LED, in this case indicating the relative attention level of the participant.

Sean has published the ActionScript 3.0 API he created for interfacing Flash/Flex projects to the Mindset as well as the AS3Glue to communicate with the Arduino from AIR.

Here’s the link to Sean’s video more fully describing his efforts.

ChronoBlot DIY remake of the ChronoDot

schazamp shared his ChronoBlot remake of the MaceTech ChronoDot in the project log forum:

I made this ChronoBlot a while back, but now that I have a Bus Pirate, I can easily test it out, set the clock, and set the alarm (and write scripts to help with that), so I’ll be updating it soon and wanted to track it on this projects forum.

Thanks schazamp! Via the forum.

Get your own handy Bus Pirate for $30, including world-wide shipping. Also available from our friendly distributors.

Trends: microcontrollers outsource interrupt handling

In this article, Chris Edwards highlights the reasons behind moving interrupt handling from the main microcontroller onto to low power companion chips. In order to conserve electricity and processor power, the growing practice is to have the bulk of the microcontroller powered down most of the time, only waking up for brief periods for necessary tasks.

Examples include the NXP LPC4000 wherein a separate engine on the device performs semi automatic sequencing for serial I/O to reduce the number of interrupts that the slave ARM Cortex M0 processor core has to take when reading or writing data to the ports on behalf of the host M4 core. Another example is the analogue sequencing engine in some FPGAs made by Microsemi.

Via Newelectronics.

Trivia: CPLD on a PDIP?

Atmel produces what are believed to be the only CPLD devices sold in PDIP form: the ATF2500C and ATF750C . These devices are priced at between $5 and $8 at Digikey and Mouser. Programming hardware and software is available from Atmel.

Atmel provides free design software known as WinCUPL, which mainly supports programming in the CUPL programming language, a holdover from the DOS days. (Conversion of a VHDL file is briefly referenced in Section 5.4.1 of their CUPL reference manual.)

Practically, this information serves more for trivia purposes than anything else, and illustrates what remains of the early historical development of PLDs.

Even though PDIP parts are more familiar to beginners, it is more beneficial to start learning about contemporary CPLD components and programming using breakout boards and the VHDL and Verilog languages. Check out our CPLD wiki and tutorials. CPLD breakout board on sale soon!

DIY piezoelectric materials

Make has a video on DIY piezoelectric materials:

Piezoelectric materials are about as close to magic as you can get. They turn physical pressure into electricity and can even turn electricity into physical pressure – an amazing sort of bidirectional converter for mechanical and electrical energies. Perhaps even more amazing is the fact that you can easily ‘grow’ your own piezoelectric crystals overnight using just a couple of common ingredients – awesome.

New version of pyBusPiratelite Python library

cloudform511 updated the pyBusPiratelite Python library. This library has the building blocks for controlling the Bus Pirate from a Python script, there’s also some examples to get you started.

Get your own handy Bus Pirate for $30, including world-wide shipping. Also available from our friendly distributors.

Week in (p)review: March 13, 2011

Don’t forget to share your current project in the comments or the forum. This week our favorite project gets a free SOIC protoboard.

Here’s a summary of major developments over the last week:

We have a couple things in mind for this week:

  • This is probably the last Sunday week in (p)review, we’re moving it to Friday
  • Probably no new projects this week, but we’ll try to push some firmware updates. The next projects to look for are Bus Blaster v2 and the CPLD development boards
  • Lots more demos are going up for the CPLD development boards. The VHDL tutorials are complete, and we’re started a library of 7400 logic devices

What are you hacking this week?

Free PCB Sunday: xQFP protoboard

We go through a lot of prototype PCBs, and end up with lots of extras that we’ll never use. Every Sunday we give away a few PCBs from one of our past or future projects, or a related prototype. Our PCBs are made through Seeed Studio’s Fusion board service.

This week we’re giving away two PCBs for our new xQFP protoboard (0.65mm only). This giant protoboard has a xQFP breakout footprint, along with a score of other pads for SMD parts. Currently available in 0.50mm, 0.65mm, and 0.80mm. If you’d like a PCB just ask for one in the comments. Please specify a size, freebies available in 0.65mm and 0.50mm only.

Available in 0.50mm, 0.65mm, and 0.80mm for $10, read about the design on the wiki.

Continue reading “Free PCB Sunday: xQFP protoboard”

Vienna hackerspace autoposts realtime project videos

It seems like every hackerspace has their own means of communicating status messages to their members. The hackers at MetaLab in Vienna have put together a rather novel way of letting the world know they have completed a project. While some hackerspaces simply notify their members that they are open for business, they take things a step further: they ALERT THE INTERNETS!

When a project is deemed complete, the camera is removed from the dock, and any number of videos can be recorded. When the camera is returned to the dock, a canned introduction video is added to the recordings, then everything is automatically uploaded to YouTube. No extra time is required, no video editing needs to be done – their work hits the Internet immediately once they have finished filming it.

Via Make.