Please share your suggestions, comments, and criticisms in the box below. Every message is read and receives a response. Thank you for taking time to improve the tool!
This tutorial will show you how to set up the MikroElektronika Bluetooth Click on the Curiosity High Pin Count (HPC) board. The Bluetooth connection will be demonstrated through back-and-forth communication with a PC or other Bluetooth compatible device.
The Curiosity High Pin Count (HPC) is a professional, general-purpose platform. With a flexible 8-bit PIC16F18875 target MCU and two MikroBUS Click sockets, this board is the vehicle to take your embedded design idea out of your head and into the market!
I used "Bluetooth Serial Terminal" from the Microsoft App Store
Create a new "Stand-Alone" project in MPLAB® Xpress for a PIC16F18875 using the Curiosity HPC board. If you are not sure how to do this, check out the tutorial here.
Open the MPLAB® Code Configurator using the blue shield link on the toolbar. You can find information on how to open MCC here.
First in System Module change the HF Internal Clock to be 32_MHz and the Clock Divider to be 1
Underneath Device Resources, scroll to the bottom of the menu to find and click Mikro-E Clicks.
Choose Wireless Connectivity and then click on Bluetooth to open the Bluetooth click window.
The Notifications tab tells us that the important pin to set up for the Bluetooth click is the Hardware Reset Pin
The Bluetooth Click communicates over EUSART, so we must select the TX and RX that correspond to the MikroBUS port your Click is connected to. For MikroBUS 1, these pins are RC6 and RC7 respectively.
We can configure these pins in the pin manager.
Make sure you have the correct EUSART selected (we will not use the LIN library EUSART)
Configure the EUSART by enabling Transmit, Recieve and EUSART Interrupts. The Baud Rate should be set to 115200 (standard for Bluetooth).
Make sure the interrupt module has interrupts enabled for EUSART TXI and EUSART RCI
Once you are finished configuring the pins, click Generate in the upper left-hand side of the MCC window and return to the MPLAB Xpress IDE window.
MCC created custom header files and added them to your Xpress project when you clicked Generate.
Take a look at these header files and familiarize yourself with the auto-generated functions.
We will be calling the Bluetooth example function in the main loop. Take a look at the EXAMPLE_Bluetooth.c source file.
Include this function by adding
#include "mcc_generated_files/EXAMPLE_Bluetooth.h" the main.c file
Also, uncomment the peripheral and global interrupts to enable them in code.
In the while(1) execution loop, call the function
MPLAB Xpress example projects automatically load the board choice as the Xpress Development Board. Therefore, we need to switch the board designated for this project in the settings. Since this IDE is online, it uses a USB bridge to communicate with the Curiosity HPC. In the bottom left corner of the screen, click the icon that says USB Bridge Disconnected which opens the following window:
Click Download USB Bridge Tool and follow the instructions to get the bridge open and running properly. After you have finished opening the bridge, click the project properties icon in the top left corner of the Dashboard window.
It will open a window that gives you access to various configuration options for the project including changing the part, compiler, or for our case, the development board. In the Hardware Tool window, choose Curiosity:
Choose the most recent Compiler Toolchains available. However, if your project doesn't compile, try using an older one and be sure to submit a support ticket to Microchip.
Click OK. Now you are ready to download programs to the PIC MCU on the Curiosity HPC board by clicking on the Make and Program Device icon.
The device name will autogenerate to be "Test-XXXX" where XXXX is a string unique to your specific device.
In the example code we set basic authentication. This generates a pin that is defaulted to 1234.
Pair the device with your PC by entering 1234 as the pin.
Now, open your Bluetooth terminal emulator and connect with the device. I used "Bluetooth Serial Terminal" from the Microsoft store.
If you read through the example code, you'll see that the code is set up so that the Bluetooth transmits a received string when it detects the carriage return '\r'
I was able to set this up in the Bluetooth Serial Terminal I used, but you can also just type in "\r"
We can see that we received the same message we transmitted, and therefore have confirmed a connection with the Bluetooth Click
Now that you have established a connection with the Bluetooth Click - what else can you do? Comment below with a link to your tutorial!
If you experience issues with compilation in MPLAB X IDE, you can find legacy compilers here
Still getting to know your Curiosity HPC? Check out this tutorial for a fantastic getting started sequence.
MPLAB Xpress IDE shall mean the online integrated development environment (hereinafter “MPLAB Xpress”) operated by or on behalf of Microchip Technology Incorporated (hereinafter "Microchip") for your use, whether as a guest or a registered user. Microchip is a Delaware corporation with its principal office at 2355 W. Chandler Boulevard, Chandler, AZ 85224.
Access to MPLAB Xpress is permitted on a temporary basis, and Microchip reserves the right to withdraw or amend the information provided on MPLAB Xpress without notice. Microchip will not be liable if for any reason MPLAB Xpress is unavailable at any time or for any period. From time to time, Microchip may restrict access to some or all of MPLAB Xpress.
Material on MPLAB Xpress may be out of date or include omissions, inaccuracies or other errors at any given time, and Microchip is under no obligation to update such material. Commentary and other materials posted on MPLAB Xpress are not intended to amount to advice on which reliance should be placed. Microchip disclaims all liability and responsibility arising from any reliance placed on such materials by any user of MPLAB Xpress, or by anyone who may be informed of any of its contents. Microchip owns or has the rights to the materials and information it posts on MPBLAB Xpress, but does not and cannot warrant or guaranty any information or materials posted by others.
EXCEPT WHERE EXPRESSLY PROVIDED OTHERWISE IN AN AGREEMENT BETWEEN YOU AND MICROCHIP, ALL INFORMATION PROVIDED DIRECTLY ON MPLAB XPRESS OR INDIRECTLY THROUGH MPLAB XPRESS BY HYPERTEXT LINK OR OTHERWISE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROCHIP HEREBY DISCLAIMS ALL WARRANTIES WITH RESPECT TO THIS INFORMATION, WHETHER EXPRESS OR IMPLIED, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY, SATISFACTORY QUALITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROCHIP BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES, OR DAMAGES FOR LOSS OF PROFITS, REVENUE, DATA OR USE, INCURRED BY YOU OR ANY THIRD PARTY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM YOUR ACCESS TO, USE OF, OR RELIANCE UPON INFORMATION OBTAINED FROM OR THROUGH MPLAB XPRESS. MICROCHIP RESERVES THE RIGHT TO MAKE CHANGES, UPDATES OR CORRECTIONS TO THE INFORMATION ON MPLAB XPRESS AT ANY TIME WITHOUT NOTICE.
Contracts for the supply of goods, services or information formed through the use of the MPLAB Xpress site or as a result of visits made by you to the MPLAB Xpress site are governed by these terms and conditions.
MPLAB Xpress may contain links to other sites and resources provided by third parties. Any such links are provided for your information only. Microchip has no control over the contents of those sites or resources, and accepts no responsibility for them or for any loss or damage that may arise from your use of them.
How is Customer Information Obtained by Microchip and How is it Used?
We receive and store information you give us, anonymously. Most of the information you give us is collected when you buy products on-line, request literature/ information, participate in a contest, fill out a questionnaire/survey, participate in an on-line discussion, or complete your Customer Profile. You may give us information such as your name, address, phone numbers, e-mail addresses, financial information, employment information, application information, ideas for new projects or applications, and your buying interests. The information that you provide us is used to respond to your requests, notify you of products being shipped to you, customize your interactions with us, improve our offerings, provide materials or offers to you, allow you to participate in contests, and communicate with you. It is your choice whether or not to provide us with certain information. However, you may be unable to take advantage of many of our offers and features if we do not receive your customer information.
We also receive and store certain types of information through use of “cookies.” Some examples of information gathered this way are the Internet Protocol (IP) address used to connect your computer to the Internet, log-in, e-mail address, computer and connection information such as browser type and version, operating system, platform, and the full Uniform Resource Locator (URL) used to, through, and from access of MPLAB Xpress. We use the information gathered by “cookies” to manage and customize your on-line experience and to improve our services.
You may also submit technical information to Microchip such as designs, ideas or data, that you transmit to or post on MPLAB Xpress example section (a "Submission") for purposes not limited to community development participation. By posting a Submission, you understand that you give Microchip and the community a nonexclusive, royalty-free, perpetual, irrevocable, sublicensable right to disseminate, display, use, modify, copy, adapt, and translate the Submission for any purpose whatsoever, whether commercial or noncommercial, throughout the world in any media. The Submission is not confidential or proprietary. Providing the Submission, grants the right to use the name you submit in connection with your Submission. You represent and warrant in making the Submission that you own or control all rights to the Submission, and that use of your Submission will not cause injury to any person or entity, including Microchip. You will indemnify Microchip for all claims resulting from your Submission.
How can I manage the information Microchip has about me?
You can always choose not to give Microchip information. However, certain information is necessary in order for you to take advantage of MPLAB Xpress, any change notifications, literature, updates, etc.
If you want to add/update your information or preferences, please modify your MPLAB Xpress account profile. When you update your information, we may keep a copy of your earlier information for our records.
You can avoid certain "cookies" by indicating in your account profile that you do not want us to remember you. Your browser may also have options to prevent acceptance of new “cookies.” There are also utilities available allowing you to visit MPLAB Xpress anonymously. Unfortunately, certain features and offerings available through MPLAB XPress may not be available to anonymous users.
Who does Microchip share Customer Information With?
Customer information is important for Microchip to be able to offer products and services to you. We are not in the business of selling customer information to others. We do share customer information with our subsidiaries and with others as described below. Such third parties may be based in the United States, Europe or Thailand. We are not responsible for the privacy practices of third parties to whom your information may be transferred. If you do not wish us to share your information as described below, you may opt out by not supplying information to us when entering information into your account profile, or by not placing orders through MPLAB Xpress.
Agents: We use other companies and persons to perform tasks on our behalf. Examples are not limited to web hosting of MPLAB Xpress, delivering packages, processing credit card payments, checking for export compliance, and providing customer service. They have access to customer information to perform their jobs, but may not use it for other purposes. Microchip may share your customer information with third parties and receive information from credit bureaus and other companies to help prevent and detect fraud, and to offer credit or financial services to some customers. Microchip cannot guaranty the security of such agent services provided on its behalf. As such, Microchip makes no representations or warranties regarding any third party services and has no responsibility or liability whatsoever for any such third party services and is not responsible for the content or privacy practices of such third parties
Third Parties: Except for information transmitted to Microchip through the on-line support system at http://support.microchip.com, any other Submission to Microchip such as designs, ideas or data that you transmit to or post on MPLAB Xpress by any means for any purpose including but not limited to contest participation is considered and treated by Microchip as nonconfidential and nonproprietary.
Conformance with the Law: We release account and other customer information when we believe it is appropriate to comply with the laws of Arizona.
Protection of Microchip and Others: Microchip will release customer information necessary to enforce or apply our MPLAB Xpress IDE Terms and Conditions, and other agreements. Microchip will, at its discretion, release customer information necessary to protect the rights, property and safety of Microchip or others in accordance with the laws of Arizona.
We use 256-bit encryption to secure the financial information you enter. Only the last five digits of your credit card number are listed in your Order Acknowledgement. However, your entire credit card number is transmitted to your credit card company during order processing, and your identifying and credit information is transmitted to companies that process your credit card transactions and review them for export control violations.
Law and Jurisdiction
If you have any concern about our treatment of your customer information, please send us an e-mail at email@example.com.