Creating several visual feedback points to let users know what is
occurring in the boot sequence. This also expects a new version
of the enclosure.
* On shutdown and reset, change eye color to a dark gray
* On initial startup the enclosure will have left the eyes at a
yellow color, indicating that it is on but not fully running yet.
When the enclosure comes up (and doesn't kick off the out-of-box
or the notice that they need to run wifi setup) it will begin to
scroll an "UPDATING" message.
This assumes that someone else will remove the "UPDATING" message.
That gets handled by the Mycroft-Mark-1 skill, which resets the
mouth and sets the eye color to default.
* Add automatic uploading of wake words and learning option in enclosure client
* Spawn new thread and remove ping
Spawning a new thread eliminates the need to ping and eliminates additional latency. In addition, the return code of scp is now used to determine whether to delete the wake word
* Increment enclosure version number
* Fixes issue #434. Developers working on both Cerberus and Home during the transition would have to re-pair.
Also bumping enclosure client version.
* Correcting error from when Tarturus code was merged. At startup it was calling Enclosure.system_reset(), which rebooted the Arduino, instead of implementing Enclosure.reset(), which sets the UI to a "ready for input" state.
While in here, I also added docstrings for all Enclosure API methods.
* Increment Arduino code version
* Adding a call to reset the face UI when the enclosure service starts up. This is needed because the enclosure.reset that is posted by the speech service on the messagebus sometimes occurs before the enclosure client is up and listening for it -- especially if there is a Arduino firmware upgrade.
In the future, we may want to consider a core service roll-call that gets triggered whenever any of the core services come up.
* Update dev_setup.sh
* Enhancing the Wifi setup process:
* When no intenet is detected, Mycroft now instructs user
to connect cable or tells how to start wifi setup
* Wifi setup talks user through connection process
* Setup will auto-shutdown after 5 minutes
* Completion screen now goes to cerberus.mycroft.ai to
allow registration immediately
(TODO: custom url/landing page to that will already have the pairing code)
* Changing the wording of the prompt message and slowing down the
rate at which the password is spoken.
* fixed pep8 error
* fixed mroe pep8 in listener.py
* -webkit-user-select: text;
* * Fixed iOS issues with password input
* Added SSID wrapping for unusually long network names
* Fixed need for left/right scrolling on small phone screens (e.g. iPhone 4/5)
* iOS devices now automatically open the screen after connecting to the MYCROFT network
* Tweaked Wifi setup instruction wording to make it easier to understand
* Fixed a potential bug with the flag used to stop the connection monitor
* Removed some temporary debugging code being used to track a very
specific issue with odd network names.
* Various small changes for the code review. Mainly deleting some dead
code and comment changes.
* Made the "not connected" message more Mimic-friendly by using the word
'browse' instead of 'login'.
* Increased the size of the password characters. They felt tiny at 13px on
previously on an iPad.
* - Added an auto-check for unit connection during the first 20 seconds when
a unit is turned on. If no connection to the internet is found, the user
is told how to get connected.
- Added calls to 'ping' to help rebuild the ARP table we previously cleared
in the test for lost connection
- Tweaked some terminology spoken to be more Mimic-friendly and understandable.
- Added automatic announcements every 45 seconds of the next step in the
process.
- Added automatic shutdown after 5 minutes
- Added announcement when the process is complete
- Added documentation and comments throughout
- Made things more "pythonic". Switched functions from camelCase to
python_style_names. Also used some underscore prefixes for private methods
that are really just implementation helpers.
* - The initial check for internet connectivity now happens 5 seconds after the system comes up instead of 20.
- Also added a space to tweak the pronunciation of an announcement
* Changes to the wifi setup portal
- Added a Cancel Setup button (shuts down the process)
- The Register Me button only appears once the browser can
reach cerberus.mycroft.ai. This prevents following the
link while phone is still connected to the temporary
access point or not connected back to the real network.
* Update version.txt
* added volume control in enclosure.py
* fixed syntax for skill method usage
* addressing a problem with the enclosure service
* trying to use intents
* oops
* fixed pep8
* fixed issue with reversed volume controls
* changed enclosure version number to reflect updated enclosure code
The 1980s birthed a new form of interaction between computers and users. For the first time computers became capable of understanding the most basic form of human communication - pointing and grunting. The mouse and the GUI revolutionized computing and made computers accessible to the masses.
We have now entered a third era. We are rapidly approaching a time when computer systems will understand human language and respond using the most natural form of human communication – speech.
This is an important development. Some might even call it revolutionary.
Despite its importance, however, the technologies that will underpin this new method of interaction are the property of major tech firms who don't necessarily have the public's best interests at heart.
Not anymore.
Meet Mycroft – the worlds first open source natural language platform. Mycroft understands human language and responds with speech. It is being designed to run on anything from a phone to an automobile and will change the way we interact with open source technologies in profound ways.
Our goal here at Mycroft is to improve this technology to the point that when you interact with the software it is impossible to tell if you are talking to a human or a machine.
This initial release of the Mycroft software represents a significant effort by the Mycroft community to give the open source world access to this important technology. We are all hoping that the software will be useful to the public and will help to usher in a new era of human machine interaction.
Our community welcomes everyone to use Mycroft, improve the software and contribute back to the project. With your help and support we can truly make Mycroft an AI for everyone.
Joshua W Montgomery – May 17, 2016