MAX6675/MAX31855 Digital Thermocouple SPI Adapter with UEXT Interface

Overview

Compared to semiconductor temperature sensors, thermocouples have a wide working range, and do not need any external excitation power. They are cost effective and interchangeable. In some high temperature application, they may be the only practical choice with a reasonable price. Signal conditioning is the most tricky part for thermocouple temperature sensors, it deals with micro volts amplification and the cold junction compensation. Thanks to the MAX6675/MAX31855, all the signal conditioning had already been done inside the chip, and the amplified analog voltage is digitized and accessible to external MCU via SPI interface.

Continue reading

FacebookTwitterGoogle+Share

MH-Z16 NDIR CO2 Sensor with I2C/UART Interface Board

Overview

Unlike the chemical CO2 sensor(MG811), this NDIR CO2 sensor does not need a constant ON heating element. The heating element inside a chemical CO2 sensor keeps the sensor warm so that the chemical reaction could happen and produce an continuous EMF as the output, which depends on the CO2 concentration.  This NDIR measures the concentration of the CO2 by measure the received IR light strength, it only consume relatively high current during the ON state of the IR emitter.   Also, the manufacturer of the sensor claims a ±(50ppm +5%reading value) initial accuracy of this sensor, and it is factory calibrated. According to the datasheet of the sensor, the re-calibration of the sensor is  recommended over 6 months of use.  The method of the calibration is quite easy compared to the MG811, just put it in fresh air for a couple of minutes and press the “CALI” button on the adapter board or issue a “calibration” command.

NOTE: The USB2.0 port on your PC may not be able to provide sufficient current to power the sensor and your Arduino in the same time. To minimize the supply voltage fluctuation on the sensor, it is recommended to use an external 12V power supply on your Arduino.

Continue reading

Twin RJ45 Breadkout Board

Overview

This module is designed to ease the twisted pair cable wiring for our differential I2C extender and it could be used as a RJ45 breakout board, too.

Technical Details

RJ45_SCHEMATICS

As shown in the picture above, two RJ45 connectors are patched together in parallel, and each of the 8 pins are broke out to P3. 3x2pin 2062 connectors are broke out to P1. The six pins(A,B,C,D,E,F) of 2062 connectors are connected to seven(J1, J2,J3,J4,J5,J6,J7) of the eight pins of the parallel RJ45 connectors via 0ohm 1206 surface mount resistors.

To use as a RJ45 breakout board, user should unmount all the 0ohm resistors and use the P3 to connect his/her device.

 

Dimensions

RJ45_DIMENSION

 

Differential I2C Long Cable Extender PCA9600 Module – BOOST

Overview

This module is designed to enable long range I2C communications which extends the cable length from several meters to 300 meters. It is ideal for applications that need to run over long wires such as the CAT5e Ethernet cable that is commonly used to make connections between rooms. The signals are transmitted via balanced transmission lines (twisted pairs) which greatly reduces noise and extends the range. NXP PCA9600 I2C bus extender IC is used as the main component on this module. The PCA9600 is designed to isolate I²C-bus capacitance, allowing long buses to be driven in point-to-point or multipoint applications. It can operate at speeds up to at least 1 MHz.

There is an on-board boost converter that feeds 12V/24V (configurable) to the VBUS. VBUS can be optionally connected to power the remote device(s) across the wire. The BUCK version of this differential I2C long cable extender module can be optionally connected to the other end of the wire and buck the voltage down to 5V.

Continue reading

Differential I2C Long Cable Extender PCA9600 Module – BUCK

Overview

This module is designed to enable long range I2C communications which extends the cable length from several meters to 300 meters. It is ideal for applications that need to run over long wires such as the CAT5e Ethernet cable that is commonly used to make connections between rooms. The signals are transmitted via balanced transmission lines (twisted pairs) which greatly reduces noise and extends the range. NXP PCA9600 I2C bus extender IC is used as the main component on this module. The PCA9600 is designed to isolate I²C-bus capacitance, allowing long buses to be driven in point-to-point or multipoint applications. It can operate at speeds up to at least 1 MHz.

There is an on-board boost converter that feeds 12V/24V (configurable) to the VBUS. VBUS can be optionally connected to power the remote device(s) across the wire. The BUCK version of this differential I2C long cable extender module can be optionally connected to the other end of the wire and buck the voltage down to 5V.

Continue reading

Brief Introduction to S-Ctrl Framework

Air Series firmware v2.0 introduces an automation control oriented framework S-Ctrl. This framework allows up to 32767 devices to communicate over the 2.4G RF. The network is multiple-access, which means any device could send data to any device, which is similar to Ethernet or WiFi. The framework also defines the messaging format for different automation control purposes.

The Arduino library for S-Ctrl can be downloaded here.  Arduino libraries can be import by clicking “Sketch->Import Library->Add Library” in the Arduino IDE. Detailed instruction on installing Arduino libraries is here. There are basically 2 ways to use this library. The library contains examples in both ways (Raw and Framework).

Continue reading

AirDuino and AirDongle Firmware Upgrade

We are glad to publish v2.0 beta firmware for AirDuino and AirDongle. This is a major upgrade from v1.x. Many improvements has been made to existing functions. An automation control oriented framework S-Ctrl is introduced into this version. This framework allows up to 32767 devices to communicate over the 2.4G RF. The network is multiple-access, which means any device could send data to any device, which is similar to Ethernet or WiFi. The framework also defines the messaging format for different automation control purposes.

This article mainly demonstrates the process of firmware upgrade for AirDuino and AirDongle from v1.x to v2.0. There has been some performance improvements in the RF messaging part. However, compatibility with the 1.x version was sacrificed. This makes the upgrading process complex. The process is not risky, just too many steps to go.

Continue reading

Breaduino- A Breadboard Power Supply with FT232RL USB to Serial Bridge

Overview

With the growing popularity of USB3.0 interface on PC and ubiquity of smart phone chargers, we designed this product with a micro USB connector. When use it as a breadboard power supply, user could power the board via his/her cell phone charger; when use it as a Arduino/USB to Serial Convertor, user just need to plug the USB cable to his/her PC. User could use the onboard config switches to select the operating voltage, crystal frequency of the external MCU. Also, the logic level of the onboard USB to Serial Convertor is 3.3V/5V configurable, too.

Features

  • Seperated 1A rating switches for 3.3V and 5V channel
  • Configurable VIO* 3.3V/5V
  • Configurable auto-reset for Arduino
  • Configurable 8M/16M crystal for Arduino
  • Extra headers to accept female connectors
  • Plug and play design

Continue reading

RasPiDeck – A Raspberry Pi to Arduino Bridge

Overview

This product is designed to used with Raspberry Pi, which gives Raspberry Pi 5v GPIO, I2C and SPI handling capability. Further more, the onboard headers are placed in a way the same as Arduino UNO Rev3, which allow shields designed for Arduino could be directly plug onto this product without addtional wiring.  As the Raspberry Pi has no ADCs onboard, an ADC chip is added to this product, now you can read analog voltage with your Pi.  This product also has a 3.3V 0.5A LDO onboard, which convert the 5V coming from Raspberry Pi to 3.3V, this voltage is used by the onboard ICs, which will save the LDO on Raspberry Pi from over temperature.

Features

  • 3.3V/5V GPIO Capability
  • 3.3V/5V I2C Capability
  • 3.3V/5V SPI Capability
  • Onboard ADC
  • Stand alone 3.3V LDO
  • Stand alone 5V SMSP
  • All features are software programmable via I2C interface

Continue reading

RasPiDeck Gives Your Raspberry Pi 5V I/O Capability

A few months ago,  Kornel, one of our customers, told us that he wanted something similiar to PiFace. Inspired by this product, I thought that I could make something else which utilizes the shields and sensors designed for Arduino.  There are thousands of different kinds of shields and sensors for Arduino already existing in the market. They are mature in hardware and most of them are provided with open source code.

I told my idea to Kornel and he said the stuff I was going to design is already in the market. However, I decide to design something has more features compared to Cooking Hacks’ Raspberry Pi to Arduino Bridge. I named the product RasPiDeck because it was designed to load  exteral shields or sensors. Here is some features which I think might  be useful or nessessary for RasPiDeck.

  1. It should handle 5V input without any off-board component
  2. It could drive shields/sensors which only accept 5V logic
  3. It must have its own 5V-3.3V LDO, since the LDO on Raspberry Pi is already heavily loaded.
  4. The SPI/I2C interface of RasPiDeck should be able to work on both 3.3V and 5V device.

After a month working(schematics, layout, component sourcing and PCB manufacturing), the first version of RasPiDeck looks like this

raspideck1

It has 19 jumpers on board which are used to select the direction of the header pins,  the logic level of I2C and SPI interface and the source of the referece voltage for onboard ADC.  After my colleague Peng saw this, he said “If I were a newbie, I will be overwhelmed by the jumpers, and it is quite inconvenient to manually config 19 jumpers”  I decided to take his advise and make revision to the first editon.  I was involved in another project which has higher priority after a few days working on the second revision, so after two months the second revision comes true

raspideck2

I replace all the jumpers with SPDT analog switches and add a I2C IO expander to control the switches. Now, it looks less overwhelming and user could use code to config the IO directions/voltage levels and the logic level of I2C and SPI interface.

Below is what it looks like when it sits on a Raspberry Pi,

withraspberry

This product will be handed over to factory next week and it will be ready in about three weeks. As all of our products,  the board color will be blue and the pad will be gold plated. The datasheet will be ready before the product is ready to market and all the technical details will be there.

 

 

A bizaare short circuit female header connector

I was fiddling around with a newly designed shield for Arduino and I just can not get the shield to work properly after a few tries.  Then I grabed my DVM and measured power supply pin of one of the ICs on the shield. The shield is supposed to be powered by the 3.3V pin on Arduino.  Superisingly, I found it was 5V!

Then I quickly disconnected the USB cable and pulled off the shield from Arduino.  I measured the 3.3V and 5V pins on the shield. There was no short. Then I measured the 3.3V and 5V pins on the Arduino. There was no short either!!!

I powered the Arduino alone and measured the 3.3V pins, and it gives a good value of 3.35V.

I realized that there may be something wrong with the 6-pin female header of Arduino, and then I tear off the housing of the header and I found there is a weakly contacted solder bridge as shown below:

short-circuit female header 1 short-circuit female header 2

It is a quite old device, I bought it online back in year 2011 or 2010. I had been using this device for years and the symptom shows up today! The problem only happens after a shield is applied to the Arduino.

It seems that the soldering bridge is due to excess solder, excess diameter of the through hole and the unsealed buttom of the header.

This is just another story of how bad soldering affects the long term reliability of an electronics device.

MP3 Audio Shield with DTMF Support

Overview

This shield is designed for audio playback and recording. A pair of 3.5mm audio connectors are used for connecting earphone/speaker and microphone for audio playback and recording, respectively. Another pair of 3.5mm audio connectors can be used with e.g. an external GSM modules. This audio shield can work as an answer machine for recording voice messages. Further more, it supports DTMF decoding, which provides the possibilities for interactive control functionality. (e.g. “Dial 6 to switch off the light in living room.”) All functionality can be controlled via I2C, which includes audio playback and recording, DTMF decoding, channel switching etc. An Arduino library is provided for every function that is supported by this shield. The audio playback and recording function is performed by the WT2000 chip and the DTMF decoding is done by MT8870.

Continue reading