Posts tagged Arduino Bluetooth
Arduino Sensor Data Logging and Visualization on iPhone

This is the second entry into the tutorial series centered around the MakerBLE Arduino board. Using the BLExAR iOS app again, we are able to monitor the incoming data from the MakerBLE board, plot the values, and save them to a comma-separated value (CSV) file. The data being sent is read from a BMP280 sensor over the I2C port by the MakerBLE board. Temperature, atmospheric pressure, and approximate altitude were all sent over the BLE connection with an iPhone.

Read More
PCB Design and Fabrication with NextPCB

The 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 More
BLE Nano Arduino Board - Bluetooth Control with an iPhone (BLExAR App)

The 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 More
ATtiny85 Internet of Things Bluetooth Arduino Board

In 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 More
Bluetooth Module with Arduino (AT-09, MLT-BT05, HM-10)

In 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 More
4-Pin RGB LED Control Using iOS BLExAR App, HM-10 Bluetooth Module, and Arduino

Control 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 More
iOS and Arduino Bluetooth Communication Using The BLExAR App and CC2541 Module

An 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 More
Python Microcontroller: Getting Started with Adafruit's Trinket M0 and CircuitPython

In this tutorial I will cover one of the newest microcontroller interface languages, Python, and demonstrate Adafruit's powerful Trinket M0 microcontroller and its capabilities using Python as its programming language. Much of what is outlined below can be seen on Adafruit's website [UART communication, Trinket info, CircuitPython Basics].

Read More
Arduino - Sending A String Over Bluetooth Using The HM-10

As 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