nrf24l01+ using 3 ATtiny85 pins


[Ralph] wasn’t satisfied with the required 5 control pins to drive his nrf24l01+ transceiver module, so he used this circuit needing just 3 pin using an ATtiny85.

One of the key components was to effectively drive the chip select (CSN) line from the clock (SCK) line. The nrf24l01+ needs the CSN line to transition from high to low on the beginning of a communication.  [Ralph] put the SCK line behind a diode, put a capacitor in parallel with the CSN line and altered the arduino-nrf24l01 library to encode extra delays for the clock line.  This allowed the CSN line to be driven by the SCK line. Subsequent line transitions during transmission happen too fast to charge the capacitor, leaving the CSN line in a low state.

After tying the chip enable line high and dropping the 5V power line to 1.9-3.6V across a red LED, [Ralph] had an ATtiny85 controlling a nrf24l01+ module.

Though deceptively simple, a very cool hack that opens up a couple more lines on the ATtiny85.

Hack All the Things in the Time You Save with This LED Pomodoro Timer

Do you want to use your time more productively but are tomato-averse? [Robin]‘s LED Pomodoro timer could be the perfect hack for you.

The Pomodoro Technique is a time management solution developed in the late 1980s. The basic idea is to spend a very focused 25 minutes performing some activity such as working or studying and then take a 5-minute break. Many of its proponents use a tomato-shaped kitchen timer to alert them to switch between the two states, but [Robin] wanted to make his own and learn along the way.

First, he wanted to use an ATtiny85 and learn about its features. Specifically, he used its timers, PWM, and low-power sleep mode. [Robin] used Charlieplexing to drive a total of six LEDs. When the timer starts, five yellow LEDs are driven high to indicate each 5-minute slice of work time. A red LED is lit during the 5-minute break.

[Robin] also explored compact PCB design and fabrication. All components are SMD and his board is 4cm square. [Robin] is using this SMD buzzer for discrete feedback. He included a footprint for a six-pin ISP header and programmed it with pogo pins. The timer is completely interrupt-driven: one click of the tactile button starts the work counter, and the buzzer sounds when time is up. A second click starts the break counter.

[Robin] has made everything available in his GitHub repo and encourages you to use it. Time’s a-wastin’!

Rewriting WS2812 Driver Libraries for Optimization


We like [Tim's] drive for improvement. He wrote a WS2812 driver library that works with AVR and ARM Cortex-M0 microcontrollers, but he wasn’t satisfied with how much of the controller’s resources the library used to simply output the required timing signal for these LED modules. When he set out to build version 2.0, he dug much deeper than just optimizing his own code.

We remember [Tim] from his project reverse engineering a candle flicker LED. This time, he’s done more reverse engineering by comparing the actual timing performance of the WS2812(B) module with its published specs. He learned that although several timing aspects require precision, others can be fudged a little bit. To figure out which ones, [Tim] used an ATtiny85 as a signal-generator and monitored performance results with a Saleae logic analyzer. Of course, to even talk about these advances you need to know something about the timing scheme, so [Tim] provides a quick run-through of the protocol as part of his write-up.

Click the top link to read his findings and how he used them to write the new library, which is stored in his GitHub repository.

Low-Power SMD Fireflies


[Tyson's] family went with creating rather than buying Christmas presents last month, which gave him the opportunity to build some electronic fireflies for gifts. He drew inspiration from a similar firefly project we featured last year, but expanded on the original model by designing dedicated PCBs and housings for each of his firefly pieces.

Although he’d settled on using ATTiny85′s for this project, [Tyson] was fresh out of through-hole versions. He decided to skip the prototyping phase and go right for fabrication, cranking up the laser-jet printer for some toner-transfer, which successfully produced 4 functioning boards (and 3 failures). The fireflies were [Tyson's] first attempt at SMD soldering, and we’d have to say it’s a job well done; he reflowed each board with a cheap-o heatgun from Harbor Freight.

After some hiccups with fuse programming, [Tyson] got the code uploaded and the fireflies illuminated.  Swing by his site for the nuts and bolts on construction, then snag the project files here. (Direct .zip download)

Shrinket, The Homebrew Trinket


We’ve seen a lot of Trinket builds over the past few months, but so far few people have capitalized on the Trinket’s minimalism. It’s a fairly simple circuit, as far as dev boards go, and with careful planning can be built entirely on perfboard. That’s what [villeki] did, with a project he calls Shrinket.

After looking at the schematic for the Trinket, [villeki] figured he could best the very small footprint of this ATtiny85 board. To do this, he mounted the uC on the bottom side of the board, bending the pins so they could be easily soldered to the pins. The only real challenge in building this tiny board was the USB connector. To fit this connector on board, the copper pads were carefully scraped off the protoboard and wires run to the zeniers.

The Shrinket is impressively small – only 0.6″x 0.9″ – and a very impressive example of soldering skills. If you’re looking for a project to hone your free-form soldering skills, this is a great way to spend an hour or two. Bonus, you probably already have the parts required (or a reasonable substitute) sitting around.

Chachka: A Trinket Clone

Why would you clone something as cheap as the adafruit Trinket? Well, because you can, of course. And that’s exactly why [Ray] started to build a clone two days after his Trinket came in the mail. He encourages you to support adafruit by buying at least one Trinket before attempting a clone, and we agree. Besides, you’ll be able to use the support forum with a clear conscience.

[Ray]‘s design uses an 1800Ω pull-up resistor rather than the 1500Ω in the Trinket. He made this change based on his experience with V-USB and the ATtiny85. He has a lot more information on his build on the Arduino forum. Check out a short video of Chachka responding to a Sony-esque remote control after the break.

Need an application for your Trinket clone? Check out this incredibly well-built USB volume knob.

[Read more...]

The Tiniest SD Card Locker


In case you weren’t aware, that little ‘write protect’ switch on your SD cards probably doesn’t do anything. It’s only a switch, really, and if an SD card reader doesn’t bother to send that signal to your computer, it’s completely ineffective. Then there’s the question of your OS actually doing something with that write protect signal.

The better way to go about write protecting an SD card is using the TMP_WRITE_PROTECT bit on the SD card’s controller. [Nephiel] came up with an amazingly small device to set that bit, with the entire circuit fitting inside an old Playstation memory card.

[Nephiel] based his project on [Karl Lunt]‘s SD Card Locker we saw late last year. [Karl]‘s SD Locker uses an ATMega328 microcontroller, a pair of AA batteries, and an SD card socket to perform the bit toggling. This is still a very small device that fits inside an Altoids tin, but [Nephiel] thought he could make it smaller.

The new and improved version uses an ATTiny85 for SPI access to the SD card. A single button and LED serves as the user interface: with the LED off, the SD card is writable. Press the button, the card is locked, and the LED lights up.