Last chance to enter The Hackaday Prize.

The Most Basic BASIC Computer

avr computer

AVR microcontrollers can do pretty much anything nowadays. Blinking LEDs, handling sensor inputs, engine control modules, and now, thanks to [Dan], a small single chip BASIC computer with only ten parts (and four of them are capacitors).

[Dan]‘s homebrew computer has it all. The ATmega 1284P microcontroller outputs a composite video signal and handles inputs from a PS/2 keyboard. The microcontroller runs at 16 MHz, has 7 kB of memory for programs, and can use a separate EEPROM to store data. It also has an array of GPIO pins for interacting with the physical world.

For software, the microcontroller runs a version of BASIC called Tiny BASIC plus, which is a stripped-down language that can fit in 3 kB of memory. This is crucial if you’re in the 1970s or if you’re programming on an AVR microcontroller in the 21st century.

We’ve seen other Arduinos and AVR-type microcontrollers that can run BASIC, but this one has a great form factor and clean look. It’s also a great way to get familiar with homebrew computing and the BASIC programming language!

TFT LCDs Hit Warp Speed with Teensy 3.1

spi-speedup

[Paul Stoffregen], known as father of the Teensy, has leveraged the Teensy 3.1’s hardware to obtain some serious speed gains with SPI driven TFT LCDs. Low cost serial TFT LCDs have become commonplace these days. Many of us have used Adafruit’s TFT LCD library  to drive these displays on an Arduino. The Adafruit library gives us a simple API to work with these LCDs, and saves us from having to learn the intricacies of various driver chips.

[Paul] has turbocharged the library by using hardware available on Teensy 3.1’s 32 Freescale Kinetis K20 microcontroller. The first bump is raw speed. The Arduino’s ATmega328 can drive the SPI bus at 8MHz, while the Teensy’s Kinetis can ramp things up to 24MHz.

Speed isn’t everything though. [Paul] also used the Freescale’s 4 level FIFO to buffer transfers. By using a “Write first, then block until the FIFO isn’t full” algorithm, [Paul] ensured that new data always gets to the LCD as fast as possible.

Another huge bump was SPI chip select. The Kinetis can drive up to 5 SPI chip select pins from hardware. The ATmega328 doesn’t support chip selects. so they must be implemented with GPIO pins, which takes even more time.

The final result is rather impressive. Click past the break to see the ATmega based Arduno race against the Kinetis K20 powered Teensy 3.1.

Paul’s library is open source and available on Github.

[Read more...]

An Open Source 1MHz Arbitrary Waveform Generator with an Awesome UI

1MHZ DDS

 

[Herp] just shared a nice 1MHz Arbitrary Waveform Generator (right click -> translate to English as google translation links don’t work) with a well designed user interface. His platform is based around a PIC32, a TFT module with its touchscreen and the 75MHz AD9834 Direct Digital Synthesizer (DDS). Of course the latter could generate signals with frequencies up to 37.5MHz… but that’s only if two output points are good enough for you.

As you can see in the video embedded below, the ‘tiny dds’ can generate many different kinds of periodic signals and even ones that are directly drawn on the touchscreen. The offset and signal amplitude can be adjusted using several operational amplifiers after the DDS ouput and a separate SMA TTL output is available to use a PIC32 PWM signal. The platform can read WAV audio files stored on microSD cards and also has an analog input for signal monitoring. Follow us after the break for the video.

[Read more...]

Hands-On DEFCON 22 Badge

view of front and back

It took a measly 2-hours in line to score myself entry to DEFCON and this nifty badge. I spent the rest of the afternoon running into people, and I took in the RFIDler talk. But now I’m back in my room with a USB cord to see what might be done with this badge.

First the hardware; I need a magnifying glass but I’ll tell you what I can. Tere are huge images available after the break.

  • Parallax P8X32A-Q44
  • Crystal marked A050D4C
  • Looks like an EEPROM to the upper right of the processor? (412W8 K411)
  • Something interesting to the left. It’s a 4-pin package with a shiny black top that has a slightly smaller iridesent square to it. Light sensor?
  • Tiny dfn8 package next to that has numbers (3336 412)
  • Bottom left there is an FTDI chip (can’t read numbers)
  • The DEFCON letters are capacitive touch. They affect the four LEDs above the central letters.

I fired up minicom and played around with the settings. When I hit on 57600 8N1 I get “COME AND PLAY A GAME WITH ME”.

Not sure where I’m going from here. I don’t have a programmer with me so not sure how I can make a firmware dump. If you have suggestions please let me know in the comments!

[Read more...]

Parallax Propeller 1 Goes Open Source

OpenPropellerProjectOpenSourceProp1Banner

Parallax has embraced open source hardware by releasing the source code to its Propeller 1 processor (P8X32A). Designed by [Chip Gracey] and released in 2006, the 32-bit octal core Propeller has built up a loyal fan base. Many of those fans have created development tools for the Propeller, from libraries to language ports. [Ken, Chip], and the entire Parallax team have decided to pay it forward by releasing the entire source to the Propeller.

The source code is in Verilog and released under GNU General Public License v3.0. Parallax has done much more than drop 8-year-old files out in the wild.  All the configuration files necessary to implement the design on an Altera Cyclone IV using either of two different target boards have also been included. The DE0-Nano is the low-cost option. The Altera DE2-115 dev board is more expensive, but it also can run the upcoming Propeller 2 design.

The release also includes sources for the mask ROM used for booting, running cogs, and the SPIN interpreter. [Chip] originally released this code in  2008. The files contain references to PNut, the Propeller’s original code name.

We’re excited to see Parallax taking this step, and can’t wait to see what sort of modifications the community comes up with. Not an Altera fan? No problem – just grab the source code, your favorite FPGA tools, and go for it! Starved for memory? Just add some more. 8 cogs not enough? Bump it up to 16.  The only limits are the your imagination and the resources of your target device.

Interested in hacking on a real Propeller? If you’re in Las Vegas, you’re in luck. A Propeller is included on each of the nearly 14,000 badges going to DEFCON 22 attendees. While you’re there, keep an eye out for Mike and The Hackaday Hat!

Control This Pedestrian Walk Signal Online!

Capture

[Jon Bennett] is an electrical engineer who specializes in embedded systems software. He was the first employee of Pebble Technology and the lead developer of the inPulse Smart Watch. He has studied at the University of Waterloo during which he completed several interesting internships, including working on Bluetooth and WiFi embedded software for the iPhone (Apple, 2007). Now, he has hooked up this pedestrian walk signal — picked up at an electronics surplus store — to the internet.

The web-enable project utilizes a Spark Core Wifi Module, which is an Arduino-like micro-controller with more power, to wirelessly connect to the device. With the click of a button, the hand signal can be flashed. The walking illuminated man can be triggered with another press. Messages can be sent scrolling across the LED’s flashing by in sets of two simply by hitting enter.

All the source code has been posted on Github in case anyone wants to create their own.

Capture

[Jon]‘s previous work can be found in a few of our featured articles from a couple of years ago. There’s the Thrift Shop Wifi Router Robot he made that could be controlled through the internet. He also built this interactive bubble music visualizer, and this programmable RC car that can be driven by a computer.

What will he think of next??

Fantastic Tach Is Strangely Called Tachtastic

tachtastic diy tachometer

We all have projects from yesteryear that we wish had been documented better. [EjaadTech] is fighting back by creating a project page about a tachometer he built 3 years ago while in college. He’s done a great write-up documenting all the steps from bread-boarding to testing to finished project. All of the code necessary for this tachometer is available too, just in case you’d like to make one yourself.

At the heart of the project is an AVR ATMega8 chip that performs the calculations and controls the LCD output screen that displays both the immediate RPM as well as the average. To hold everything together, [EjaadTech] etched his own custom PCB board that we must say looks pretty good. In addition to holding all the necessary components, there is also an ISP connector for programming and re-programming.

There are two attachment options for sensing the RPM. One is a beam-break style where the IR emitter is on one side of the object and the receiver is on the other. This type of sensor would work well with something like a fan, where the blades would break the IR beam as they passed by. Then other attachment has the IR emitter and receiver on one board mounted next to each other. The emitter continually sends out a signal and the receiver counts how often it sees a reflection. This works for rotating objects such as shafts where there would not be a regular break in the IR beam. For this reflective-based setup to work there would have to be a small piece of reflective tape on the shaft providing a once-per-revolution reflection point. Notice the use of female headers to block any stray IR beams from causing an inaccurate reading… simple and effective.

 

Follow

Get every new post delivered to your Inbox.

Join 91,190 other followers