IR Remote Control Detective based on ATtiny85

David Johnson-Davies published another great and detailed tutorial on how to build an IR remote control detective. He writes:

The IR Remote Control Detective decodes the signal from several common types of infrared remote control, such as audio, TV, and hobbyist remote controls. To use it you point a remote control at the receiver and press a key; it will then identify the protocol, and display the address and command corresponding to the key.

IR Remote Control Detective based on ATtiny85 – [Link]

Microchip’s New Open Source SAMA5D27 SOM Module Runs Mainline Linux

American microcontroller manufacturer company Microchip has unveiled an open source, mainline Linux ready “SAMA5D27 SOM” module. This module is based on a SiP implementation of its Cortex-A5-based SAMA5D27 SoC with 128MB RAM. The 40 x 38mm module is also compatible with a SOM1-EK1 dev board.

SAMA5D27 SOM1

SAMA5D27 SOM1
SAMA5D27 SOM1

The SAMA5D27 SOM is Microchip’s first computer-on-module based on a Linux-ready application processor, and the first SiP-based module built around a SAMA5 SoC. It is mainly designed for rugged IoT applications and the module can be soldered onto a baseboard for versatile ease of use. It offers long-term availability and supports industrial grade -40 to 85°C temperature range.

The SAMA5D27 SOM1 combines the RAM-ready SAMA5D27C-D1G SiP with 64Mb of non-volatile QSPI boot flash and a 10/100 Ethernet PHY.  The module also integrates a 2Kb EEPROM with pre-programmed MAC address. The SOM is further equipped with a PMIC and a 3.3V power supply. Typical power consumption ranges from 120mA to 160mA. There’s also a 60mA idle mode and an ultra-low 30mA mode.

This module has 128 GPIO pins including 2x USB 2.0 host, one USB device, and 2x SD/MMC interfaces with eMMC 4.51 support. There is also support for 10x UART, 7x SPI, 2x CAN, camera and audio interfaces, and much more.

Like the Xplained boards, the module is open source, from the mainline Linux support to the posting of open schematics, design, Gerber, and BoM files for both the SOM and the optional SOM1-EK1 development board.

SAMA5D2 SiP

SAMA5D2 SiP
SAMA5D2 SiP

The newly launched SAMA5D2 SiP is built around the Microchip SAMA5D2. The FreeRTOS-focused 128MB version uses a lower-end SAM5D22 model limited to 16-bit DDR2 RAM while the Linux-ready 512MB and 1GB versions use the higher end SAMA5D27 and SAMA5D28, respectively, with 16/32-bit DDR. All the models are renowned for offering CAN support, and because the SAMA5D28 also adds security features, it’s the only one that is pre-certified for PCI Security.

The SAMA5D has fewer I/O pins and slower performance (166-500MHz) compared to the earlier, 600MHz SAMA5D4, but the power consumption is significantly lower. The SAMA5D2 SoC can run at less than 150mW in active mode at 500MHz with all peripherals activated, and at less than 0.5mW in low power mode with SRAM and registers retention.

SOM1-EK1 development board

SOM1-EK1 Development Board
SOM1-EK1 Development Board

The SAMA5D27-SOM1-EK1 development kit is built around a baseboard with a soldered SAMA5D27-SOM1 module with the 128MB (1Gb) configuration. This board is enhanced with SD and microSD slots, as well as a 10/100 Ethernet port, a micro-USB host port, and a micro-USB device port with power input.

Additional I/O option for this dev board includes USB HSIC, CAN, JLINK, and JTAG interfaces. There’s a tamper connector, 4x push buttons, an LED, supercapacitor backup, and an ATECC508 CryptoAuthentication device. A Linux4SAM BSP is available with Linux kernel and drivers.

The ATSAMA5D27-SOM1 is available for $39, and the ATSAMA5D27-SOM1-EK1 development board is available for $245 each. The ATSAMA5D2 SiP starts at for $8.62 each. More information may be found in Microchip’s SAMA5D2 SiP and SOM announcement and launch page, which points to SOM and SiP pages, as well as the SAMA5D27-SOM1-EK1 dev board page.

Nui – IR Volume Controller

Alvaro Prieto made an IR volume controller and wrote a post on his blog detailing its assembly:

Nui is an IR controlled volume controller for analog audio. It sits between your audio source and speakers and can amplify or reduce the volume using IR commands (and eventually BLE).
Why do I need this?
It all started because I have my trusty Logitech Z-2300 speakers and subwoofer I purchased back around 2004/5. They still work great, but instead of being on my computer, they are used for my TV. Unfortunately, the TV’s line out doesn’t honor the TV’s volume and is always outputting at max volume. Sure, I can get up and change the volume on the speakers themselves, but wouldn’t it be more convenient to do it with the TV remote?!
That’s how the Nui project started. It sits between my TV and my speakers and now I don’t have to get up to change the volume 😀

Nui – IR Volume Controller – [Link]

Analog Devices’ tiny µModule boost regulator for low voltage optical systems

Analog Devices, Inc. has announced the Power by Linear LTM4661, a low power step-up µModule regulator in a 6.25mm x 6.25mm x 2.42mm BGA package. Only a few capacitors and one resistor are required to complete the design, and the solution occupies less than 1cm²single-sided or 0.5cm²on double-sided PCBs. The LTM4661 incorporates a switching DC/DC controller, MOSFETs, inductors and supporting components. The LTM4661 operates from a 1.8V to 5.5V input supply, and continues to operate down to 0.7V after start-up. The output voltage can be set by a single resistor ranging from 2.5V to 15V. The combination of the small, thin package and wide input and output voltage range is ideal for a wide range of applications including optical modules, battery-powered equipment, battery-based backup systems, bias voltage for power amps or laser diodes and small DC motors.

The LTM4661 can deliver 4A continuously under 3.3VINto 5VOUT, and 0.7A continuously under 3.3VINto 12VOUT. The LTM4661 employs synchronous rectification, which delivers as high as 92 per cent conversion efficiency (3.3VIN to 5VOUT). The switching frequency is 1MHz, and can also be synchronised to an external clock ranging from 500kHz to 1.5MHz. The LTM4661 1MHz switching frequency and dual phase single output architecture enable fast transient response to line and load changes and a significant reduction of output ripple voltage. The LTM4661 has three operation modes: Burst Mode operation, forced continuous mode and external sync mode. The quiescent current in Burst Mode operation is only 25µA, which provides extended battery run time. For applications demanding the lowest possible noise operation, the forced continuous mode or external sync mode minimise possible interference of switching noise.

The LTM4661 features an output disconnect during shutdown and inrush current limit at start-up. Fault protection features include short-circuit, overvoltage and over temperature protection. The LTM4661 operates from –40℃to 125℃operating temperature.

Using the 1.44″ Color TFT display (ILI9163C) with Arduino

ILI9163C 1.44″ TFT Display

Hi guys, over the past few tutorials, we have been discussing TFT displays, how to connect and use them in Arduino projects, especially the 1.8″ Colored TFT display. In a similar way, we will look at how to use the 1.44″ TFT Display (ILI9163C) with the Arduino.

The ILI9163C based 1.44″ colored TFT Display, is a SPI protocol based display with a resolution of 128 x 128 pixels. It’s capable of displaying up to 262,000 different colors. The module can be said to be a sibling to the 1.8″ TFT display, except for the fact that it is much faster and has a better, overall cost to performance ratio when compared with the 1.8″ TFT display. Some of the features of the display are listed below;

  • Size: 1.44 inch
  • Interface: SPI
  • Resolution: 128*128 pixel
  • Visual area: 1:1 square
  • TFT color screen, the effect is far better than other small CSTN screen
  • Drive IC: ILI9163
  • Fully compatible and alternative 5110 interface
  • Onboard LDO, support 5V/3.3V input voltage, the LED backlight, 3.3V input

For this tutorial, we will focus on demonstrating how to use this display with Arduino to display texts, shapes and Images.

Using the 1.44″ Color TFT display (ILI9163C) with Arduino – [Link]

OSD3358-SM-RED – A Reference, Evaluation, And Development Board From Octavo Systems

The OSD3358-SM-RED from Octavo Systems is a reference, evaluation, and development board for the OSD335x-SM series of System-in-Package (SiP) devices. It is powered by a 1 GHz processor, ADC, and 1 GB of DDR2 RAM into an enclosure of the size of a coin.

OSD3358-SM-RED single-board computer

The SiP needs a PCB, along with components like an Ethernet jack, power supply, IO pins, and USB sockets to communicate with the other complimentary electronic parts. These boards include several power options, including a micro-USB connector, barrel jack, and solder points for battery usage. Ethernet and USB connectors are included, along with expansion connectors setup so that BeagleBone Black Capes can be connected directly. Finally, a 9-axis IMU, barometer, and temperature sensor are included. Data from sensors can be collected directly without the help of extra hardware or software.

This board is longer and slightly wider than a Raspberry Pi, at an exact dimension of 108 x 54 mm. It’s also thicker at 32 mm due to the decision to mount the Ethernet jack on top of the two USB ports. A micro-SD card slot is included, though WiFi capability is not provided. For internet connectivity, the user needs to rely on wired or dongle connection.

It comes pre-loaded with a Debian Linux distribution, complete with drivers for the onboard sensors already available. It can also boot off of the SD card to load other Operating Systems. This board can be used in one of three ways: as a standalone device, a USB client, or using a UART port as a Linux terminal. In the standalone case, the user simply connects the micro-USB connector to an appropriate power source, then to a monitor via a micro-HDMI to HDMI adapter. Once booted up, the screen goes to a minimal Linux install, allowing the user to access a web browser, terminal, and other necessary tools that a developer can build upon.

At a cost of $199, this board wouldn’t be an appropriate substitute for a Raspberry Pi or BeagleBone in standalone situations, but it will certainly be useful for a professional upgrade to OSD335x-SM SiPs.

Heart-rate monitor on a small OLED display with MicroPython

By Martin Fitzpatrick @ martinfitzpatrick.name show us how to build the micro display heart-rate monitor.

Pulse sensors have become popular due to their use in health-monitors like the Fitbit. The sensors used are cheap, simple and pretty reliable at getting a reasonable indication of heart rate in daily use. They work by sensing the change in light absorption or reflection by blood as it pulses through your arteries — a technique jauntily named photoplethysmography (PPG). The rising and falling light signal can be used to identify the pulse, and subsequently calculate heart rate.

Heart-rate monitor on a small OLED display with MicroPython – [Link]

Broadcom AFBR-S50 ToF laser light sensor measures up to 10 meters

The AFBR – S50 is a multipixel distance and motion measurement sensor. It has an integrated 850nm vertical cavity surface emitting laser (VCSEL) which uses a single voltage supply of 5V. It’s measurement rates are quick and as fast as 3 kHz, which is a distinguishing feature. However, this is not the reason why the AFBR – S50 stands out. It is different because unlike other Time of Flight (ToF) ranging sensors, the AFBR – S50 can measure up to 10 meters whereas similar sensors don’t get close to that.

The AFBR-S50

Furthermore, the sensor works on the principle of Optical Time of FlightTime-of-Flight principle (ToF) is a method for measuring the distance between a sensor and an object, based on the time difference between the emission of a signal and its return to the sensor, after being reflected by an object. If you have used the popular HC-SR05 Ultrasonic sensor, then you have seen this principle in action. The AFBR – S50 can be used both inside and outside to cover wide ranges of ambient light. It supports almost 3000 frames every second with an accuracy of less than one percent on diverse types of surfaces.

ToF Principle

The multi-pixel sensor works with up to 16 illuminated pixels out of 32 and with its best-in-class ambient light suppression of up to 200kLx, to ensure smooth usage outside. It uses SPI Interface to communicate with a host device. AFBR – S50 not only works outside but it is also equally effective on colored, white, black and metallic reflection objects.

Broadcom has released two different versions of the sensor:

  • AFBR-S50MV680B
    • 680nm laser light source.
    • One illuminated pixel
    • FOV (Field Of View) 1.55° x 1.55°
    • Single voltage – 5V supply
  • AFBR-S50MV85G
    • 850nm laser light source
    • 9-16 illuminated pixels
    • FOV 6.2° x 6.2°
    • Single voltage – 5V supply

Below are the General Specifications for the Multipixel sensor:

  • Integrated 850nm laser light source.
  • Between 9-16 illuminated pixels.
  • FOV 6.2°x 6.2° (1.55 x 1.55°/pixel).
  • High-speed measurement rates of up to 3 kHz.
  • Variable distance range up to 10m.
  • Operation up to 200k Lux ambient light.
  • Works well on all surface conditions.
  • SPI digital interface (up to 20 MHz).
  • Single voltage supply 5V.
  • Integrated clock source.
  • Laser Class 1.
  • Accuracy < 1 percent.
  • Drop-in compatible with the AFBR-S50 sensor platform

Applications for the ToF sensor can be found in areas of industrial sensing, gesture sensing, distance measurement, robotics, drones, automation, and control. The AFBR-S50 is available, but the price is currently undisclosed. You can contact Broadcom sales for more information. More details can be found on the product page, and the AFBR-S50 datasheet can be found here.

Hardware Acronyms: SiP, SoC, SoM, CoM, SBC – What Are They?

If you are new into hardware or still familiarizing yourself to the hardware ecosystem, you will realize some common terms often appear which could sometimes sound confusing or something out of rocket science, but it’s not. Here’s a quick look at five common terms used in hardware products or boards and what they denote.

Let’s take a look at them –

System-in-a-Package (SiP)

Cross section of a SiP

A system in package (SiP) contains several ICs (chips) including a microprocessor on a single substrate such as ceramic or laminate. An example SiP can comprise several chips—such as a specialized processor, DRAM, flash memory—combined with passive components—resistors and capacitors—all mounted on the same substrate. This means that a complete functional unit can be built in a multi-chip package so that few external components need to be added to make it work.

SiP dies can be stacked vertically or tiled horizontally, unlike slightly less dense multi-chip modules, which place dies horizontally on a carrier. SiP connects the dies with standard off-chip wire bonds or solder bumps.

The appeal of a SiP is that it can be compact an otherwise complex system into a very simple package, making it easier to integrate into larger systems. It also simplifies PCB layouts.

Unlike a SOC that is based on a single silicon die, SiP can be based on multiple dies in a single package. SiP is believed to provide more interconnection in the future and possibly face out SoCs.

Package-on-a-Package (PoP)

Package on a Package

A Package-on-a-Package stacks single-component packages vertically, connected via ball grid arrays. Packages can be discrete components (memory, CPU, other logic) or a System-in-a-Package stacked with another package for added or expanded functionality.

PoP provides more component density and also simplifies PCB design. It can also improve signal propagation since the interconnects between components is much shorter.

System-on-a-Chip (SoC)

A System-on-a-chip (SoC) is a microchip with all the necessary electronic circuits and parts for a  given system, such as a smartphone or wearable computer, into a single integrated circuit (IC).

An SoC integrates a microcontroller (or microprocessor) with advanced peripherals like graphic processing unit (GPU), Wi-Fi module, or coprocessor.

Think of an SoC as a computer package inside a chip. The SoC integrates all components of a system into one. It may contain digital, analog, mixed-signal, and often radio-frequency functions – all on a single substrate. An SoC can be based around either a microcontroller (includes CPU, RAM, ROM, and other peripherals) or a microprocessor (includes only a CPU). It is also possible for SoCs to be customized for a specific application, including whatever components, memory, or peripherals necessary, ranging from digital/analog signal ICs, FPGAs, and IOs.

One of the major advantages of an SoC is that it is usually cheaper, smaller, easy to scale, and even more energy efficient. It is easier to build around a SoC for a product than to add several components individually. Despite its obvious advantages, SoC still has a significant disadvantage – you are going to be locked into that hardware configuration for life. This could be fine for consumer products, since you don’t expect any hardware upgrade or so but would limit hacking for makers related application.

A good example of an SoC is what we have in the Raspberry Pi; The Raspberry Pi uses a system on a chip as an almost fully-contained microcomputer. SoCs can help engineers speed up a product to market and even the adoption of new protocols, such as those Bluetooth 5 SoCs, that make it easier to integrate Bluetooth 5 into new products.

System on Module (SoM) / Computer on Module (CoM)

Computer on a module

A System on a Module (SoM) and Computer on Module usually refers to the same thing. A Computer-on-a-module is a step above an SoC. It means a computer or system packaged in a single module. CoMs usually provide every piece you need to build a complete system; they incorporate an SoC (most of the time), connectivity, multimedia and display, GPIO, operating system, and others into one single module.

SoM based designs are usually scalable. SoMs/CoMs are usually paired with a carrier board. These carrier boards are usually used to extend out the SoMs functionality or parts. A SoM helps system designers realize a fully customized electronics assembly, complete with custom interfaces and form factor without the effort of a ground-up electronics design. Customers can purchase an off-the-shelf SoM and marry it to an easy to develop custom baseboard to create a solution functionally identical to one that is fully custom-engineered.

CoMs provide a plug-and-play type advantage since a CoM can be replaced or upgraded within a carrier, without having to change the carrier. There are some benefits to the SoM approach vs. ground-up development. These include cost savings, reduced risk, a variety of CPU choices, decreased customer design requirements, and a small footprint.

Unlike an SBC, a computer-on-module is a type of single-board computer made to plug into a carrier board, baseboard, or backplane for system expansion.

Single Board Computers (SBCs)

A Raspberry Pi SBC

single-board computer (SBC) is a complete computer built on a single circuit board, with a microprocessor(s), memory, input/output (I/O) and other features required for a functional computer. Single-board computers were made as demonstration or development systems, for educational systems, or for use as embedded computer controllers.

Single-board computer builds on SoC to provide a full-fledged computer on small circuit board. Examples of popular SBCs are Raspberry Pi boards, Nvidia Jetson, Beaglebone, and several others.

Linux-driven COM And Carrier Board Powered by Zynq SoC

MYIR Tech has launched an $85 module, Xilinx Zynq-7010 or -7007S that runs on MYC-C7Z010/007S CPU Module. MYC-C7Z010/007S CPU Module is a part of their newly launched sandwich-style, $209 MYD-Y7Z010/007S Development Board. There’s an open source Linux 3.15.0 based BSP for the module, and the MYD-Y7Z010/007S carrier board ships with schematics. Both the module and development board can withstand -40 to 85°C temperature range.

MYC-C7Z010/007S CPU Module

MYC-C7Z010/007S CPU Module
MYC-C7Z010/007S CPU Module

Xilinx’s Zynq-7010 has dual-core Arm Cortex-A9 block as the Zynq-7015 or Zynq-7020, which is available along with the Z010 on the earlier MYC-C7Z010/20 module. However, the Zynq-7010 SoC has more FPGA logic cells (28K). On the other hand, the Zynq-7007S is limited to a single Cortex-A9 core and a 23K logic cell FPGA. The Zynq-7010 ranges from 667MHz to 866MHz while the 7007S can operate from 667MHz to 766MHz.

The MYC-C7Z010/007S has 75 x 50mm dimension. It ships with 512MB DDR3 SDRAM4GB eMMC, and 16MB quad SPI flash. There’s a Gigabit Ethernet PHY and external watchdog. A 1.27mm 180-pin stamp-hole (Castellated-Hole) expansion interface is also there for ARM and FPGA interfaces that are useful to improve shock resistance. Supported I/O incorporates single USB and SDIO interfaces plus a pair of serial, I2C, CAN, SPI, and 16-channel ADC.

MYD-Y7Z010/007S dev board

MYD-Y7Z010/007S Dev Board
MYD-Y7Z010/007S Dev Board

The 153 x 80mm MYD-Y7Z010/007S Development Board expands the MYC-C7Z010/007S CPU module with 3x GbE ports, a USB 2.0 OTG port and a DB9 combo port with isolated RS232, RS485, and CAN signals. There’s also a microSD slot for memory expansion and a debug serial port.

An optional, $29 MYD-Y7Z010/007S I/O Cape plugs into the GPIO interface offering an HDMI port, a user button, and LCD, camera, and dual Pmod connectors. The LCD interface supports optional MYIR 7- or 4-inch capacitive and resistive LCD modules. The HDMI port only supports 720p resolution for now. The MYD-Y7Z010/007S board is further equipped with a reset key and boot switch. There’s also a 12V/2A DC input.

The MYC-C7Z010/007S module with the Zynq-7010 is available now for $85. The MYD-Y7Z010/007S Development Board is available with the Zynq-7010 based module for $209. More information is available at MYIR’s MYC-C7Z010/007S and MYD-Y7Z010/007S product pages.