Tag Archives: USB

Micro Maestro 6-Channel USB Servo Controller

The Micro Maestro is the first of Pololu’s second-generation USB servo controllers. The board supports three control methods — USB for direct connection to a PC, TTL serial for use with embedded systems, and internal scripting for self-contained, host controller-free applications — and channels that can be configured as servo outputs for use with radio control (RC) servos or electronic speed controls (ESCs), digital outputs, or analog inputs. The Micro Maestro is a highly versatile six-channel servo controller and general I/O board in a highly compact (0.85 x 1.20″) package.

The extremely accurate, high-resolution servo pulses have a jitter of less than 200 ns, making this servo controller well suited for high-precision animatronics, and built-in speed and acceleration control make it easy to achieve smooth, seamless movements without requiring the control source to constantly compute and stream intermediate position updates to the Micro Maestro.

Check this intro video by Pololu to see Micro Maestro in action:

Key Features

  • Three control methods: USB, TTL (5V) serial, and internal scripting
  • 0.25μs output pulse width resolution (corresponds to approximately 0.025° for a typical servo, which is beyond what the servo could resolve)
  • Pulse rate configurable from 33 to 100 Hz
  • Wide pulse range of 64 to 3280 μs when using all six servos with a pulse rate of 50 Hz
  • Individual speed and acceleration control for each channel
  • Channels can also be used as general-purpose digital outputs or analog inputs
  • A simple scripting language lets you program the controller to perform complex actions even after its USB and serial connections are removed
  • Free configuration and control application for Windows makes it easy to:
    • Configure and test your controller
    • Create, run, and save sequences of servo movements for animatronics and walking robots
    • Write, step through, and run scripts stored in the servo controller
  • Virtual COM port makes it easy to create custom applications to send serial commands via USB to the controller
  • TTL serial features:
    • Supports 300 – 250000 kbps in fixed-baud mode
    • Supports 300 – 115200 kbps in autodetect-baud mode
    • Simultaneously supports the Pololu protocol, which gives access to advanced functionality, and the simpler Scott Edwards MiniSSC II protocol (there is no need to configure the device for a particular protocol mode)
    • Can be daisy-chained with other Pololu servo and motor controllers using a single serial transmit line
  • Board can be powered off of USB or a 5 – 16 V battery, and it makes the regulated 5V available to the user
  • Compact size of 0.85″ × 1.20″ (2.16 × 3.05 cm) and light weight of 0.17 oz (4.8 g)
  • Upgradable firmware

The Micro Maestro is the smallest of Pololu’s second-generation USB servo controllers. The Maestros are available in four sizes and can be purchased fully assembled or as partial kits. you can check other products here.

You can get your Micro Maestro for around $20 from the product’s page, and you can also learn more about this product by checking the User’s Guide.

Source: Sparkfun

Using HealthyPi with a PC for ECG,Respiration & SpO2

Ashwin K Whitchurch, Venkatesh Bhat, and Manikandan S @ hackster.io build a PC based ECG,Respiration & SpO2 monitor.

We introduced the HealthyPi as a HAT add-on for the Raspberry Pi, turning it into a full-featured, medical-grade open patient monitor. However, we realized later that people also wanted to use the board standalone with a Windows/Linux/Mac PC. We already had an on-board USB port from the SAMD21 on the board.

Using HealthyPi with a PC for ECG,Respiration & SpO2 – [Link]

Analog Discovery USB isolation

Bob tipped us with his latest article. He writes:

Back when I was developing the PSU burner, I wanted to have the Analog Discovery isolated from the common ground, to avoid noise and other issues. Since I did not have a way to do this, I ended up using a laptop on battery for measurements. But for long term, I needed to have this isolation. Unfortunately, things that can isolate USB at 480Mbps or faster are too expensive to justify.
The solution
The ADUM3160 isolator can provide a magnetically isolated 12 Mbps connection, which proved to be good enough. I grabbed one ready made isolator module from ebay for about $12, cheap enough. Well, it is not perfect: the B0505S DC/DC converter provided can only supply 1W and the Analog Discovery is a hungry beast.

Analog Discovery USB isolation – [Link]

FONA808 USB Interface

Jesus @ jechavarria.com tipped us with his latest project. He writes:

For several months I’m working with FONA808 modules from Adafruit to make a portable, web-based locating system. This modules are based on the SIM808 module from SIMCOM manufacturer, and integrates both GSM and GPS transceivers in one 24x24mm package.  The Adafruit board includes this module and also some electronics for choosing voltage levels, battery connection and charger. Because I need to test and programming some of this modules, I decide to make an specific PCB for it, allowing the programming and debugging via PC, wich is more comfortable that use a microcontroller for all these tasks.

FONA808 USB Interface – [Link]

USB Volume Control and Caps Lock LED

p_leriche @ instructables.com build a USB volume control which is simple, cheap and extensible. Check it out:

I’m not the first person to publish an Instructable for a USB volume control, but I think this one is about as simple and cheap as it gets, and at the same time can be extended at minimal cost to various other functions such as:

  • Mute, Play, Pause and various other media buttons
  • Keyboard LEDs such as Caps Lock, Scroll Lock and Num Lock (a kana LED is also defined for Japanese users)
  • Application launch buttons such as browser, email, calculator etc
  • Browser navigation and other application control buttons
  • Gamepad buttons
  • System buttons for functions such as Sleep, Hibernate, Wake, Power down
  • Mouse buttons and movement

and many more, subject to support being provided by your operating system. Mine implements the volume and mute functions (mute by pressing the knob) and the 3 main keyboard LEDs.

USB Volume Control and Caps Lock LED – [Link]

Designing a simple and cheap temperature logger

pickandplace.wordpress.com writes:

I started with making the TMP102 temperature sensor work. Nothing to say in particular, it’s just an other I2C-small-package-sensor. Or rather SMBus, but apart from the minimum speed clock requirements on the SMBus, the two protocols are alike.

Designing a simple and cheap temperature logger – [Link]

PCB X-mas tree

Matthias created a X-Mas tree project using the DirtyPCB boards from dangerousprotorypes.com :

The project features an USB capable PIC16F1549 µC with:

  • USB FS device
  • 48 MHz internal Oscillator
  • 2 PWM modules
  • 10-bit ADC with Voltage Reference
  • Integrated Temperature Indicator Module

The LEDs are connected to the 2 PWM outputs via N-mos drivers. A Potentiometer is connected to one ADC channel for controlling the brightness of the LEDs or possibly the speed or variation of animations. Different modes of the X-mass tree can be switched by pressing a push button.

PCB X-mas tree – [Link]

30 Minutes HIV Detection Using USB Stick

In partnership with DNA Electronics,  Imperial College London researchers had developed a revolutionary USB stick that can detect HIV in the bloodstream.

In order to detect the virus, it’s enough to use a drop of blood. Then the USB stick generates an electrical signal that can be read by a computer, laptop or handheld device.

“We have taken the job done by equipment the size of a large photocopier, and shrunk it down to a USB chip” – Dr Graham Cooke, study author

This detection is useful for HIV patients for managing their treatment and to maintain their health. The longer the detection of HIV virus the harder to treat it, because antiretroviral treatment that is used for HIV may stop changing the status due to the resistance built by the virus to the medicine. This what the USB stick is working to solve, providing accurate results in a surprisingly short time.

To implement this, researcher had worked on “a novel complementary metal-oxide semiconductor (CMOS) chip based, pH-mediated, point-of-care HIV-1 viral load monitoring assay that simultaneously amplifies and detects HIV-1 RNA”.

Conventional ways to test HIV may take several days, but this device is promising to give results in less than 30 minutes! In addition, the detection can be done remotely, which allows faster detection for patients by themselves, and for some areas that don’t have advanced lab tests.

“This is a great example of how this new analysis technology has the potential to transform how patients with HIV are treated by providing a fast, accurate and portable solution. At DNAe we are already applying this highly adaptable technology to address significant global threats to health, where treatment is time-critical and needs to be right first time.” – Professor Chris Toumazou, DNAe’s Founder, Executive Chairman and Regius Professor at the Department of Electrical and Electronic Engineering at Imperial College London

Partnering with DNA Electronics was a great step for the researchers since this company is using similar technology to develop devices for detecting bacterial and fungal sepsis and antibiotic resistance. Right now, researchers are now looking for possibilities to advance their work and to check the ability that the device can detect other viruses such as hepatitis.

This research was funded by the National Institute for Health Research Imperial Biomedical Research Centre and it was published in Scientific Reports. You can learn more about it by checking the article “Novel pH sensing semiconductor for point-of-care detection of HIV-1 viremia” and the press release.

Single-chip USB-C buck-boost battery charger


Intersil’s ISL9238 and ISL9238A add 5V-20V reverse boost for USB On-The-Go charging of portables such as smartphones and headphones; two USB-C buck-boost battery chargers support bidirectional power delivery in ultrabooks, tablets, power banks and other mobile products. by Graham Prophet @ edn-europe.com:

The single-chip ISL9238 and ISL9238A battery chargers can replace two-chip solutions to reduce bill of materials (BOM) costs by up to 40%. Both ICs employ Intersil’s R3 modulation technology to extend battery life and deliver acoustic noise-free operation, improved light-load efficiency and fast transient response. The ISL9238 and ISL9238A operate in forward buck, boost or buck-boost mode to fast charge mobile battery packs with up to 4-cell Li-ion batteries.

Single-chip USB-C buck-boost battery charger – [Link]

Programming ESP8266 With Arduino IDE : The Easy Way

The ESP8266 WiFi Module is a self-contained SOC that can give any microcontroller access to your WiFi network. It’s an extremely cost-effective board with a huge and ever-growing community. Each ESP8266 module comes pre-programmed with an AT command set firmware. This module has a powerful on-board processing and storage capability that allows it to act as a standalone microcontroller.

Following 2 easy steps, you can upload Arduino sketches on your ESP8266 using Arduino IDE.

  • Configuring the IDE
  • Making the circuit

Parts List:

  1. ESP 8266 Module.
  2. Jumper wires.
  3. A breadboard.
  4. One USB to TTL converter, a.k.a UART converter.

Configuring The IDE:

In order to bring support for ESP8266 chips to the Arduino environment, you need to add ESP8266 Arduino Core in the IDE.

NOTE: You must have Arduino IDE version 1.6.4 or higher. The latest version is highly recommended. Download the latest version of IDE from Arduino.cc.

  1. Install Arduino 1.6.8.
  2. Start Arduino and open Preferences window.
  3. Enter http://arduino.esp8266.com/stable/package_esp8266com_index.json into Additional Board Manager URLs field. (See the first image)
  4. Open Boards Manager from Tools > Board menu and install esp8266 platform. (See the second image)

Add URL to "Preferences" in Arduino IDE

Add URL to “Preferences” in Arduino IDE

Select ESP8266 board from Board Manager

Select ESP8266 board from Board Manager

Making The Circuit:

ESP8266-01 wiring for uploading program
ESP8266-01 wiring for uploading program
ESP8266-12E wiring for uploading program
ESP8266-12E wiring for uploading program


  1. Connect GPIO0 to Ground (set it LOW or 0)
  2. Connect CH_PD toVcc (set it HIGH or 1)


  1. Connect GPIO0 to Ground (set it LOW or 0)
  2. Connect GPIO15 to Ground (set it LOW OR 0)
  3. Connect GPIO2 to Vcc (set it HIGH or 1)
  4. Connect CH_PD toVcc (set it HIGH or 1)

Pin Vcc and GND should be connected to power supply’s +ve and -ve rail respectively. TX and RX of ESP8266 should be connected to RX and TX of USB to TTL converter respectively.

NOTE: You can replace the USB to TTL converter with an Arduino UNO board, but you have to upload a blank sketch or “bare-minimum” sketch to the Arduino so that the MCU of the Arduino board doesn’t interrupt. Connect TX and RX of the ESP8266 to RX and TX of the Arduino UNO respectively.


You are done! Now just select your ESP8266 board from Tools > Board menu, write any program, and click on Upload button. The ESP8266 will run as standalone microcontroller now.

To have a clear idea, read the article FLASH AT FIRMWARE TO ESP8266 also.