Forums » Support

Back To Topics

SBrick Android App

    • 178 posts
    August 28, 2015 5:28 PM CEST

    Okay, thank you Alexey, you helped me a lot.

  • August 28, 2015 3:54 PM CEST
    I'm sure that app version is 2.3
    Every time before installing new version I delete app and app data :)
    Maybe I try to use Windows phone this week to feel the difference between apps.
    • 178 posts
    August 28, 2015 1:35 PM CEST

    Thank you Alexey!

    The laggy control and disconnection suggests that the app sends commands too fast. Since you have problems even with the larg-cst version, it makes me think that the so called connection interval of the BLE connection between the phone and the SBrick is too big, so the commands cannot be transferred quickly enough. This could be because you phone might use a more energy efficient (e.g. slow) connection setting by default. This can be remediated by improving the connection procedure by using a newer Android API that allows giving a hint to the OS to use fasts connection settings, but is incompatible with pre-5.0 operating systems. Fortunately this could be solved by using Java's "reflection" capability, a solution to dinamically discover available classes and their methods. I'm going to test the first version of this solution soon.

    I've seen the temperature bug you've mentioned. It's caused by write and read command being mixed up (executed out-of-order), and the temperature data is being overwritten with the voltage data and vica versa (sometimes you may see funny voltages too, mostly 0.0V :) ). I thought this got sorted out in the latest version. This could be cause by the big connection interval and the resulting slow command execution exaggerating a race condition problem that is not showing up on other devices, because they are "too fast".

    Actually both bugs could be because you somehow accidentally got an old build of the application. Make sure you have the 2.3 version, if unsure, please remove and reinstall it from Google Play.

    I'll do a fixes in the coming days, and post maybe 2 or 3 APKs for testing.

    Thank you for the help,


  • August 28, 2015 1:00 PM CEST

    1) Yes, I have only 2 Sbricks

    2) Not responding Sbrick is always second. Physically it can be different Sbricks, only connection sequence matters

    3) Any of Sbricks can be controlled alone, but with lags and disconnects

    4) All of my bricks now have 4.4 software version. OTA update succeed only via Galaxy Note

    5) Software versions on both screens are the same

    6) On the first screen voltage and temperature data are constant (they updated every time you launch the app), but on the control screen temperature really updated (only for 1st Sbrick). Sometimes it shows that temperature is near -127 degrees, which is pretty cold for august =P
    Voltage is always constant, even after 2 minutes of driving 2 buggy motors with load


    • 178 posts
    August 28, 2015 12:41 PM CEST

    Thank you for the feedback Alexey.

    To help me hunt this bug down, I need you to answer / execute the following questions / tests:

    - Did you use the same 2 SBricks for the tests?

    - When you try to simultaneously control both of them, is the same physical SBrick that is not responding, or is it random?

    - If there's one particular SBrick that not responding in dual mode, can it be controlled alone?

    - Did you or anyone else succeed to OTA update at least one of the SBricks you tested with any method?

    - Please check the SBricks firmware version with the simple control both on the start screen and when the SBricks are connected. Please send me the result. If it's always one particular physical SBrick that fails to work properly, and the firmware versions are different, then wich one is not working?

    - Please check again the voltage and temperature data on the control screen. Are these values really being updated, or they are showing, but stay constant? You can alter the voltage slightly by turning motors on and off with the other, working SBrick using the same battery. The closer the battery is to being discharged, the larger the change should be. Compare the voltage / temperature changes of the two SBricks. Voltage readings shold be very close (within 0.1-0.2 volts). Temperature readins can be quite far apart even in the same environment, since the internal temperature detector is not calibrated, and it is only guaranteed to be precise within 10°C (e.g. it can be used to determine wether the brick is on fire, but as a weather station it fails miserably :) ).

    Once connected, the SBrick protocol transfers voltage and temperature information in a very similar manner as it transfers channel control commands. If the telemetry data comes through, but the controls commands don't make it, that leaves very little place for bugs. Please note that it's not the only way to get the telemetry data. It is also broadcasted bythe SBrick when it is not connected. The application remembers past values, so these values CAN show up on the control screen even if it isn't possible to read them directly.

    We do our best to hunt the remaining connection problems down while we are integrating the simple control's connection layer into the official application. The good new is that we quickly managed to get simple control work on any device upon we could lay our hands. I'm confident we will find the reason of your problem quickly.

    Thank you for your efforts,


  • August 28, 2015 12:08 PM CEST

    Tamás, "large-cst" app works the same way as the old one on my Xperia Z Ultra (CM12.1)
    Only one Sbrick from two could be controlled simultaneously. App displays that second SBrick is connected, voltage data and temperature also displaying, but no one channel runs.

    This is still puzzle for me - why Sony Xperia with BLE support works much worse then Galaxy Note with Bluetooth 3.0 version (which is incompatible with SBrick at all)

    Hope that you guys will be able to make a working version of the app at least until Christmas =Р

    • 178 posts
    August 27, 2015 2:17 PM CEST

    Thank you!

    • 28 posts
    August 27, 2015 1:52 PM CEST

    Good to know! I hope a solution can be found soon! All of the above were done on a Nexus 4, CyanonogenMod 12.1, Android 5.1.1.

    • 178 posts
    August 27, 2015 1:48 PM CEST

    Thank you Anthony, the additional info proved to be very important :) I had a very similar issue when I started to rebuild the application. The problem was packet loss, and it is almost certain that it's packet loss again.

    I'm sorry if you've already mentioned somewhere else, but... what device / os version are you using?

    Thanks again!

    • 28 posts
    August 27, 2015 1:33 PM CEST

    Aditionally, if it's of any significance, using both v2.3 and large-cst apps it hangs on either 6400, 6600 or 6800. It has never gone over 6800 bytes.

    • 28 posts
    August 27, 2015 1:27 PM CEST

    Tamas: Sorry for the delay. I have tried both the "large-cst" and the new update that I received from the market. Both fail to update my SBrick. I also tried keeping it connected for a few minutes and then controling something and the connection indicator stays on green and for an instance only I saw it switch to that "dirty yellow" colour. I hope this hepls..

    • 178 posts
    August 24, 2015 9:59 AM CEST

    Thank you Marc! Could you please tell us what phone/table did you use, and what Android version do you have? Thanks!


    Anthony, Alexey, any news about the "large-cst" simple control APK (link above)?

    • 99 posts
    August 21, 2015 8:27 PM CEST

    Just updated to firmware v4.4 with the new Simple App. Easy and fast connection and upload to the Sbrick that works fine :)

    • 178 posts
    August 18, 2015 4:37 PM CEST

    Anthony, Alexey, please try this version:

    It sends commands slower. It won't be released as is, because it's so slow sometimes have problems with control latency. It's just a means to locate the problem in your case.

    Try connecting and waiting a minute or two without moving the controls, and then try controlling something. Also try OTA update (only to 4.4, don't downgrade to 4.0).

    Let's see if this changes anything.

    This post was edited by Tamás Fábián at August 18, 2015 4:37 PM CEST
    • 178 posts
    August 18, 2015 3:17 PM CEST

    Oh! Sorry, I see you did. :)

    You can control BOTH SBricks separately, but not TOGETHER?

    If one of the CANNOT be controlled ALONE, then please see the steps linked above.

    If one of them CANNOT be controlled TOGETHER with the other, than we probably have a bug that is platform dependent. I'll try to figure out how does that happen.


    Thank you!

    This post was edited by Tamás Fábián at August 18, 2015 3:20 PM CEST
    • 178 posts
    August 18, 2015 3:14 PM CEST

    Thank you!


    Did you ever did an OTA upgrade on that SBrick?


    If so, try the steps described in the wiki page:


    Thank you!

    • 5 posts
    August 17, 2015 8:39 PM CEST

    [blockquote]Tamás Fábián said:

    Helo Matej,

    what happens exactly when you try to use two SBricks with the new imple control and the OpO? The second SBrick never connects? (Red / yelllow status bar) Or it connects (green status bar), it only does not respond to your commands?




    Hi Tamás, 

    the second SBrick connects, its green status bar ( no info about Volts ), its not respond to my commands. 



    • 178 posts
    August 17, 2015 11:52 AM CEST

    Helo Matej,

    what happens exactly when you try to use two SBricks with the new imple control and the OpO? The second SBrick never connects? (Red / yelllow status bar) Or it connects (green status bar), it only does not respond to your commands?



    • 5 posts
    August 15, 2015 5:29 PM CEST

    Hi All, 

    After update to 4.4 I do some tests and here is my conclusions: 

    Test 1 on 42008 with one L-Motor for propulsion and Servo Motor for steering / devices One + one, Android 5.0.2 Cyanogen 12.0, Yoga Tablet 2, Android 5.0.1 / test with sbrick simple control and SBrick App 1.6.1 / control is stable and without losing connection. I was driving more than 8 min.

    Test 2 42039 with one 5292 RC motor for propulsion and Servo Motor for steering / same devices and applications / after few seconds loosing connection. I guess that reason is a power loosing. when power fall down to 4,2 - 4,0 V connection fail.

    After update I have still problem like before, with One + one device I can control only one of my Sbrick. When I try OTA i have same problem like Anthony OTA fails at various %

    thx for firmware improving 

    This post was edited by Matej Grajcár at August 15, 2015 5:32 PM CEST
    • 28 posts
    August 15, 2015 12:11 PM CEST

    Tamas: I did what you suggested to Alexey and I do get disconnects.

    OTA fails at various % using a Nexus 4 running CM 12.1 - v5.1.1, Nexus 4 running CM 11 - v4.4.4, Nexus 7 running CM 10 - v4.3.1.

    Please advice.

    • 178 posts
    August 14, 2015 8:40 PM CEST

    Hello Alexey,

    do you experience the disconnects with the Simple Control right? If it is so, this might be a timing problem, and that would also explain the failing OTA update.

    Please try to just connect to and SBrick with Simple Control, but do not move the controls. Let it sit for 2-3 minutes and look for disconnect/connect events. Does this happen without moving the controls?

    Thank you!

  • August 14, 2015 5:01 PM CEST

    [blockquote]Tamás Fábián said:

    I'm sorry, a library I used for testing has been left among the dependencies, and this caused the APK to be compatible with ZERO devices. :P

    I've just issued an update, it should be out in a few hours.


    On my Sony Xperia Z Ultra OTA update is not working at all. Updating process fails again and again from 3 to 5 seconds after start. 

    My Samsung Galaxy Note works without problems with this app. OTA update finished from first try on two Sbricks. Original Sbrick app still works flawlessly even with new 4.4 software version. 

    Sbrick app on Xperia Z Ultra still have plenty disconnects/reconnectings while playing with it. No good news with 4.4 update.

    This post was edited by Alexey Tikhvinsky at August 14, 2015 5:01 PM CEST
    • 178 posts
    August 14, 2015 3:08 PM CEST

    I'm sorry, a library I used for testing has been left among the dependencies, and this caused the APK to be compatible with ZERO devices. :P

    I've just issued an update, it should be out in a few hours.

    • 28 posts
    August 14, 2015 8:31 AM CEST

    You are indeed right.

  • August 14, 2015 7:10 AM CEST
    Antonis, yes, I know. But there are actual date (13 august) on the app's page.

    More than 12 hours passed since this update, and we still have old app.