Tag Archives: FTDI
In order to be able to upload Arduino sketches directly to the ATtiny84 over USB without the need to use a programming device, Shawn Hymel, an electrical engineer at Sparkfun Electronics, had published a guide showing how to install the micronucleus bootloader, which supports virtual USB (V-USB), onto an ATtiny84 using Arduino.
The Atmel AVR ATtiny84 is a $3 tiny 8-bit processor with 8K of program space, 12 I/O lines, and 8-channel 10 bit ADC. It will run up to 20MHz with an external crystal and can be programmed in circuit.
To start following the tutorial, you will need these parts:
- USB Mini-B Cable
- USB microB Cable
- SparkFun FTDI Basic Breakout – 3.3V
- SparkFun microB USB Breakout
- Resistor 100 Ohm 1/4th Watt PTH – 20 pack
- LED – Basic Red 5mm
- AVR 14 Pin 20MHz 8K 12A/D – ATtiny84
- Electrolytic Decoupling Capacitors – 10uF/25V
- Arduino Pro Mini 328 – 3.3V/8MHz
- Jumper Wire Kit
- Breadboard – Self-Adhesive (White)
- 2x 68Ω Resistors
- 1x 1.5 kΩ Resistor
Micronucleus is a bootloader designed for AVR ATtiny microcontrollers with a minimal usb interface, cross platform libusb-based program upload tool, and a strong emphasis on bootloader compactness. It has a built in V-USB so that you can send compiled firmware over a virtual USB connection.
The process will use an Arduino as a programmer by loading an Arduino ISP to install the micronucleus bootloader on the ATtiny84. The next step is allowing USB programming on ATtiny84 by manually change fuses, then creating a board definition for ATtiny84 and installing any necessary USB drivers.
The hardware components should be connected as shown in the above circuit. At first you have to remove the capacitor and connect a FTDI breakout to the Arduino Pro Mini and upload the Arduino ISP firmware.
Before installing Micronucleus, a 10μF capacitor is added between the RESET and GND pins of the Arduino. It will prevent the Arduino from entering bootloader mode so that it will pass the compiled firmware to the connected ATtiny rather than trying to program itself.
AVRDUDE is used then to change the ATtiny fuses and set them as the following:
- No clock divider
- Brown-out detection at 2.7V (not necessary, but useful if running off battery)
deba168‘s new instructable is a weather widget: “an application that can be downloaded on your PC, laptop or a mobile device and perform the job of providing easy access to weather information”
It’s an ESP8266 based weather display unit which retrieves localized weather information from http://www.wunderground.com by WLAN and displays it on a 128×64 OLED display. It displays the current time with date, some weather information like temperature, pressure, humidity and rainfall, and finally the forecasting for the next 3 days.
Check this demo video:
In order to build this project you need the following parts:
- ESP8266 -01 (eBay )
- Optional NodeMCU ESP8266-12 ( eBay )
- OLED Display (eBay )
- Voltage Regulator AMS1117 ( eBay )
- Tactile Switch (eBay )
- Slide Switch ( eBay )
- Resistors ( 10K and 330R )
- Female Double Row Straight Pin Header ( eBay )
- Male Double Row Right Angle Pin Header ( eBay )
- Jumper Wires ( eBay )
- Prototype Board ( eBay )
You can build the circuit as per the design below on a prototype board or a PCB:
For programming you have to use these files:
Arduino Code: ESP8266 Weather Station
The project’s maker advises you to follow his steps in the code inside this zip file to avoid any problems in compiling.
For obtaining data from the Weather Underground , you need to get an API key through signing up in the website and purchasing one. Once you clarify that you won’t use it for commercial use, you won’t be asked for any pay methods.
To make sure that the code will work correctly, you have to change the following things.
- Enter the Wunderground API Key
- Enter your Wifi credentials
- Adjust the location according to Wunderground API
- Adjust UTC offset
The final step will be programming the ESP8266 module using FTDI programmer.
Check this video for more information and to see the project in action:
You can check the instructable page for more information and detailed tutorial.
FTDI first introduced its Arduino-compatible concept – aiming to reach a wider audience – by means of a crowdfunding exercise. The company now has full availability of the CleO product (and accompanying accessories) through its distribution partners, as well as directly via the company’s website. FTDI Chip will also give engineers complete access to a comprehensive development resource, which has step-by-step tutorials and projects, plus a series of software tools. In addition, a new forum has been set up ( www.CleOstuff.com) on which design tips, application ideas and other information can be shared.
Arduino-compatible touch-enabled display shield from FTDI – [Link]
Johan Kanflo’s Esprog pogo pin connector:
The FTDI connector can be found on just about any ESP8266 design. If you are building a gadget to be deployed somewhere and not a full blown development board, the FTDI connector is somewhat overkill. And it is quite large. A few pins could be shaved off but we still have a through hole connector invading the other side of the PCB. I ended up designing my own connector and it has been used sucessfully in all of my recent projects.
Factory programming ESP8266 gadgets – [Link]
Marko Pavlin has published a USB to RS485 converter. He writes:
Testing of sensors with RS485 using PC without proper interface is not possible. Since RS232 interfaces are very rare, the interface should be hooked to USB. The interface between USB and RS485 can be soldered with one of the many FTDI interfaces with added RS485 driver, or bought as assembled module. There is always the third option. I made it from scratch.
USB to RS485 converter – [Link]
Sergey @ malinov.com has build another FTDI FT231X based USB to Serial adapter and provides the design files to the public domain.
This adapter allows connecting micro-controller boards that have 5V or 3.3V serial interfaces to a PC USB port. The converter is compatible with FTDI USB TTL Serial cables and SparkFun FTDI Basic breakout board. Compared to SparkFun board, uses much more reliable and common nowadays Micro USB connector. It is also cheaper to make (about $7 per board), and so it makes a nice project for practicing your SMD soldering skills :-).
USB to Serial Adapter using FTDI FT231X – [Link]
A reference design for an Arduino UNO compatible board based on the FTDI FT231X USB UART, delivers 5V at a full 1A without overheating.
The UNO R3 is the staple of most Arduino based projects but it’s been around for a number of years and many of the features have been improved for example by Adafruit and Sparkfun who make excellent enhanced UNO compatibles. However, our additional requirements for a full 1A current without excess heat dissipation and FCC/CE conformity led us to consider a new 3rd party UNO compatible reference design that met these requirements hence the inspiration behind NerO
NerO – An Energy Efficient Arduino UNO Compatible Design – [Link]
FTDI.FT-X series USB to serial bridges can be still reasonable option even for today.
Microcontrollers with USB interface are common nowadays. Manufacturers provide source codes for USB device classes like CDC, HID, Mass storage and DFU. . Even in this case, programming USB communications may not be a trivial task. If it is only required to replace RS232 serial interface to USB, is worth considering using of FTDI TF-X series USB to serial bridge.Advantages:
- Entire USB protocol handled on the chip. No USB specific firmware programming required.
- Detection of connection to DCP (Dedicated Charging Port) USB port.
- Lower requirements for microcontroller resources. Communication through UART, I2C or SPI is less resource demanding than implementation of USB CDC device class
- Drivers for Windows, Mac OS-X, Linux and Android for free.
- Microcontroller pins are connected to USB connector through USB/serial bridge. ESD or overvoltage spikes on USB bus can damage bridge instead of microcontroller. Replacement of small bridge chip is simpler than replacement of microcontroller.
- USB/serial bridge chip requires PCB space and increases cost.
Microcontrollers with USB interface are common, but… – [Link]
If you are looking for a touchscreen LCD display for your next project you should take a look at Riverdi LCD solutions. Their aim is to produce innovative, high quality LCD solutions at affordable prices. They were kind enough to send us a sample of a FTDI FT801 controller LCD display along with their Arduino TFT shield to test out. This LCD display has a build in video engine that accelerates performance over standard TFT displays when used with low power MCUs.