Bluetooth Module + MCU recommendations?

Go To Last Post
19 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi people,

I was wondering if you would have any suggestions on MCUs with inbuilt bluetooth modules. If not, please suggest external bluetooth modules that could be interfaced with an AVR mcu and also be able to connect to an android or ios device.

Thanks,

AM

Amateur programmer.
Believe when I tell you that my struggle on here is real.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

azimmali wrote:
If not, please suggest external bluetooth modules

Google "Arduino Bluetooth"  should give you lots of suggestions.

 

Jim

 

Click Link: Get Free Stock: Retire early! PM for strategy

share.robinhood.com/jamesc3274
stack gold/silver https://www.onegold.com/join/713...

 

 

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Jim,

Thank you. I will definitely look into it. Do you know of any that does not come in an arduino? I will need to work with ATMEGA64.

 

AM

Amateur programmer.
Believe when I tell you that my struggle on here is real.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Bluetooth modules come in many varieties, how do you intend to use it?   Serial comm, audio, both, something else?  

What ever your thinking of doing, odds are it has been done using an AVR based Arduino, so do some searching and get some ideas.

You can port just about any Arduino code to your M64, you can even turn your M64 into an arduino using the Mega Core board library.

So what do you want to do with your M64 and bluetooth module?

 

Jim

 

Click Link: Get Free Stock: Retire early! PM for strategy

share.robinhood.com/jamesc3274
stack gold/silver https://www.onegold.com/join/713...

 

 

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

azimmali wrote:
If not, please suggest external bluetooth modules that could be interfaced with an AVR mcu and also be able to connect to an android or ios device.
In Google Play or iTunes, search for mbiot

expansion of the information results in

Microchip Bluetooth Data

...

 

3. BM70 /BM78 /BM64  :
Discover and connect LE device. Transfer text typed in the app to peripheral device. Transfer text file data, send and receive across the device and phone

 

...

Bluetooth 4 doesn't have Bluetooth 2 or 3's SPP so that's extra firmware in the module and software in the application.

A Bluetooth 4 UART bridge (transparent UART) might not be "fast".

Most current Android and iOS devices are Bluetooth 4 only.

BM70-series apparently varies by power source (coin cell, Li-ion or LiPo)

Microchip

MAPS - Wireless Page

http://www.microchip.com/maps/Wireless.aspx

(Product Family pull-down menu, Bluetooth Module)

 

Microchip Technology Inc

Microchip Technology

Secure AVR BLE IoT Node - ATAVRBLE-IOT

http://www.microchip.com/DevelopmentTools/ProductDetails.aspx?PartNO=ATAVRBLE-IOT

...

...  a fully-certified RN4871 Bluetooth®4.2 Low Energy module, ...

...

RN4871 - Wireless - Bluetooth Module - Microcontrollers and Processors

https://www.microchip.com/wwwproducts/en/RN4871#additional-features

...

Developers are freed from the complexities of Bluetooth Software and RF development and can simply utilize the RN4871 as a wireline replacement.  

...

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Texas Instruments makes some uC's with built in Bluetooth. CC2541.

And you don't have to buy the loose chips.

Common / Cheap PCB's from Ali etc, have these chips on them and they are flash reprogrammable.

https://www.aliexpress.com/wholesale?SearchText=cc2541

With these module's you have the choise wether to use them via the serial AT command set, or reprogram the uC itself.

 

ESP32 also does Bluetooth, but it is not exactly a small uC. Bigger problem though is that there is no real datasheet available. It has mostly been hacked / half reverse engineerd and forced to work in the "arduino" environment.

Doing magic with a USD 7 Logic Analyser: https://www.avrfreaks.net/comment/2421756#comment-2421756

Bunch of old projects with AVR's: http://www.hoevendesign.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

(transparent UART) 

A new arrival at Mouser :

Mouser Electronics  - Electronic Components Distributor

Digilent

Mouser

Digilent

Pmod™ Bluetooth® Low Energy Interface

https://www.mouser.com/new/digilent/digilent-pmod-ble-interface/

opened its datasheet : 

https://www.mouser.com/pdfdocs/pmodble-2.pdf

[RN4870]

[RN4870 GATT services :

  • device information
  • Airpatch
  • BeaconThings
  • UART Transparent data streaming
  • 5 custom public services
  • 4 custom private services

]

https://www.microchip.com/wwwproducts/en/RN4870

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi Jim,

Sorry for the delay. Like I had discussed in my previous posts, I want to use the M64 as the primary MCU of the design and the bluetooth module is for communicating with external devices.

 

Best,

A

Amateur programmer.
Believe when I tell you that my struggle on here is real.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

Might want to consider these

http://www.cypress.com/products/ble-bluetooth

They have io, spi, IIc, PWM, etc all built in!

 

Otherwise could use an HC-05....but do you need FCC?  Then perhaps something rated such as an RN4020  (this does not guarantee FCC passing...but a good step in that direction)

 

Do you want to hook to an Iphone?  Then you need BLE, not "old school" Bluetooth (HC05 no good for iphone)

 

http://webcache.googleusercontent.com/search?q=cache:fmbcVcVM-S0J:https://evothings.com/control-an-led-using-hm-10-ble-module-an-arduino-and-a-mobile-app/&num=1&hl=en&gl=us&strip=1&vwsrc=0

In this tutorial, you will learn about controlling a LED using HM-10 BLE module, Arduino and Evothings Studio.

Last Summer, I wrote a tutorial about controlling the lights of your home using Arduino and HC-05 bluetooth module. While, HC-05, HC-06 and HC-09 are still famous and available everywhere, they are essentially based on Bluetooth 2.0 technology. On the other hand, many new smartphones support only BLE (Bluetooth Low Energy or Bluetooth 4.0) instead of Bluetooth 2.0 or Bluetooth 1.0. The iPhone is most prominent of those smartphones as it’s supporting BLE since iPhone 4S, which was released nearly 5 years ago!

As I sat down to explore what options we have for prototyping a BLE enabled IoT device, the HM-10 came up as a prominent module in this space as it’s inexpensive ($8.50 on Aliexpress, down to $6 at other places) and available everywhere. The module is also based on already familiar TI’s CC2541 BLE SoC. The module also has a few clones; one is called BT-05, another is called AT09, yet another is known as the SPP-CA HC-05/HC-06 or BT06, yet some clones are based on ZS-040 breakout boards just like HC-05.

When in the dark remember-the future looks brighter than ever.   I look forward to being able to predict the future!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi Paul,

I am actually working on a Texas devboard, CC2650 launchpad in parallel. Unfortunately the IDE is giving me build/compilation errors as it is conflicting with WinAVR and AtmelStudio. Those modules are compatible with AVR/AtmelStudio? I have not worked in depth with bluetooth modules. The CC2650 itself has tons of applications/stack for running just one project or its initialization alone. Do those modules come with all the necessary files?

Best,

A

Amateur programmer.
Believe when I tell you that my struggle on here is real.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

Most add-ons to arduino comes as "shields" that have a common pin-out to plug into the top of Arduino boards. if you give your mega64 based PCB the same pinout arrangements you can just plug Arduino add-ons straight in. Lots of non-Arduino designs are starting to do this (even some of Atmel/Microchip's own boards) so their designs can benefit from all the standard Arduino add-ons available. Of course, for any such add on code will probably only have been written for "Arduino processors" (so things like 328 and 2560) but it should be a fairly easy task to make a port of such coed to mega64 too.

 

Of course, if making new designs, one might question the merit of using a processor that was designed 18+ years ago. There's lots of more modern multi-IO AVRs that are much more modern and have a lot of more useful, better designed peripherals. In fact if you went with that mega2560 you could simply use Arudino Mega's for your prototype design then commit to your own PCB layout later. You'd also be able to use existing 2560 code "as is".

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi Candies,

Yes, I do need FCC. I will definitely look at the cypress products. I am working on a CC2650 launchpad in parallel. I am not sure if I am moving in the right direction. I was suggested the same by my professor at the uni as his team works on the same modules although for a different application (IoT). Thank you for sharing the tutorial with me.

 

Best,

A

Amateur programmer.
Believe when I tell you that my struggle on here is real.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi Chapman,

Thank you for sharing those with me. Appreciate your time.

Best,

A

Amateur programmer.
Believe when I tell you that my struggle on here is real.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

Yes for FCC, most of the cheap imports (HC-xx, HM-xx) leave you all on your own as far as FCC.  I found there are a very few that do offer FCC, though I couldn't actually get my hands on one (maybe only if I order a million).  Again, that does not mean you don't need to do FCC testing of your product.   "Big names" like Cypress, TI, Microchip, etc are then you best bet, unless you get lucky on your search.

 

 

Here is one I encountered from  jnhuamao  (they offer many modules)...but could not actually find a way to order one.....

 

When in the dark remember-the future looks brighter than ever.   I look forward to being able to predict the future!

Last Edited: Mon. May 14, 2018 - 04:17 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I definitely would not want to work with ARDUINO, but I felt maybe it could be a good starting point. The fact that arduino's instructions alone take more time than the intended interrupt times is a spoiler. I am not able to record events at certain time instants precisely.

The dev board that I have uses an m64 (EM microelectronics - EMDB409 - which is being used as an inspiration for the project). But if there are better MCUs that can do more for a less price and greater performance, hell yes.

 

Thanks,

A

Amateur programmer.
Believe when I tell you that my struggle on here is real.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks for the input, candies.

Amateur programmer.
Believe when I tell you that my struggle on here is real.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

Generic link (maybe some good info)

http://www.jnhuamao.cn/bluetooth.asp

When in the dark remember-the future looks brighter than ever.   I look forward to being able to predict the future!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

avrcandies wrote:
"Big names" like Cypress, TI, Microchip, etc are then you best bet, unless you get lucky on your search.
Nordic Semiconductor (nRF) in Adafruit BLE modules.

https://github.com/adafruit/Adafruit_BluefruitLE_Firmware

https://learn.adafruit.com/introducing-the-adafruit-bluefruit-le-uart-friend/software-resources (Android, iOS, macOS, Linux, Windows)

https://learn.adafruit.com/introducing-the-adafruit-bluefruit-le-uart-friend/uart-service

https://www.adafruit.com/index.php?main_page=category&cPath=255 (Bluetooth)

 

"Dare to be naïve." - Buckminster Fuller

Last Edited: Mon. May 14, 2018 - 06:27 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Note that the Nordic nRF5x devices are all "System on Chip" (SoC); ie, they contain the BLE radio and a microcontroller (Cortex -M0 or -M4) - so adding a separate AVR is probably pointless.

 

Most other manufacturers have similar things - including Atmel Microchip: http://www.microchip.com/wwwproducts/en/ATSAMB11

 

EDIT 

 

typo

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
Last Edited: Mon. May 14, 2018 - 07:57 PM