Using three pins to drive three LEDs and read three buttons

Sometimes in more complex projects it is a waste to dedicate a line for every LED or button. If you thinking of selecting bigger microcontroller because you need additional pin to drive LED, think of smart way out. Francois AUGER & Philippe Fretaud have shared their technique of interfacing three LEDs and three buttons with three I/O pins.

three_leds_three_buttons_three_gpio

They used special Charlieplexing method of connecting all together and then wrote code piece to drive LEDs and read buttons. Three additional diodes allow reading buttons without affecting other components. Using three additional diodes is way more efficient than expanding number of pins. See video bellow of live action. Continue reading

Read

Watch with Numitron tubes

DIY digital watches are pretty intensive field among hobbyists. NO matter how many builds you’ve seen, there are always something new and unique. This time Johannes shared his recent project where he is building watch with 7 segment Numitron tubes. They are small enough to fit as displays in to wristwatch. (Video in German)

Watch is controlled by Atmega8 microcontroller which drives tubes through couple TLC6C598 drivers. Watch also includes charging circuit that allows taking care of battery inside. Watch with tubes were placed inside custom 3D printed enclosure which has windows for digits. There are some work left to finish the project – mostly with enclosure and fixing buttons.

Read

STM32 programming options the easy way

Every time you start with new microcontroller, you have to deal with new ways of programming them. You may need to purchase and learn new tools and so on. But once you’ve done this process with any microcontroller, learning new is easy. So if you are in to STM32 microcontrollers Shawon have written pretty god guide on programming them.

flashing_stm32

Since ARM Cortex micrcontrollers are flexible devices in terms of developing, debugging and flashing, you have several options of getting your code up and running. Like most manufacturers do, ST devices can be programmed and debugged with special ST-link adapter/debugger which works in JTAG or in SWD mode. Most development boards like discovery already have ST-link debugger integrated so the only thing is needed to run software and load your code. Other covered option is using built in bootloader which can be accessed through serial interface. ST have special software Flash Loader Demonstrator for programming in this mode. When programing with bootloader, special pins have to be pulled up or low in order to access it. This resource is great to start with and then you can dig deeper during development process.

Read

SlightBox extends display with light effects

Computer monitor is pretty strict device – is displays information withing its frame. Outside and behind its dark. To change that Sebastien has been working on several versions of SlightBox projects where it allows playing light effects behind screen that extends on-screen effects and somewhat removes limits between screen and outside world.

Video demonstration speaks for itself. Watching movies and playing games become different with those effects. The heart of this system is Raspberry Pi which does video signal analysis and determines color pixels from captured frames. Python script uses OpenCV library to do this task. Once color data is gathered, it is sent over SPI to LPD8806 LEDs behind screen. Since analyzing HDMI signals is quite tricky, he split HDMI signal where one was converted to S-video which then was fed to Raspberry Pi with STK1160 adapter. Raspberry pi also has a standard LCD for fast control and monitoring parameters. Infrared channel allows remote control of SlightBox. Raspberry Pi also allows configuring devices via web interface. So this is fun device that vivid and extend any HDMI screen at your house. Fun guaranteed. (translated source)

Read