Install embedXcode

Install the Template

The installation of embedXcode is done as any other standard Mac application thanks to the use of an installation package.

If necessary, the installation package downloads and installs the tool-chains and the SDKs. An internet connection is thus required during the installation process.

Download embedXcode

Download the embedXcode package directly from the download page .

  • For the systems with Xcode 9 running on macOS 10.12 Sierra or 10.13 High Sierra, select the main option.

Info

This option has active support and development with updates and fixes.

  • For legacy systems with Xcode 8 on Mac OS X 10.11 El Capitan or macOS 10.12 Sierra, please select the embedXcode Legacy 8 installation package. It corresponds to embedXcode release 7.6.8.

Warning

Legacy version for Xcode 8 on Mac OS X 10.11 El Capitan or macOS 10.12 Sierra is no longer developed and no longer supported.

This section requires embedXcode+.

  • For legacy systems with Xcode 7 on Mac OS X 10.10 Yosemite or Mac OS X 10.11 El Capitan, please select the embedXcode+ Legacy 7 installation package. It corresponds to embedXcode+ release 4.5.9.

Warning

Legacy version for Xcode 7 on Mac OS X 10.10 Yosemite and Mac OS X 10.11 El Capitan is deprecated and no longer supported.

For more information on legacy versions,

Install embedXcode

  • Double-click on the embedXcode package icon to launch the installation.

Mac OS X requires the installation packages to be signed.

Because the embedXcode installation package is not signed, the following message may appear.

Depending on the installed version of Mac OS X,

  • Open the security parameters defined by calling the menu  > Preferences > Security & Privacy > General.

  • Either select Allow apps downloaded from anywhere.

  • Or click on Open Anyway.

As an alternative,

  • Press Ctrl+Left Button on the embedXcode package icon to display the contextual menu and select Open.

A windows prompts for confirmation.

  • Answer Open to proceed.

The installation starts and displays the welcome screen.

  • Click on Continue to proceed.

The licence is displayed.

  • Click on Continue.

  • Click on Agree to proceed.

An additional window may ask for the destination.

  • Select Install for me only to enable the Continue button.

  • Click on Continue to proceed.

The next window presents different options for the installation.

The options allow to select the frameworks you want to work with. When a framework is selected, the installer checks whether the corresponding tool-chain and SDK are already installed. If needed, it downloads and installs them. The downloaded files can represent up to 748 MB. The Particle framework weights 80 MB, with 76 MB for the GCC tool-chain and 4 MB for the SDK.

The two Edison frameworks represent 668 MB, with 492 MB for the Yocto environment, and 176 MB for the MCU environment.

  • Check or uncheck the options.

  • Click on Continue to proceed.

Next window asks for confirmation of the installation.

  • Click on Install to proceed.

A window prompts for your name and password.

  • Enter both and click on Install Software.

The installation goes on.

If the mbed framework has been selected, an additional dialog box asks for the folder where the mbed projects are saved.

Similar dialog boxes ask for the folders where the Particle projects and Yocto projects are saved.

  • Select an existing folder or create a new one with New Folder.

  • Click Choose.

The installation has been successful.

  • Click on Close to finalise.

A final window asks to delete the installation package.

  • Click on Keep to keep the installation package.

  • Click on Move to Trash to delete the installation package.

Launch the Installation Manually

In case the automatic installation fails,

  • Open a Terminal window.

  • Launch the command

sudo installer -pkg embedXcode-231.pkg -target /

Check the installation Process

To check the installation process,

  • Launch the Console application,

  • Locate the embedXcode Installation log under the Files section.

Set the Folder for Standard IDEs

This section requires embedXcode+.

This is an optional procedure.

By default, the folder where the standard IDEs are installed and located is the /Applications folder.

However, if you've installed all the IDEs on another folder, an option allows to change the folder. For example, if the IDEs are located on the /Applications/IDE folder,

  • Open the the ~/Documents/embedXcode folder.

  • Double click on Define paths to IDEs/

A window asks for the folder with all the standard IDEs.

  • Select the folder that contains the IDEs and click on Choose.

A notification confirms the new path.

Alternatively, on a project basis,

Update embedXcode

Updating embedXcode is done through a standard installation.

  • Just follow the procedure Install the Template. Then the projects need to be updated.

  • Please refer to the procedure Update Project Manually for the embedXcode standard edition.

Update embedXcode+

This section requires embedXcode+.

Updating embedXcode+ is done in two ways.

  • If embedXcode+ 7.0 is already installed, use the Fast Update utility and proceed as per the Fast Update embedXcode+ procedure.

  • Alternatively, perform a standard installation and follow the procedure Install the Template.

To update the projects created with embedXcode+,

Fast Update embedXcode+

Release 7.0 of embedXcode+ 7.0 needs to be already installed. A fast update is delivered as a .zip file.

  • Unzip the file.

The folder contains the Fast Update utility, and three sub-folders for the General, Makefiles and Utilities contents.

  • Launch the Fast Update utility.

A Terminal window opens.

You may be asked for your password. In such a case,

  • Enter your password and press Enter.

The utility checks the installed release and updates the folders ~/Documents/embedXcode, ~/Library/embedXcode/Tools/Makefiles and ~/Library/embedXcode/Tools/Utilities.

=== Update embedXcode+ ===

--- Environment ---
. 15" MacBook Pro with Retina display (Mid 2015)
. Mac OS X 10.12.3 (16D32)
. Xcode 8.2.1 (8C1002)

--- Release ---
Update planned from 7.1.3 ~ 7.1.4 to 7.1.4
. Source ~/Documents/embedXcode/Updates/Fast Update 7.1.4/Contents
. Target /Library/embedXcode/Tools

--- Check ---
. Release expected 7.1.3 ~ 7.1.4, installed 7.1.3

--- Update ---
Updating Makefiles folder
. About.mk
. ESP8266_180.mk
Updating Utilities folder
Updating General folder
. Update Projects
> Success
=== Update done ===
  • Close the Terminal window with Cmd+Q.

To update the projects created with embedXcode+,

Upgrade from embedXcode to embedXcode+

This section requires embedXcode+.

When upgrading from embedXcode to embedXcode+, the projects previously created with embedXcode need to be prepared in order to enjoy the features of embedXcode+.

To update the projects created with embedXcode to embedXcode+,

Update Projects to embedXcode+ and New Release of Xcode

This section requires embedXcode+.

This automatic procedure relies on the the Update Projects utility.

It manages two kinds of projects : projects created with embedXcode standard edition to be upgraded to embedXcode+ edition; projects created with embedXcode+ prior to release 7.0 to be updated to embedXcode+ release 7.0 and later.

As an alternative, the manual procedure is available at procedure Update Project Manually .

  • Close Xcode.

  • Download and install the latest release of embedXcode+.

  • Backup the projects you plan to update.

  • Open the the ~/Documents/embedXcode folder.

  • Double-click on the Update Projects utility.

A window asks for the folder with the projects to update.

  • Select the folder that contains the projects to be updated and click on Choose.

The Update Projects utility updates all the projects located under the selected folder.

A notification confirms the project has been updated

The Terminal window lists the projects updated with their initial release.

*** embedXcode_update_7
---
Migrate /Users/ReiVilo/Projects

6.1.4   SUCCESS ./eX-plus/eX-plus.xcodeproj
6.1.2   SUCCESS ./eX-standard/eX-standard.xcodeproj
7.0.9   ERROR   ./eX-updated/eX-updated.xcodeproj
===

Here, two updates were successful for eX-plus and eX-standard. The latest project eX-updated was already up-to-date.

  • Launch Xcode and open the updated project.

  • Remove the Makefiles and Utilities groups on the left pane. They are no longer needed.

The Makefiles and Utilities groups

Once updated, the project is much more compact. The Makefiles and Utilities are now shared across all the projects.

Before and after

Update Project Manually

For projects created with embedXcode, you need to perform a manual update of the project.

Create a New Project

  • Create a new project with the same name, ProjectA but in a different folder.

  • Copy-paste the corresponding files from the old project to the new project: the main sketch ProjectA.ino and the local libraries.

  • Check Copy items if needed and select Index in the lists of targets for Add to targets.

  • Edit the main Makefile of the new project to add the libraries you plan to use, for example the application and user's libraries.

  • Optionally, edit the main Makefile of the new project to customise the options, for example the warning options.

Modify the Initial Project

As an alternative for more than one project, this time modifying the inital project:

  • Close the project you want to update, called ProjectA.

  • Create another project called ProjectB and launch the Build target.

  • Copy-paste the corresponding folders from ProjectB to ProjectA: Makefiles, Configuration, Utilities.

  • Copy-paste the corresponding files from ProjectB to ProjectA: main.cpp and the main Makefile.

  • For embedXcode standard edition, edit main.cpp of ProjectA and change #include "ProjectB.ino" for #include "ProjectA.ino".

  • For embedXcode+ edition, edit the main Makefile of ProjectA and change PROJECT_NAME_AS_IDENTIFIER = ProjectB" for PROJECT_NAME_AS_IDENTIFIER = ProjectA.

  • Edit the main Makefile of ProjectA to add the libraries you plan to use.

  • Optionally, edit the main Makefile of ProjectA to customise the options, for example the warning options.

Update a Project from embedXcode to embedXcode+

To update the projects created with embedXcode to embedXcode+,

  • Close the project you want to update, called ProjectA.

  • Create another project called ProjectB with the same board and launch the Build target.

  • Copy-paste the corresponding folder from ProjectA to ProjectB: Configuration.

  • Copy-paste the corresponding files from ProjectA to ProjectB: the main sketch ProjectA.ino, and all the header .h and code .cpp files related to local libraries.

  • Rename the main sketch from ProjectA.ino to ProjectB.ino.

  • Edit the main Makefile of ProjectB and change PROJECT_NAME_AS_IDENTIFIER = ProjectA for PROJECT_NAME_AS_IDENTIFIER = ProjectB.

  • Optionally, edit the main Makefile of ProjectB to add the libraries you plan to use.

  • Optionally, edit the main Makefile of ProjectB to customise the options, for example the warning options.

Uninstall the Template

There is an automatic procedure to uninstall the template.

  • Click on Uninstall located on the embedXcode folder:

A dialog box opens and asks for confirmation:

  • Click on OK to proceed or on Cancel to abort.

As an alternative, the manual procedure requires to delete the following files and folders:

  • Delete the folder embedXcode under ~/Documents.

This folder contains the utilities and the Release Notes for embedXcode.

  • Delete the folder embedXcode under ~/Library.

This folder contains the frameworks, tool-chains, licences, preferences, makefiles and utilities used by embedXcode.

  • Delete all the sub-folders related to embedXcode or embedXcode+ under the folders ~/Library/Developer/Xcode/Templates/Files Templates and ~/Library/Developer/Xcode/Templates/Project Templates.

Those folders contain the templates for the embedXcode files and projects.

  • Keep the sub-folders which are not related to embedXcode or embedXcode+.

  • Delete the files under ~/Library/Developer/Xcode/ UserData/CodeSnippets.

This folder contains the code snippets for embedXcode.

For the IDEs and optional tools you may have installed,

  • Please refer to the respective procedures supplied by their editors