SparkFun Forums 

Where electronics enthusiasts find answers.

Topics pertaining to the Arduino Core & software used with the Artemis module and Artemis development boards.
User avatar
By liquid.soulder
#209472
Above post mentioned this for low-power configuration in the Arduino IDE
viewtopic.php?f=169&t=50904

Reaching extremely low power states requires careful control of active peripherals. That is sort of at odds with the generic Arduino port where any/all peripherals are expected to work at any given moment. Next post I will provide a link to the SDK solution that you can use to write careful code.
User avatar
By liquid.soulder
#209474
As you are all finding out an all-encompassing BLE solution is not easy. This is my #1 priority but it will likely still take some time. I am trying to leverage mbed os to handle BLE in a standardized way which will be very nice but I walk a lonely road until we get there (but please join me if you can at our forks of mbedos, FlashAlgo, DAPLink, and pyOCD at https://github.com/sparkfun).

BLE functionality is supported in the silicon of the chip as well as by the built-in peripheral components (inductors, caps, antenna etc...) on the Artemis module. So right now it is possible to write any Bluetooth 5 - spec application that you want. That speaks nothing to the challenge of doing so. However you know that our goal at SparkFun is to make prototyping easier for you. So I am doing what I can.

Until I can make BLE appear in Arduino with the now-standardized ArduinoBLE interface (ArduinoBLE.h) you can consider trying examples from the AmbiqSuite SDK. I have done (and will continue to do) my best to improve this tool by providing it (along with improvements) here: https://github.com/sparkfun/AmbiqSuiteSDK
Please follow the 'GettingStarted' instructions (most importantly the part that requires you to install prerequisite tools). If anything is not clear please report it as an issue or submit a pull request.

I will try to add a BLE example that can run on all the SparkFun boards - that can be a starting point to go hand in hand with the BLE examples that were written for the Ambiq Apollo3 Evaluation Board (located in $(SDKROOT)/boards/apollo3_evb/examples/ble_xxxxxxxxxxx). Beware if using those examples directly they may depend on hardware that exists on the Apollo3 EVB (for example waiting until a button is pushed or something)

Any questions/concerns?
User avatar
By VA3SU
#209481
Thanks very much for this post Liquid.soulder. While waiting for the Arduino method of ble I have had a look at the AmbiqSuiteSDK and followed along with the getting started to install the prerequisite tools however the two examples don`t follow for the Artemis. Would it be possible for someone to post an example of the standard hello world led flash using the ambiq sdk method please?
Regards,
Kevin
User avatar
By liquid.soulder
#209494
Alright everyone, I just added an example called 'ble_cordio_tag' to all of the SparkFun boards. It uses the SDK to create a BLE peripheral named 'Tag'. It also prints debug information over the UART, so you can see when advertising begins and when a connection opens/closes.

You may need to take special care to initialize the submodules of the AmbiqSuite SDK repo to ensure that you get the changes (the changes are all maintained in the BSP Repo and moved into our copy of AmbiqSuite as a submodule)

By the way I heard some talk about bluetooth serial transceivers like the BlueSmiRF and others. Keep in mind that BLE has no 'standardized' serial connection profile. That makes it harder to take any two randowm peiced of HW and be sure they will talk to one another. If you are looking for a Tx/Rx implementation in BLE then I'd recommend the Nordic UART Service specification.
User avatar
By liquid.soulder
#209495
here's how I reccomend to get started for this example:
Code: Select all
#install required tools - make, arm-none-eabi-gcc, python
git clone --recursive https://github.com/sparkfun/AmbiqSuiteSDK
cd AmbiqSuiteSDK
cd boards_sfe/{board}/examples/ble_cordio_tag/gcc
make              # build project
make bootload_asb # bootloads using the Ambiq Secure Bootloader - overwrites SparkFun Variable Loader
User avatar
By doodah
#209506
I sensed that BLE functionality was still a ways off, so I started a search for something else and came across the SparkFun Pro nRF52840 Mini - Bluetooth Development Board
(https://www.sparkfun.com/products/15025) I just received one today, so I haven't spun it up, but can't help but notice how similar it looks to the Artemis Nano which I'm working with. If you could guess, how far away are you from getting a similar level of functionality to something like this:

https://github.com/sparkfun/nRF52840_Br ... Button.ino

Again, I am not well versed on the finer points of all this (github, SDK's, make files, etc.) so maybe that's the wrong question, but that's where my head is at.

When you say that there no standardized serial connection profile, that confuses me (likely because I know so little about it!) I was the one who menitoned the BlueSmiRF, but maybe I underestimated the similarities between something like it and the Artemis. Can you shed some light on that?

Maybe the best way forward is for me to explain my application and you tell me how feasible it is right now and into the future:
I am building a product that will interface with hundreds of users/day with each interaction lasting a couple minutes. The user would approach it, connect to it with an app on their phone from a short distance away, the user's unique identifier would be transmitted from the phone to the Artemis via an app and the device would "armed." The Artemis would then deal with various other inputs, and then provide a result to the phone over BLE.

I can't help but think this is realistic for the Artemis. The question is when will the "programmability" approach that of something like the SparkFun Pro nRF52840 Mini?

Thanks!
User avatar
By ziggybeanz
#209623
I've been researching Apollo3 and Artemis Module for about a week getting ready to prototype a BLE-based embedded device. Was really hoping to take advantage of Arduino here, but seems like that's a bit off for this platform. Correct me if I'm wrong -- it looks like there's BLE support via HAL which I understand is accessible via Arduino Core for Apollo3. Can I just use the HAL APIs in my sketch to get BLE functionality?
By dougleppard
#209638
I love sparkfun products, used some in commercial products. I want to replace my current BLE chip with Artemis but it seems Artemis is not ready for commercialization for the main point we need it for BLE.

My application does not need a lot of fancy BLE stuff but it does need a dependable platform.

Keep up the work, I look forward to using it.
User avatar
By Paulito240
#209833
I've also been using SparkFun components for quite awhile and I use them in a lot of our products. For the past 5 years I've been using the Red Bear Labs Blend and it has accomplished most of my needs, but now I am looking for a BLE 5.0 board set that can do simple I/O to an iPhone app or Android app. I was using the Red Bear Blend v2, a BLE 5.0 board, but they were quickly bought out by Particle and retired their boards.

Red Bear Blend had a great tutorial page and really walked the developer through how to program an iOS / Android app. The issue we eventually encountered is Red Bear Labs lack of FCC / CE certification. This is where I think SparkFun could really shine. Artemis with BLE 5.0 and a tutorial on how to do I/O with Xcode (iOS) and Android would really be a great addition and we would use this platform for all of our IoT products.

I encourage you to continue development in this direction. It would be a great addition and fill a gap that is vague in developing IoT platforms.
User avatar
By srossi3
#209907
Hi all,
has there been any progress in the BLE connection for the Artemis redboard? I am trying to run the example code BLE_LED with the 1.0.2 version but the nRF app is not picking up anything.
Thank you so much for all the work that's been devoted to this project, it would be super cool to see it developed!
User avatar
By trangluu
#210145
srossi3 wrote: Fri Nov 22, 2019 1:47 pm Hi all,
has there been any progress in the BLE connection for the Artemis redboard? I am trying to run the example code BLE_LED with the 1.0.2 version but the nRF app is not picking up anything.
Thank you so much for all the work that's been devoted to this project, it would be super cool to see it developed!
I actually a different app call LightBlue instead of nRF Connect to get the example code to interact with my Artemis Nano
User avatar
By BerenV
#210625
Yeah, I agree with everyone that SFE's advertising is a little misleading. Perhaps they could have waited until the BLE functionality was properly built for the Arduino core, or just worked on that first instead of being able to drive a bazillion servos like in one of the example sketches. It's great to see the company launch such a promising new module, but I'm worried that it might fizzle out with lack of development like so many other "great ideas". That being said, my understanding (even though I wasn't around back then) was that it took a whole lot of work from the early Arduino community (and a lot of diving deeper into problems) to give it the name and platform it has now. I don't think we can just expect new boards like the Artemis to be plug and play without some work. But, I hope Sparkfun lives up to all the hype they're putting out in those ads! Maybe it could be like the ESP8266 of BLE :D
 Topic permissions

You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum