The MakerBLE is introduced as a miniature breakout board variation of the nRF52840 Bluetooth Low Energy (BLE) Arduino board, which is capable of communicating with smartphnoes and carrying out many of the capabilities of other wirelessly-enabled microcontrollers. The MakerBLE is also compatible with our iOS app, BLExAR, and allows users to collect data, send commands, and control pins remotely from a smartphone. In this tutorial, the MakerBLE will be introduced and its capabilities will be explored from the perspective of the Arduino. This will also be the first in a series of entries geared toward low-power, BLE-enabled, tiny microcontroller projects; whether they involve remote control, data collection from sensors (I2C, SPI, UART), message transfers, BLE peripheral/central communication, or general electronics testing.
Read MoreThe printed circuit board (PCB) is at the center of nearly all electronics products in the 20th century. PCBs originally consisted of wires placed along paths connecting a series of components on a rigid board — these were deemed printed wiring boards. Eventually, the printed wiring board morphed into the circuit boards with conducting strips etched into multi-layer boards that we see on PCBs today. The PCB industry is associated with nearly $1 trillion in sales of electronics each year [read more at: "Printed circuit board industry"]. Thus, it is important for engineers to know at least the basics of PCB design, even if the manufacturing is outsourced to companies. In this tutorial, we will introduce the design of a simple PCB and the process required to get the PCB manufactured by a company called NextPCB. Their process is simple and easy, and even allows the engineer to view their design on their online gerber file viewer.
Read MoreThe BLE Nano is introduced as a hybrid between an Arduino Nano and a CC2540 Bluetooth Low Energy (BLE) module. The Arduino Nano has an ATmega328P as its main microprocessor, which communicates over the serial port to send and receive Bluetooth packets from the CC2540 BLE chip. This creates a Bluetooth-enabled Arduino device - encased in a Nano-sized circuit board! Using the BLExAR iOS app, the BLE-Nano will be controlled using an iPhone. BLExAR allows users to control the pins on the Nano, which will be demonstrated by switching an RGB LED on and off.
Read MoreIn this tutorial, the ATtiny85 is reintroduced, this time as a Bluetooth-enabled device. First, some of the basics of burning the bootloader to the ATtiny85 and using the Arduino board as an in-system programmer (ISP) are explored. Then, a CC2541 Bluetooth Low Energy (BLE) module is used to communicate with an iOS device using the BLExAR app. Lastly, temperature and humidity data is read by the ATtiny85 and transmitted via Bluetooth to the smartphone.
Read MoreIn this tutorial, I will dive into the variations of CC2541 BLE board such as the AT-09, MLT-BT05, HM-10, JDY-08, etc. I will use either the specific module name or a blanketed “CC2541-based module” reference to refer to the BLE modules. The general process for interfacing with each module is nearly the same, however, some particularities define how each responds and functions depending on the given firmware. I will also be using the BLExAR app for iOS to communicate with the CC2541 modules.
Read MoreThe BLExAR app will be used in conjunction with a CC2541 (HM-10, JDY-08, AT-09, SH-M08) Bluetooth module and an Arduino (ATmega328) board to create a simple data acquisition system. A DHT22 sensor will provide temperature and humidity data to the Arduino which will be recorded by an iOS device via the BLExAR app. This experiment is a real-world example of an Arduino application demonstrating data acquisition from a real sensor. This tutorial will allow users to solve their own engineering problems using the modern Arduino platform and wireless communication through the BLExAr app, which will ultimately expand the reach and compatibility of technology in the classical sciences through exploration and experimentation.
Read MoreControl an RGB LED using three PWM pins on an Arduino Uno board via Bluetooth communication. An RGB LED is a single casing with three cathode (or anode) pins and one anode (or cathode) pin. This results in a 4-pin LED. In this tutorial, I will be using an RGB LED with three anodes and one common cathode. This means that we can change the color of the LED to over 16.7 million different variations (assuming each anode produces a different luminosity for each voltage change of the Arduino PWM pin). This tutorial will help demonstrate the power of the BLExAR app, and the flexibility of an Arduino board under iOS Bluetooth control. In my case, I will be using an iPhone with the BLExAR app, but an iPad would suffice as well.
Read MoreAn app called “BLExAR” allows Arduino users to communicate to an iOS device (iPhone or iPad) using a Bluetooth CC2541 module (different versions are called: HM-10, SH-M08, AT-09, or JDY-08). The app permits control of an Arduino board, wireless serial communication, and data acquisition. Click on the app logo shown here to download the app, as it will be used as the iOS communication software. On the Arduino side, we need to wire the CC2541 Bluetooth Low Energy (BLE) module to an Arduino board and upload the appropriate software via the Arduino IDE. In this tutorial, we will demonstrate how to verify communication between an Arduino and CC2541 Bluetooth module, and then use Bluetooth communication to send strings between an iOS device and the Arduino ATmega328p board.
Read MoreAs an introduction to Bluetooth with Arduino or Raspberry Pi, I recommend using a component called the HM-10 [datasheet here]. The HM-10 is a Bluetooth low energy module that employ Bluetooth 4.0, which is currently the most widely used protocol for wireless devices (along with Wifi, but I will discuss this later). All of the current iPhones, Androids, and Google phones use Bluetooth 4.0, and it will likely be around for quite a while. The module is powered at 3.3V and consumes around 50mA (peak), 8.5mA (nominal), and can sleep with a current between 400uA - 1.5mA. It claims to have an open-space transmission range of 100m, and boasts transfer rates at 2 kilobytes per second. The underlying chip is a Texas Instruments CC-2540/2541 [see here]. The HM-10 is particularly germane because it cooperates nicely with the Arduino software with a mere four lines of code in the IDE.
Read More