Spark Core OS has a Home

Over the past few months I have been prodded and poked about “why not just use the Android App” as well as “API Cloud is the Official Way”. Okay, so I set back and thought what would be the best approach to kinda (but not really) fall in line with the offical way and it dawned on me. Take it out of here (sorta) :smile:

I assume websites about my Project is okay for this category “Project Share”, I hope.

So I started today a Joomla Website specifically for the advancement of Nuttix Portd to Spark by @david_s5 (Thank You David) and alll 'Non-Cloud" based User Interfaces using PHP, Jquery and Java until such time (if ever) these become an “officially supported” option.

My reason for doing this is mainly that 1,000 of applications already exist that allow for people to interact using PHP, Java, & jQuery directly with a websocket server; hence the Spark Core directly and without the Cloud. As well as, that there has been interest by others to have a non-cloud based solution of which I consider paramount so the NSA can NOT track anything in my life; but that’s just me :smile:



Was there a link buried in there somewhere ?

1 Like


Glad you asked.


Good luck with the non cloud stuff. I think you’re right, “Take it out of here” is a good approach.

Part of the 95% I see.

1 Like

OK - so I finally get around to trying to use this, and not being a nuttx user, getting started is a headache.

My development environment is linux, cli w/ arm-none-eabi-gcc etc installed (have been building firmware for cores for months now, and misc other stm32 before that.)

Following the README.txt, I’ve cloned the git repository, and I think I want to follow the ‘NuttX EABI “buildroot” Toolchain’ section of the instructions, but prior to that there is mention of .config files and it looks like the sub-dir field in the configure command is actually supposed to be a valid board configuration. Then it talks about buildroot - is this the linux config tool ( that I’m used to or something different ?

Once I can type make and build a hello world binary I can burn with dfu-util, then I’ll be off to the races; I just need some help bootstrapping that process, and a brief application of google-fu did not yield the magic answers.


I wish I could help but, I am not a programmer - still in step 1 - Create Development Environment & basic understanding of kernel, etc.

Have you looked at ?

They have ported their RTOS to STM32F103RB (Spark Core uses STM32F103CB) and beRTOS say that the Spark Core (in a reply email to me) would be an excellent project for their RTOS. What I like about it (so far) is they have a pre-configured Development Windows Installation as well as, a kernel/driver selection wizard that lets you select kernal parameters, pick ported drivers for inclusion, etc. all through there wizard. They have a trial version for testing. Maybe this is better way to do; I am not really sure yet as I still have a lot to lear.

If you check out beRTOS please let me and others know if this would be an easier way for people to learn how to build a customized OS for the Spark.



Here is what the Wizard looks like (1st page):

At present I just want to try what others have ported. I do not have the bandwidth to port something else right now. To me the interesting piece isn’t the stm31f103 port, it’s the CC3000 host driver adapt.


Have a look at this script. Does almost everything to download and create the build environment for NuttX

Unfortunately the comments are all in Chinese but you can use Google translate to get the English text. Just be careful not to use the translated text to paste in a new script, Google inserts extra spaces in places that mess things up.

At the top of the script you can change the board to “Spark” and the config to “composite” before running.

I have done a reasonable amount of homework on the RTOS options available including Free/SafeRTOS, eCos, NuttX and BeRTOS and I think NuttX is a good choice. Reasonable level of POSIX compliance so some level of portability to/from Linux.

A key functionality would be to get OTA Flash upgrades integrated into NuttX, and then the Spark cloud functionality as a library.

@david_s5, @librae8226 and @acassis have done a huge amount of work to get it running, so very good resources to ask for help.

I am all for this as an alternative, especially with a Spark Core II/Mega/whatever…



OK - it looks like it does a bunch of toolchain stuff that I neither need or want, but I’ll try and extract the stuff from the tail end and see how to configure & build yet-another-RTOS.