-
Moving from Chrome Apps to Node webkit (1.1.0)
01/19/2017 at 12:38 • 0 commentsThe directions of development has changed:
- Google discontinues support for chrome packaged apps and the framework is moved from chrome packaged apps to node-webkit. It uses the same API so porting even before 1.1.0 was just copying and pasting the files into NW folder. With this milestone the communication is held in completely different way. Now the app is inside iframe where UI is and main window contains the bridge between app and device. Best benefit in this case is normal pagination system which earlier was one of most annoying thing in framework. I tried to work with window.postMessage but it doesn't work well with cordova and slows down the communication. Now it uses javascript scopes behaviour to manage the data.
- Bluetooth low energy support now is not efficient and causes many errors. The main problem is the fact that there are too many workarounds and it was successfully tested only on one device (using cordova and developing only on mobile may cause headaches for people who are not familiar with it). Other problem is the fact that still I can't include desktop support. The Bluetooth LE should be included when there is web bluetooth API completed. Before that, existing early beta will be depreciated. The main thing in LE is low power consumption, small size of (sometimes multiple at once) devices and IOS support. I think that for prototyping with Arduino and derivatives you will probably not use these features because most Arduino devices actually works like Serial communication packed into characteristics making them no different than BT 2.0 SPP which works better with Involt and is cheaper at all.
- The consistency between desktop and mobile is one of most important thing.
- Involt is changing its directions in technical development. Instead of pushing the BT LE support, the online support will fit all of needs in making it outside of Chrome and consistent on desktop and mobile (and it's easier to maintain). With online support this will be true prototyping like websites without any barriers. I think I will start with UNO WIFI and Adafruit Feather M0 WiFi w/ATWINC1500 or Arduino Yun and its Bridge Library (and later - ESP, mkr1000 etc.). ESP8266 is in my opinion not an option on start because it requires from user (ux/interaction designers) to learn additional language and will likely deters them from using the framework. This is the project main milestone for now.
- After adding web support, I will try to actively promote the project or even gain some partnerships.
- With online support some changes in setup and structure might be required.
- The layout features will be depreciated and reduced only to basic pagination (for chrome apps that requires single page layouts). This may return in future releases.
- If online version will be a success, there is possibility to make Involt extended version as SaaS and add hardware (online) interactions in existing layout (or build a new one) in browser (or standalone app). Now this is the only long term goal. Personally making a UI for Involt is great case for my portfolio so the concept might be designed earlier than development.
- Again, some changes in CSS may occur - cordova doesn't handle shadows well and the UI kit must be simplified. Maybe some responsive styles are great idea.
-
What currently is supported?
05/08/2016 at 23:52 • 0 comments- Serial communication on Desktop
- Classic (2.0) Bluetooth support on both desktop and mobile (tested with HC-05)
- Bluetooth LE basic support for mobile with Adafruit Bluefruit (depreciated in 1.1.0)
Desktop version works on Win,Mac, Chrome OS as Chrome Packaged App
Mobile is Phonegap based and Android is supported. Technically it's possible to run on IOS but I can't test it. For my tests I'm using Samsung Galaxy S5 with Android 5.1.1.
Low energy is in beta.
The 1.0.9 release where BT LE was introduced is from 8.05.2016. The whole framework started about 2 years ago but with long breaks.