Author Topic: Simblee  (Read 19126 times)

donm

  • RFduino Newbie
  • *
  • Posts: 2
  • Karma: +0/-0
    • View Profile
Re: Simblee
« Reply #15 on: December 26, 2015, 07:24:59 AM »
Using Arduino 1.6.5 on Windows 7.  I've got the Simblee libraries and board in my Arduino IDE.

Where can I find the libraries?  It seems simple but I am searching in my sketchbook and sub-folders of the Arduino IDE and I cannot find them. ...feeling kind of ???

I am looking for a place to set up or change the SPI pins.

Here's where I see them on my computer:

"C:\arduino-1.6.5-r5\portable\packages\Simblee\hardware\Simblee\1.0.0\libraries\"

Hope that helps.

mjkuwp94

  • RFduino Newbie
  • *
  • Posts: 19
  • Karma: +0/-0
    • View Profile
Re: Simblee
« Reply #16 on: December 27, 2015, 06:21:10 AM »
Using Arduino 1.6.5 on Windows 7.  I've got the Simblee libraries and board in my Arduino IDE.

Where can I find the libraries?  It seems simple but I am searching in my sketchbook and sub-folders of the Arduino IDE and I cannot find them. ...feeling kind of ???

I am looking for a place to set up or change the SPI pins.

Here's where I see them on my computer:

"C:\arduino-1.6.5-r5\portable\packages\Simblee\hardware\Simblee\1.0.0\libraries\"

Hope that helps.

I ended up finding them here

C:\Users\mark\AppData\Local\Arduino15\packages\Simblee\hardware\Simblee\1.0.0

stupid Windows treats AppData as hidden and maybe this is why the indexing system couldn't find the files for me.

I watched the compiler messages at the bottom of the IDE and found the path in the output.

wookie1

  • RFduino Jr. Member
  • **
  • Posts: 25
  • Karma: +0/-0
    • View Profile
Re: Simblee
« Reply #17 on: January 28, 2016, 01:29:05 PM »
Two questions:

1) Do you have to use the Simblee app to use these with mobile phones, or are there published UUID's for services and characteristics like RFduino (bonus points for them being the same UUID's!)
2) Is this really set up for OTA Arduino sketch uploads, or is some other method needed?

I already have apps developed for RFduino, but am liking all of the I/O available on Simblee as well as the compact size, but the questions above could sway what I end up going with.

tolson

  • Global Moderator
  • *****
  • Posts: 854
  • Karma: +20/-0
    • View Profile
    • Thomas Olson Consulting
Re: Simblee
« Reply #18 on: January 28, 2016, 01:50:31 PM »
Two questions:

1) Do you have to use the Simblee app to use these with mobile phones, or are there published UUID's for services and characteristics like RFduino (bonus points for them being the same UUID's!)
2) Is this really set up for OTA Arduino sketch uploads, or is some other method needed?

I already have apps developed for RFduino, but am liking all of the I/O available on Simblee as well as the compact size, but the questions above could sway what I end up going with.

The Simblee definitely has different UUIDs than the RFduino. I found the Simblee UUIDs are actually registered UUIDs at Bluetooth SIG. One apparently for the normal mode service similar to RFduino. And another one for the advanced 'Simblee for Mobile' service. At least that is the way it appears. I haven't seen any official documentation.

The UUIDs for the characteristics are also different, but, not sequentially based on the service UUIDs like the RFduino does.

Here is all I know so far.
If you define customUUID service you get sequentially assign characteristic UUIDs like RFduino does.
I personally would like control over custom UUIDs for the characteristics too.
http://forum.rfduino.com/index.php?topic=1210.msg4681#msg4681

Here are comparison of RFduino UUIDs and Simblee UUIDs as observed with the Nordic, etal,scanner(s)

RFduino(2220) -> SimbleeBLE (fe84)
2220-0000-1000-8000-00805f9b34fb -> fe84-0000-1000-8000-00805f9b34fb

2221 -> 2d30c082-f39f-4ce6-923f-3484ea480596
2222 -> 2d30c083-f39f-4ce6-923f-3484ea480596
2223 -> 2d30c084-f39f-4ce6-923f-3484ea480596

SimbleeForMobile (fe85)
Hmmm! Different Primary again, but the 2221,2222,2223 equiv are same as SimbleeBLE.
2221 -> 2d30c082-f39f-4ce6-923f-3484ea480596
2222 -> 2d30c083-f39f-4ce6-923f-3484ea480596
2223 -> 2d30c084-f39f-4ce6-923f-3484ea480596

Note the fe84 and fe85 are official Bluetooth SIG 16 bit UUIDs for RFdigital Corp.

Good luck and have fun modifying your Apps.
« Last Edit: January 28, 2016, 02:10:37 PM by tolson »

wookie1

  • RFduino Jr. Member
  • **
  • Posts: 25
  • Karma: +0/-0
    • View Profile
Re: Simblee
« Reply #19 on: January 28, 2016, 03:02:07 PM »
Excellent, thank you Tolson. Modifying the apps is pretty easy. I'll be getting a Simblee breakout board then  :)

I'm still curious about the OTA feature, but I don't know how it would be used with Arduino tools, maybe the mobile app handles it? I guess I'll find out.

tolson

  • Global Moderator
  • *****
  • Posts: 854
  • Karma: +20/-0
    • View Profile
    • Thomas Olson Consulting
Re: Simblee
« Reply #20 on: January 28, 2016, 03:04:44 PM »
As of now, that's at least two of us.

EDIT: The OTA Reference has arrived at the Simblee home page.
https://www.simblee.com/Simblee OTA Reference V1.0.pdf
« Last Edit: January 28, 2016, 07:23:30 PM by tolson »

wookie1

  • RFduino Jr. Member
  • **
  • Posts: 25
  • Karma: +0/-0
    • View Profile
Re: Simblee
« Reply #21 on: February 02, 2016, 07:12:50 PM »
I got the Simblee breakout board. I did a find/replace in my sketch to replace all the RFduinoBLE with SimbleeBLE (after updating the Arduino environment to work with Simblee), and updated the UUID's in my iOS app and it all works  :). The Android app though isn't working out so well. I can't connect with it. I need to look into this more, there is an additional UUID that I had used for RFduino: 00002902-1000-8000-00805f9b34fb. I'm not sure if that needs to change, and if it is needed. The iOS app doesn't have it and it's been so long since I wrote them that I don't recall the details.

tolson

  • Global Moderator
  • *****
  • Posts: 854
  • Karma: +20/-0
    • View Profile
    • Thomas Olson Consulting
Re: Simblee
« Reply #22 on: February 02, 2016, 07:45:31 PM »
That should be...
00002902-0000-1000-8000-00805f9b34fb

That is the BLE SIG UUID for turning on/off notifications.
It shouldn't change.

wookie1

  • RFduino Jr. Member
  • **
  • Posts: 25
  • Karma: +0/-0
    • View Profile
Re: Simblee
« Reply #23 on: February 09, 2016, 05:07:33 PM »
I got excited when the iOS app worked right away when I changed the UUID's, but I have been completely unable to connect with the Android version.

I decided to use the customUUID method on the Simblee to change its UUID's to match RFduino. Using the nRF Control Panel, it does appear that they are the same after I do that. The Android app is not able to connect to Simblee, but still connects to the RFduino. This makes me wonder if there is an issue with Simblee and not the app, but I'm not really that well versed on this so I can't really say that's the case.

I notice that the SimbleeForMobile iOS app is out, but the Android app is scheduled for next month. It seems like connecting to this device with Android may be more difficult or different than other devices like RFduino. I guess at this point I'll have to wait until the Android app is out and see what is done in the source code to get this to work.

RFD_Patty

  • RFduino Team
  • *****
  • Posts: 47
  • Karma: +2/-0
    • View Profile
Re: Simblee
« Reply #24 on: March 30, 2016, 03:48:12 PM »
7 new how to videos are live on the Simblee Youtube channel:  https://www.youtube.com/playlist?list=PLJKNqIEHkJeZGOTPuqi2KOcMP6v-FDLhs

Much more to come, stay tuned.

bob8435

  • RFduino Newbie
  • *
  • Posts: 2
  • Karma: +0/-0
    • View Profile
Re: Simblee
« Reply #25 on: April 01, 2016, 06:43:03 PM »
I picked up a spark-fun breakout board for Simblee and was able to get a mobile application prototyped pretty quickly.  The app is very responsive interacting with the hardware.  I have not been able to find a way to get a periodic interrupt generated on the Arduino side however.  The usual technique is to fiddle around with a timer compare register on the AVR.  The IDE does not recognize the AVR command set as you would expect.  Is there some way to get a periodic interrupt on the Arduino side of Simblee?  The exact timing is not critical, anywhere from 1 - 20 MS or so would work for me.  Just doing some simple task scheduling.  I did see some documentation on generating interrupts from pin inputs.  I guess I could put an external oscillator connected to a pin if I get desperate, but that would be silly!  Thanks in advance for any help.

RFD_Patty

  • RFduino Team
  • *****
  • Posts: 47
  • Karma: +2/-0
    • View Profile
Re: Simblee
« Reply #26 on: April 07, 2016, 01:54:23 PM »
Quote
I picked up a spark-fun breakout board for Simblee and was able to get a mobile application prototyped pretty quickly.  The app is very responsive interacting with the hardware.  I have not been able to find a way to get a periodic interrupt generated on the Arduino side however.  The usual technique is to fiddle around with a timer compare register on the AVR.  The IDE does not recognize the AVR command set as you would expect.  Is there some way to get a periodic interrupt on the Arduino side of Simblee?  The exact timing is not critical, anywhere from 1 - 20 MS or so would work for me.  Just doing some simple task scheduling.  I did see some documentation on generating interrupts from pin inputs.  I guess I could put an external oscillator connected to a pin if I get desperate, but that would be silly!  Thanks in advance for any help.

Since timing isn't critical, try this in your loop function

Code: [Select]
uint32_t timeout =  2000; // 2s
uint32_t lastCheck;

void loop()
{
// periodic checker
if (millis() - lastCheck >= timeout)
{
// do periodic processing

lastCheck = millis(); // restart timer
}
}
« Last Edit: April 07, 2016, 01:57:54 PM by tolson »

bob8435

  • RFduino Newbie
  • *
  • Posts: 2
  • Karma: +0/-0
    • View Profile
Re: Simblee
« Reply #27 on: April 09, 2016, 06:44:09 PM »
Thanks for the reply but I went ahead and connected two pins together, one set as an analog output and the other as digital input.  I set the analog output to 128 which gives a 50% duty cycle waveform.  I attached an interrupt to the digital input pin.  It gives a nice periodic interrupt at about a 4 millisecond rate.  I am using the other 3 analog outputs and I noticed that every once in a while the voltage is wrong.  Looking on the scope the PWM waveform almost looks inverted from a duty cycle point of view.  I was thinking that this had something to do with the periodic interrupt so I put noInterrupt() and interrupt() around my block of analogWrite statements.  When I did this everything stopped probably because the periodic interrupt is no longer running.  Seems like the interrupts don't get re-enabled.  Right now I moved the analogWrite statements to the periodic interrupt routine.  Testing now to see if this solves the problem.

wookie1

  • RFduino Jr. Member
  • **
  • Posts: 25
  • Karma: +0/-0
    • View Profile
Re: Simblee
« Reply #28 on: April 14, 2016, 05:00:27 PM »
I'm not sure what I've done differently, but I recompiled my Android app and tried again to connect, and everything is working. For ease of use, I just set the UUID to be the same as RFDuino using:
SimbleeBLE.customUUID = "2220";

Now both iOS and Android are communicating with the Simblee  :)

RFD_Patty

  • RFduino Team
  • *****
  • Posts: 47
  • Karma: +2/-0
    • View Profile
Re: Simblee
« Reply #29 on: April 18, 2016, 03:33:36 PM »
Simblee library v 1.0.3 is live, we've created a short video to show you how to update:

<a href="https://www.youtube.com/v/nAH9Jm1mc4I" target="_blank" class="new_win">https://www.youtube.com/v/nAH9Jm1mc4I</a>

Enjoy!
« Last Edit: April 18, 2016, 03:41:12 PM by tolson »

 

anything