I’m hoping to start a beta for the cloud after this sprint (in April). I’m bummed that I haven’t been able to release it yet, but we had a series of changes and tools we wanted to release first to make the local cloud easier to use. (CLI, making it easier to switch servers, keys, etc) – There are more details and a beta group list forming here: https://community.spark.io/t/where-is-the-source-code-for-the-cloud/1381
Despite little interest in this topic, I’ve just added support for alternative API servers (aka local cloud) and a legacy mode to my Android ExtTinkerApp.
By default the features that require ExtTinker firmware (RGB-LED & RX/TX pins) are hidden and the app behaves just like the original.
Per pin hide/reset options have been added to the pinMode display. Hide state and pinMode are stored across sessions.
Via SignUp/Login screens you can get to an “Alter Host” screen, where you can configure API URL scheme (https, http), host server name and host port. These settings are stored across sessions.
Since I have no local server (yet), I couldn’t really test if the server config actually works
Any feedback would be much appreciated.
@kennethlimcp, that would be great.
If you’d like an debug APK rather than having to build it yourself for testing, I could PM you a download link, just as I did for @zachary, when fileing my first PR.
@kennethlimcp, since ExtTinkerApp is firstly meant as a replacement for the Spark (please tell the crew to bring back the :spark: emoji) Tinker App, I would find it more confusing for standard users, if they first had to switch to the Spark cloud, before they could test the Core out the box.
This was one reason that @zachary stated as a reason, why my pull request was turned down
(quote: “it makes the app harder to understand for beginners, and being super easy for those with no previous hardware experience”)
But I could add some hint text at the bottom of the screen, to suggest http and 8080. One who is adept enough to install a local cloud, might find this sufficient.
About the RX/TX pins: If you flash ExtTinker firmware (see first post of this thread) on your Core, you can digitalWrite/digitalRead these pins, too (gives you two more GPIOs, if Serial1 is not required, as is in original Tinker FW).
And the original number one feature - the RGB-LED-Control (hence my avatar) - will only work with this FW, too.
I've been looking for something exactly like this! Couple things:
How do I download your modified app onto my phone for use? I have an iPhone.
Once the app is downloaded and I have it on my phone, am I able to change the cloud API in which the phone app communicates with?
Your link here:
I just download this, and any libraries then throw it onto the Core? Is there anything I need to change in the Core firmware itself to get it working with a local cloud?
First of, thanks for your interest and encouraging words.
But I’m sorry, I haven’t got an iOS version of the app.
I only made the Android version an then filed a pull request which was turned down and so I didn’t really get any further with it.
Since Spark (e.g. @zach) didn’t seem to see any use for others, I’ve just carried on for my own needs - which don’t include iOS.
I don’t quite understand your second question. What do you mean with change the cloud API?
If you mean whether you could set the app up to use the local cloud, then yes, this is already baked into my Android app.
For the firmware question. The application firmware doesn’t care if it’s running against the local or the Spark cloud.
If you wanted to use my firmware with an iOS app you’d need to modify the open source iOS repo accordingly
This means to me that I will be able to use Tinker with a local Cloud as an alternate option to Spark Cloud; and once I modify (the iOS repo?) I will be able to use it with iOS and Android.
If it's possible would you be able to get me in the right direction?
1.) Your Tinker firmware, the one that actually goes onto the Core, is here correct? If it is the correct link I just need to flash it right?
2.)
Would I not have to also modify your firmware so that it worked with iOS? OR I only need to modify the link you provided.
I haven't dug deep into research or any of your links yet, but I'm going to be working on this all day today and figured that these questions would put me in a good place
I'll be back today I'm sure, if that's alright or maybe should I start another thread?
The firmware for the Core is linked in the first post of this thread.
The link you found is for my adapted/extended Android Tinker App.
If you want I could also provide a .APK file to try it out if you’ve got a rooted Android device. This would save you the hassle of setting up an Android dev env just to find that you might not like my App after all
And no, you don’t need to modify the Core firmware since both Apps will use the same interface and the Core won’t see any difference (iOS or Android).
You can even use the standard Tinker Apps (iOS and Android) to do all the standard things of the original Tinker firmware with my extended version.
As long things have to do with ExtTinker you are good in this thread
I do like the ExtTinker firmware, but I really like your local cloud use for the andrioid app as well, I like the idea of options so what you’ve been doing is great.
Yes the .APK would be great thank you so I can play around with the app and ExTinker together!