Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - AKotowski

Pages: [1] 2
You need to reinstall or update the simblee board package using the "Boards Manager,"  not just edit the preferences box.
Also: use Arduino IDE Version 1.8.1.  Versions 1.8.3, 4, 5 work for the first sketch, but not subsequent sketches.

Support / Re: Cant get SimbleeCloud Service to work
« on: October 16, 2017, 07:54:34 AM »
I figured it out.
For the cognoscenti this is probably obvious, but for a noob like me I would have liked to have this information:

1.) The easiest way to start is with an HTML page using the POOL function in the simblee cloud.  I made both ButtonFlash and ButtonFlashfromWeb work.  You need to modify the files to include your own userID.  THe html files can stay on your computer, you just open them with a web browser.  You need to include the file SimbleeCloud.js in the same directory. The html page will communicate with the simblee cloud and identify itself via the esn you program (eg 2).  You can program the interaction with your simblee using javascript.  The only problem is you cant create a data file such as a .csv file to record your data.  You can create a cookie to record data.

2.) To create data files you need to do server side programming, with php for example.  This is where the services option of the simblee cloud comes in.  You need to use a public server with https capability.  For example:  Using the simblee service routine at  did not work for me.  You need to create the /service and the /service/out directories. Put the ButtonFlashService.php into the /service directory and allow the /service directory to be served by your web server. You also need to put the file SimbleeCloud.php into the same directory.  ButtonFlashService.php creates  an out.txt file.  ButtonFlashService.php basically passes the data back and forth between the simblee and the html page and records the transactions in the out.txt file.  You can modify this to create a data.csv file.  You can then use ftp to download the data.  The .php file does not necessarily need to pass the data on to an html page.  Debugging is tricky because you cant open the page on a browser and see what is happening.  You need to also create a log file and write debug info from your php script.

A Kotowski

Support / Re: Cant get SimbleeCloud Service to work
« on: September 19, 2017, 09:23:32 AM »

I can run as you do.  My problem is when I try to insert a service in the loop:  device<->mobile<->cloud<->service<->custom HTML page.
Then it stops working, either because the servie routine does not work(but I used the routine in the example) or because the communications chain is broken(I suspect this is the problem).

Andy Kotowski

Support / Re: Cant get SimbleeCloud Service to work
« on: September 19, 2017, 09:18:39 AM »
Thanks for your reply. 

1.) Can I use the service routine provided by simblee at, or do I have to provide my own?
2.) If I provide my own can it be on a LAN address: if my phone is connected to my LAN?
3.) Or do I need to provide the service routine on a public website?
4.) I assume I cant run it on my desktop.  I can run the php file using a file on my desktop, but nothing happens.  I assume this is because  the service is connected to my desktop, not simblee cloud.


A Kotowski

Support / Cant get SimbleeCloud Service to work
« on: September 18, 2017, 09:09:44 AM »
I have the Simblee example ButtonFlashModule working and can see the results on the ButtonFlash html page.  But when I try to route through a Simbleeservice their is no connection.  I have tried using the simblee service page, a server on my lan (192.1168.0.08) as well as trying to route this through the internet.  Are there any requirements or secrets for using a service?

A Kotowski

Suggestions / SimbleForMobile
« on: September 14, 2017, 10:16:37 AM »
I would like to see SFM be more robust with respect to user errors.  Currently SFM locks up for many conditions without any clue as to what is wrong.  I have learned:

1.) Dont call   SimbleeForMobile.process() too often
2.) Dont update screen elements when the phone is not connected
3.) Dont update screen elements for a screen that is no longer being displayed
4.) Elements drawn after   SimbleeForMobile.endScreen() may not display


A Kotowski

Suggestions / SimbleForMobile Data acquisition
« on: September 14, 2017, 10:07:25 AM »
I would like to see SFM have the capability of writing data to the phone mass storage.  This would provide an end to end data acquisition solution without requiring the development of a complex IoT multi web page system.

Simblee For Mobile / Re: SimbleeForMobile.drawSegment does not always work
« on: September 07, 2017, 05:56:17 PM »
Yep,  they found the cause:
Dont use the following commands:
1.) SimbleeForMobile.beginScreen(CLEAR);
2.) SimbleeForMobile.beginScreen(0xFF112244);

The following works:

Simblee For Mobile / Re: SimbleeForMobile.drawSegment does not always work
« on: September 05, 2017, 07:04:44 AM »
Sorry, thats what I tried to do.  But then it works as in my post.  However in the SimbleeForMobile example files there is a sketch named SimbleeUITest.  This program demonstrates the problem.  In the Test switch/segmment API's a blue segment is displayed but all that is visible is a solid blue bar.  The bar works as a segment but just appears as a bar.  Some experimentation led to the realization that when a value is assigned to the segment, it displays as a solid blue bar.

Simblee For Mobile / Re: Update Segments on Connection
« on: September 04, 2017, 09:29:29 AM »
The way to do is is to update the value of the segment just after you draw it:  SimbleeForMobile.updateValue(segment, 1); .
See my post on this forum on Aug 30

Simblee For Mobile / SimbleeForMobile.drawSegment does not always work
« on: August 30, 2017, 12:47:29 PM »
In the attached sketch, drawSegment works as expected by providing a value and highlighting the selected segment when touched.  In more complex surroundings it does not seem to work.  In  the SimbleeUITest example the Segment on the Switch/Segment screen is a solid blue bar with no text visible.  The slave segment has numbers 1 to 4.  Selecting segments on the blue bar updates the Segment display with the selected segment and clears the slave segment.  Touching the slave segment also clears the slave segment display.  The segment functions, but the display is just a solid bar.
Is this a bug in SFM, or a problem with the code?

Code: [Select]
#include <SimbleeForMobile.h>

uint8_t segment, value;

void setup() {
  // put your setup code here, to run once:
  SimbleeForMobile.deviceName = "Segment";
  SimbleeForMobile.advertisementData = "Data";
//  SimbleeForMobile.domain = "";

void loop() {

void ui()

  SimbleeForMobile.beginScreen(GRAY, PORTRAIT);
  char *titles[] = { "Zero", "One", "Two", "Three", "Four" };
  segment = SimbleeForMobile.drawSegment(25, 50, 250, titles, countof(titles), RED);
  SimbleeForMobile.updateValue(segment, 1);
  SimbleeForMobile.drawText(50, 100, "Value:", BLACK, 14);

  value = SimbleeForMobile.drawText(150, 100, 10, BLACK, 14);

  SimbleeForMobile.setEvents(segment, EVENT_RELEASE);


void ui_event(event_t &event)
  if ( == segment) {
       SimbleeForMobile.updateValue(value, event.value);

Bugs / int takes 4 bytes
« on: August 29, 2017, 08:48:28 AM »
Using simblee, integer types are calculated to 16 bits.  However the compiler allocates 4 bytes of storage.  I am storing arrays of integer and it is chewing up a lot of memory.  Is this a bug, or is there some reason ints take 4 bytes?

Support / Re: Only get one Interrupt
« on: August 07, 2017, 09:23:35 AM »

Thanks for you reply.

I get type conversion errors when I use  dynamic_attachInterrupt() .
However, I have made the code work!  I need to set the interrupt pin to input ( pinMode(intPin, INPUT); ).
I dont know how but it must have been set to output.

Bst Rgds


Support / Only get one Interrupt
« on: August 04, 2017, 08:09:49 PM »
I trying to get an interrupt driven input routine to work.  The problem I am having is that I only get 1 (one) interrupt when I use attachPinInterrupt.  Until I use another attachPinInterrupt I get no more interrupts.  Am I doing something wrong?

Code: [Select]
volatile int intCount =0;
int intPin = 4;
bool interrupted = false;

void setup() {
  Serial.begin(9600);                 // Enable logging of the various events during application execution
   intCount = 0;
   interrupted = false;   
   attachPinInterrupt(intPin, intRoutine, LOW);
//   dynamic_attachInterrupt(intPin, intRoutine, LOW);
//   interrupts();
void loop() {
  Serial.printf("Count: %d\n", intCount);
  if (interrupted){
//     attachPinInterrupt(intPin, intRoutine, LOW);     
int intRoutine(uint32_t dummyPin){
  interrupted = true;
  return 0;

Simblee For Mobile / Re: updateRect() causes Android App to Crash
« on: July 25, 2017, 08:31:52 PM »
Yes, adding the second color parameter allows the program to work

Pages: [1] 2