36$ Complete Sensor-to-Cloud Inspiration Kit

Silicon Labs, the leader in energy-friendly solutions for a smarter, more connected world, has been constantly making silicon, software and tools to help engineers transform industries and improve lives since 1996.

Silicon Labs has just launched its newest development platform, The Thunderboard Sense Kit. Thunderboard Sense is a small and feature packed development platform for battery operated IoT applications. It is partnered with a mobile app that seamlessly connects Thunderboard Sense to a real time cloud database.

1014288180

batterybuttons-81756b55c133b9dacd11a7a0d1e897d5d7bf311e-s300-c85The mobile app enables a quick proof of concept of cloud connected sensors. The multi-protocol radio combined with a broad selection of on-board sensors, make the Thunderboard Sense an excellent platform to develop and prototype a wide range of battery powered IoT applications.

The 30 mm x 45 mm board includes these energy-friendly
components:

  • Silicon Labs EFR32 Mighty Gecko multiprotocol wireless SoC with a 2.4 GHz chip antenna, with an ARM Cortex-M4 core plus support for Bluetooth low energy, ZigBee, Thread and proprietary protocols
  • Silicon Labs EFM8 Sleepy Bee microcontroller enabling fine-grained power control
  • Silicon Labs Si7021 relative humidity and temperature sensor
  • Silicon Labs Si1133 UV index and ambient light sensor
  • Bosch Sensortec BMP280 barometric pressure sensor
  • Cambridge CCS811 indoor air quality gas sensor
  • InvenSense ICM-20648 6-axis inertial sensor
  • Knowles SPV1840 MEMS microphone
  • Four high-brightness RGB LEDs
  • Onboard Segger J-Link debugger for easy programming and debugging
  • USB Micro-B connector with virtual COM port and debug access
  • Mini Simplicity connector for access to energy profiling and wireless network debugging
  • 20 breakout pins for easy connection to external breadboard hardware
  • CR2032 coin cell battery connector and external battery connector

Onboard sensors measure data and transmit it wirelessly to the cloud. Thunderboard Sense comes with Silicon Labs’ ready-to-use cloud-connected IoT mobile apps, to collect and view real-time sensor data for cloud-based analytics and business intelligence.

thunderboard-sense-bubbles

“We’ve designed Thunderboard Sense to inspire developers to create innovative, end-to-end IoT solutions from sensor nodes to the cloud,” said Raman Sharma, Director of Silicon Labs’ IoT Developer Experience. “Thunderboard Sense helps developers make sense of everything in the IoT. They can move quickly from proof of concept to end product and develop a wide range of wireless sensing applications that leverage best-in-class cloud analytics software and business intelligence platforms.”

Check out the official intro video by Raman Sharma

To start using Thunderboard Sense you have to place your CR2032 battery in the right polarity, install the mobile app from Google Play or Apple store, find your board listed on the main screen of the app, and then you will be ready to explore the Thunderboard demos and start your own project! You can program Thunderboard Sense using the USB Micro-B cable and onboard J-Link debugger. You do not need RF design expertise to develop wireless sensor node applications.

Thunderboard Sense kit is available for $36 and you can buy it from here. All hardware, software and design files will be open and accessible for developers. You can visit Silicon Labs Github to download Thunderboard mobile app and cloud software source code.

Next-generation smartphone battery inspired by the gut

crop_16

A new prototype of a lithium-sulphur battery – which could have five times the energy density of a typical lithium-ion battery – overcomes one of the key hurdles preventing their commercial development by mimicking the structure of the cells which allow us to absorb nutrients. @ cam.ac.uk

This gets us a long way through the bottleneck which is preventing the development of better batteries.

Next-generation smartphone battery inspired by the gut – [Link]

WiFi-enabled Color LED Matrix using ESP8266 and WS2812 LEDs

img_20161029_234314-1024x651

ray @ rayshobby.net build a wifi enabled color led matrix using ESP8266. He writes:

Last Thursday I had a lot of fun doing a workshop at my college (UMass Amherst) where I taught students to use a WiFi-enabled Color LED matrix combined with Javascript programs to create animations displayed onto the LED matrix. The matrix is made of 5×7 WS2812 (NeoPixel) LEDs.

WiFi-enabled Color LED Matrix using ESP8266 and WS2812 LEDs – [Link]

4-20 mA current output for Arduino Uno

prototipo-600

Giovanni Carrera writes:

The purpose of this project is to provide a 4-20 mA output from a PWM signal generated by a microcontroller ATmega328 and numerous other chips, such as the PIC. One of the more interesting applications of this circuit would be to replace or to realize a smart sensor with Arduino.”

4-20 mA current output for Arduino Uno – [Link]

Arduino Based Sun Tracker Turret

Sun tracker systems are widely used in solar panel setups to get maximum performance. You may want to use one in your personal solar panel setup. Now you can make your own with an Arduino, following the project that’s designed by RobotGeek Team and Wade Filewich.

Arduino based sun tracking turret
Arduino based sun tracking turret

Parts You’ll Need:

You should also upload the sketch in Arduino. So download it from GitHub –> desktopRoboTurretV3.

To upload the sketch in Arduino,

File → Sketchbook → desktopRoboTurretV3 → roboTurret3_solarTracker

Now click Upload.

Schematic:

Sun Tracker Turret Based On Arduino
Sun Tracker Turret Based On Arduino

Place the light sensors in correct position and wire them to Arduino accordingly. Any wrong positioning can generate strange behavior of the system.  Jumpers for the servos (pin 9, 10, and 11) are set to VIN, so that your servos function properly.

(NOTE: A 6V power supply will work just fine, and RoboTurret Kit includes one). Here is the chart of wiring:

Wiring list of servo and Arduino : Sun tracker
Wiring chart of servo,light sensor, potentiometer and Arduino : Sun tracker

There are two potentiometers. One is for controlling the speed of servos, and another is for controlling the sensitivity of sensors.

Set Up The Turret:

You should follow Desktop RoboTurret Assembly Guide to build the turret. After building, attach your sensors to the top plates as close to center as possible. Look at the picture:

Sensor Positions On Turret
Sensor Positions On Turret

The “+” shaped fins cast shadow on sensors. So, position of sensors should be correct else fins can’t cast shadow  on them accurately. Have a close view on sensor’s position:

Sensor position on turret : close lookup
Sensor position on turret : close view

While wiring through the plate, keep wires loose enough so that turret can move freely to aim at the Sun. At the back of the turret base, there is plenty of room to mount the two potentiometers.

The fins are 8 inches tall, which should be plenty to cast shadow on the sensors. I’ve used scrap cardboard for the fins, but you can use whatever material suits you best, so long as it is opaque and can throw a shadow.

Test It:

So, you finished the building process. Now let’s test it. Upload the code to Arduino and power up the system. Now hold a table lamp and move it. The turret should follow the movement. Adjust speed and sensitivity using the two potentiometers. Watch the video that demonstrates the system:

Brillo, the new OS for IoT by Google

Google had launched Brillo, a new Android based OS used for embedded development – in particular for low-power, IoT devices. Brillo brings the simplicity and speed of software development to hardware for IoT with an embedded OS, core services, developer kit, and developer console.

google-brillo-operating-system-for-internet-of-things

Brillo works in conjunction with Weave, an open, standardized communications protocol that supports various discovery, provisioning, and authentication functions. Weave enables device setup, phone-to-device-to-cloud communication, and user interaction from mobile devices and the web. The chief benefit is allowing a “standardized” way for consumers to set up devices.

Brillo Structure
Brillo Structure

The big challenge  is unifying and facilitating the communication among the estimated 200 billion smart devices expected by 2020. Whether you’re looking to build a simple DIY project or implement an enterprise scale m2m (machine to machine) project, Google’s new tools will be a big help.  Fortunately, Brillo appears pretty easy for developers who are already familiar with Android.

Check this video by Google about Brillo and its features, and you can watch another video about Weave

Brillo supports a trio of ARM, Intel, and MIPS hacker SBCs (Single Board Computers) called “ made for Brillo” hardware kits. One of these kits is The Edison kit for Brillo by Intel, that includes an Edison IoT module plugged into a baseboard that offers convenient, Arduino-style expansion compatibility.

Edison for Brillo SBC
Edison for Brillo SBC

One of the great things about Brillo that the security issue with IoT applications is solved by choosing to use secure boot and signed over-the-air updates and providing timely patches at the OS level.

If you are interested in developing Brillo itself you can check the Brillo developer portal where code, development tools, and documentation for the Android-based Brillo embedded OS for Internet of Things devices can obtained. You should ask for an invitation then when you gain access you will get everything needed for your next project.
A high introduction was presented by Intel in the Open IoT Summit  in April 2016, you can check it here.
As Intel, UN and IDC mentioned in their joint report that there will be an average of 26 smart devices for every human in just 5 years, we can predict a rapid growing development and enhancements for IoT systems, devices and protocols.

Build Your Own Cheap Antenna Analyser

Ham radio is the use of radio frequency spectrum for purposes of non-commercial exchange of messages, wireless experimentation, self-training, etc. Developing a ham radio project may requires using an antenna analyser, a device that is used for measuring input frequency and impedance.

There are many types of antenna analysers such as Anritsu VNA Master, RigExpert, MiniVNA, and others. But these analysers are very expensive to buy. They starts from $500 up to thousands of dollars and they are also hard to hack. This guide shows how to construct and use a DIY HF antenna analyzer using Arduino for less than $50.

The project consists of three parts; a Microcontroller, AD9850 DDS module, and a VSWR Bridge.

Block Diagram
Block Diagram

The AD9850 is a CMOS highly integrated device that uses advanced Direct Digital Synthesis (DDS) technology coupled with an internal high speed, high performance, D/A converter and comparator, to form a complete digitally programmable frequency synthesizer and clock generator function.

dds_moduleAD9850 module is a $9 stable, low drift VFO (Variable Frequency Oscillator) fed by a 125 MHz crystal clock. The module covers from 0 to 40 MHz, which are all the HAM HF(High Frequency) frequencies. There are 4 output pins on the device, 2 for Sine Waves (only one Frequency at a time) and two Square wave outputs. The blue pot on the board adjusts the duty cycle of the Square Wave Outputs but has no effect on the Sine Wave Outputs.

AD9850 features:

  • Signal Frequency output range: 0-40MHz
  • 4 Signal outputs; 2 sine wave outputs and 2 square wave outputs
  • DAC SFDR > 50 dB @ 40 MHz AOUT
  • 32-Bit Frequency Tuning Word
  • Simplified Control Interface: Parallel Byte or Serial Loading Format
  • Phase Modulation Capability
  • +3.3 V or +5 V Single Supply Operation
  • Low Power: 380 mW @ 125 MHz (+5 V)
  • Low Power: 155 mW @ 110 MHz (+3.3 V)
  • Power-Down Function
AD9850 Pin Definition
AD9850 Pin Definition

The VSWR (voltage standing wave ratio) bridge is an impedance bridge circuit, which is used to measure the ratio of maximum voltage (Vf+Vr ) to the minimum voltage (Vf-Vr) on a transmission line. The bridge will balanced (0 volts across the detector) only when the test impedance exactly matches the reference impedance. This bridge is easy and cheap to implement and works with up to few GHz frequencies.

VSWR Bridge Diagram
VSWR Bridge Diagram

The microcontroller works as an interface between the DDS and the PC, it receives the sweep parameters from PC, and then it reads the collected voltage and frequency to the PC for each sweep. There are multiple choices about the microcontroller type, you can use either Arduino Micro or PIC. If you choose Arduino, the cost of the project will be around $50, while the cost will be reduced to $20 when using PIC.

Arduino Solution
Arduino Solution
PIC Solution

To display the results which are collected from the device, you need to develop a simple software and run it on the connected PC. The software GUI contains configuration buttons on the right side and 2-axis plane, which will hold the signal shape, on the left side.

If you want to make the project portable, you can replace the PC with a LCD display to show the collected data.

This project is open source, you can find and download schematics and code from here. You also can apply your ideas to enhance the project, such as amplifying power for accurate VSWR, adding bluetooth connection to use with tablet, increasing supported frequencies range, and more.

Tau : The Tiny 32-bit Arduino Zero Compatible!

“Tau” is a new board in the world of embedded systems, designed by Rabid Prototypes.  It is powered by a 32-bit ARM core, but Tau’s main strength is full compatibility with the well-known Arduino Zero,  yet in a very tiny package.

The Tau!
The Tau!

What is the Tau?

The Tau is an extremely affordable, open source, miniaturized version of the Arduino Zero. It has 32bit ARM processor clocked at 48MHz, and boasting 16K of RAM. The Tau is far more powerful than standard Arduino.

Finally, being open-source, you’re free to modify it as you wish and integrate it into your own designs – without ever needing to pay any royalties or licensing fees!

Technical Details:

  • Microcontroller: Atmel ATSAMD21E17A ARM Cortex M0+
  • Clock speed: 48 MHz
  •  Operating voltage: 3.3V
  •  I/O pin limits: 3.3V, 7 mA
  • Digital I/O pins: 12 w/ 10 PWM channels + 2 dedicated I2C pins w/ pullups
  • Analog inputs: 3 12-bit ADC channels
  • Analog outputs: 1 10-bit DAC
  • Flash (program) memory: 128 KB
  • RAM: 16 KB
  • Voltage regulator: TLV702, 3.5V – 5.5V input / 3.3V, 300mA output
  • Dimensions: 1.1 x 0.6″ (28mm x 15mm)

Features:

Power + Status LEDs

Like most Arduinos, the Tau features a few LEDs. A green LED lets you know that the Tau is receiving power, while a red LED is connected to pin 26 aka PIN_LED_TXL. This LED can be used as a status indicator.

While I could have connected the red LED to pin 13, which is the usual pin for a status LED on an Arduino, connecting it to pin 26 avoided the need to isolate it from the SPI bus with a mosfet, and left room for the power LED!

10-bit DAC

No more need to use Tone() command! Turn Tau into a music player by connecting an amplifier between pin A0 and the GND pad and use the Audio library to play .WAV files from a MicroSD card!

Tau 32 bit
Tau 32 bit

PCB And Schematics:

Tau PCB
Tau PCB
Tau schematic
Tau schematic

Installation:

To make the Tau work with the Arduino IDE, open the File menu and select Preferences. Then, in the Additional Boards Manager URLs section, place a comma after the last entry, and add the following link:

http://rabidprototypes.com/arduino/package_rabidprototypes_index.json

Once done, open the boards manager, which is on the Tools->Boards menu, scroll down to Rabid Prototypes, select the entry, and hit Install.

Finally go back to Tools->Boards, scroll down to the bottom of the list, and pick the Tau/Firecricket.

Once done, you should be ready to program the board.

Troubleshooting:

If you are unable to program the board, first make sure you’ve selected the correct board on the Boards menu.  Then check if you’ve selected correct port on the Ports menu.

If that doesn’t work, try double clicking the Reset button on the board.  That forces the bootloader to be loaded instead of entering your sketch, which may be stuck in a loop where it is unable to check the USB port for connection.

Conclusion:

The Tau is a good alternative of Arduino Zero for its really tiny form factor and cheap price. It’s less than half of Arduino Zero’s price!

You can pre-order it at Rabid Prototypes.

Documentation are also available there.

ADXL354 – MEMS ICs detect structural defects

adxl354-adxl355-low-noise-mems-accelerometer_highres

Three-axis MEMS accelerometers, Analog Devices’ ADXL354 and ADXL355 perform high-resolution vibration measurement to enable the early detection of structural defects via wireless sensor networks. The low power consumption of the devices lengthens battery life and reduces the time between battery changes. by Susan Nordyk @ edn.com

The analog-output ADXL354 and digital-output ADXL355 offer selectable measurement ranges of ±2 g to ±8 g and low 0-g offset drift. Both accelerometers provide guaranteed temperature stability with null offset coefficients of 0.15 mg/°C maximum. The ADXL354 boasts ultralow noise density (all axes) of 20 µg/√Hz and current consumption of just 150 µA in measurement mode. The ADXL355 has a noise density of 25 µg/√Hz and current consumption of 200 µA in measurement mode. Standby-mode current consumption is just 21 µA for each device.

ADXL354 – MEMS ICs detect structural defects – [Link]

€15 IoT Geiger Counter using ESP8266

Geiger counters are devices used to detect radioactive emissions, most commonly beta particles and gamma rays. The counter consists of a tube filled with an inert gas that becomes conductive of electricity when it is impacted by a high-energy particle.
The Geiger–Müller tube or G–M tube is the sensing element of the Geiger counter instrument used for the detection of ionizing radiation.

Biemster wanted to improve this counter to an IoT device connected to the network byusing ESP8266 to discover easily where are the harmful radioactive things around.

Geiger-Müller tube
Geiger-Müller tube

Running down the center of the tube there’s a thin metal wire made of tungsten. The wire is connected to a high, positive voltage so there’s a strong electric field between it and the outside tube.
When radiation enters the tube, it causes ionization, splitting gas molecules into ions and electrons. The electrons, being negatively charged, are instantly attracted by the high-voltage positive wire and as they zoom through the tube collide with more gas molecules and produce further ionization. The result is that lots of electrons suddenly arrive at the wire, producing a pulse of electricity that can be measured on a meter, and if the counter is connected to buzzer heard as a “click.” The ions and electrons are quickly absorbed among the billions of gas molecules in the tube so the counter effectively resets itself in a fraction of a second, ready to detect more radiation.

In a nutshell, driving a G-M tube typically consists of 2 distinct parts:

  1. Providing the tube with a high voltage source for it to operate.
  2. Detecting each ionization event and convert it to a format that can be processed and sent over the internet.

Generating high voltage can be done by using PWM (Pulse-Width Modulation) signals after flashing the ESP8266 with the MicroPython firmware (version 1.8.3, with 10 kHz PWM support). Detection can be implemented as an interrupt handler that listens for and acts on discharges in the tube. Each discharge means a new detection.

346601472651204661

You will need the following components:

  • 1x ESP8266
  • 1x STS-5 Geiger tube
  • 1x 4.7 mH inductor
  • 1x 4.7 nF Capacitor
  • 1x KSP44 transistor
  • 1x 2N3904 transistor
  • 1x 1N4007 diode
  • 1x 4.7M resistor
  • 1x 100k resistor
  • 1x 10k resistor
  • 1x 220 ohm resistor
  • 1x optional piezo buzzer
Circuit Schematic
Circuit Schematic

The circuit works as follows: A ~1 Khz squarewave turns the MPSA44 high voltage transistor on and off, generating high voltage when the inductors current is shut off. The voltage depends on the pulse width of the square wave which can be tweaked in software. The 1N4007 diode rectifies this voltage, and the High-Voltage capacitor removes most of the ripple on this voltage. The resistor limits current to the G-M tube. The current pulses from the tube generate a voltage drop over the 100K resistor which turns on the BC546. When this happens the voltage through the 10K resistor is pulled to ground, generating a negative going pulse each time the G-M tube detects an ionizing ray or particle.
The code  reports every event over MQTT, the lightweight IoT protocol. It also reports the CPM (Counts per Minute)  and the time passed since the previous event as (CPM,dt). The library of this project is available at Github, It handles the low level stuff such as PWM and pin assignments, and a general part that will communicate the measurements out to the world.
For more details, build instructions, and project updates you can follow the project on hackday.