Issues installing Workbench's VSIX (combined from multiple threads.)

@Pescatore thanks for keeping at it - really appreciate it - sorry for the bumps! one question i had: are you able to run the 64bit version of VSCode by chance? it’d be interesting to see if that works as expected but i understand if that’s too much hassle.

@m_m, thanks for responding. The PC has a 32bit CPU. I am going to move development to a new PC starting next year.
ParticleDev is sufficient for now. I hope it will not limit me with the Mesh HW.

you guys are way ahead of me… when I op-en a vsix file, I get an error, with this install log:

11/17/2018 2:20:31 PM - Microsoft VSIX Installer
11/17/2018 2:20:31 PM - -------------------------------------------
11/17/2018 2:20:31 PM - vsixinstaller.exe version:
11/17/2018 2:20:31 PM - 15.5.99+g87f89a485e
11/17/2018 2:20:31 PM - -------------------------------------------
11/17/2018 2:20:31 PM - Command line parameters:
11/17/2018 2:20:31 PM - C:\Program Files (x86)\Microsoft Visual Studio\Installer\resources\app\ServiceHub\Services\Microsoft.VisualStudio.Setup.Service\VSIXInstaller.exe,C:\Users\Kevin\Documents\workbench-1.0.0-alpha4\particle-vscode-theme-1.0.0-alpha.4.vsix
11/17/2018 2:20:31 PM - -------------------------------------------
11/17/2018 2:20:31 PM - Microsoft VSIX Installer
11/17/2018 2:20:31 PM - -------------------------------------------
11/17/2018 2:20:32 PM - Initializing Install…
11/17/2018 2:20:32 PM - Microsoft.VisualStudio.ExtensionManager.InvalidExtensionManifestException: Element ‘Identity’ has invalid value for attribute ‘Version’ —> System.FormatException: Input string was not in a correct format.
at System.Version.VersionResult.SetFailure(ParseFailureKind failure, String argument)
at System.Version.TryParseComponent(String component, String componentName, VersionResult& result, Int32& parsedComponent)
at System.Version.TryParseVersion(String version, VersionResult& result)
at System.Version.Parse(String input)
at System.Version…ctor(String version)
at Microsoft.VisualStudio.ExtensionManager.ExtensionImpl.<>c.b__64_1(String s)
at Microsoft.VisualStudio.ExtensionManager.ExtensionImpl.VerifyStringValue[T](String value, ErrorInfo info, Func2 selector, Boolean isRequired, Int32 maxLength, T defaultValue) --- End of inner exception stack trace --- at Microsoft.VisualStudio.ExtensionManager.ExtensionImpl.VerifyStringValue[T](String value, ErrorInfo info, Func2 selector, Boolean isRequired, Int32 maxLength, T defaultValue)
at Microsoft.VisualStudio.ExtensionManager.ExtensionImpl.ExtractManifestData(PackageManifest manifest)
at Microsoft.VisualStudio.ExtensionManager.ExtensionImpl.ReadPackageManifest(XmlReader reader)
at Microsoft.VisualStudio.ExtensionManager.ExtensionImpl.ReadManifest(Stream manifestStream)
at Microsoft.VisualStudio.ExtensionManager.InstallableExtensionImpl.ReadVSIXManifestFromPackage(Stream stream, CultureInfo preferredCulture)
at Microsoft.VisualStudio.ExtensionManager.InstallableExtensionImpl…ctor(String path, CultureInfo preferredCulture)
at Microsoft.VisualStudio.ExtensionManager.ExtensionEngineImpl.CreateInstallableExtension(String extensionPath, CultureInfo preferredCulture)
at Microsoft.VisualStudio.ExtensionManager.ExtensionEngineImpl.CreateInstallableExtension(String extensionPath)
at VSIXInstaller.App.GetInstallableData(String vsixPath, Boolean isRepairSupported, IEnumerable1& skuData) at VSIXInstaller.App.Initialize(Boolean isRepairSupported) at VSIXInstaller.App.Initialize() at System.Threading.Tasks.Task1.InnerInvoke()
at System.Threading.Tasks.Task.Execute()

what am I doing wrong?

@m_m, I’ve been experiencing some issues trying to get Workbench up and running so I can move aware from Particle Dev. One of the items you mentioned above was to do a File > Open Folder and point to the existing folder with all of my projects (for Dev). However, I don’t have an “Open Folder” menu item under File (see attached).

I’ll be very please when there are some tutorials on this whole process, as I’ve wasted way too much time trying to move from Dev to Workbench. I completely uninstalled Workbench and re-installed it, hoping that would clear up some of my issues.

Seriously, all I want to do is to be able to bring the nearly 90 projects I’ve developed in Dev into the Workbench environment and be able to compile and flash for Photons and Electrons (for now). The library issue was also confusing, but I may have made it that way.

1 Like

hi @ctmorrison - sorry for the bumps! hopefully we can get you back on track here. let’s try this:

  1. open VSCode
  2. verify you are using the latest version (v1.29.1) via the “Code > About Visual Studio Code” menu selection (if you are not, update your copy and resume these steps upon completion)
  3. flip to the extensions panel via the “View > Extensions” menu selection
  4. verify you are using the latest versions (v1.0.0-alpha.5) of the Workbench extensions (if you are not, check your email for the update link we sent yesterday or visit to get the latest and resume these steps once you’ve installed)
  5. close any open folders via the “File > Close Folder” menu selection (shown in your screen grab above - it’ll be grayed out if you don’t have any folders open)
  6. run the Particle: Create Project command (cmd+shift+p then type “particle” and select from the list) and follow the prompts. upon completion, your new workspace should be loaded.
  7. run the Particle: Configure Workspace for Device command and select the Device OS version and your hardware platform (e.g. deviceOS@0.7.0 and photon or if you are using our new Gen 3 hw, deviceOS@0.8.0-rc.25 and argon, etc). depending on your selection, you may see additional dependencies start to download & install.
  8. write or import some basic “hello world” code in the src/<your project name>.ino file
  9. from the main menu bar select: “Terminal > Run Task…” and run one of the compilation or flash tasks

if you run into issues, please let me know the step where you hit the issue and if possible try running the Particle: Audit Environment command and sharing the non-sensitive info here.

thanks again for trying the developer preview of workbench - your feedback is much appreciate!

The above is certainly helpful and I do appreciate the help, although I do think we have a potential issue of Windows vs. Mac? Again, I don’t see the menu option you refer to: “File > Close Folder”. I’m attaching what I’m seeing. Perhaps it’s just my ignorance, but does your “Folder” reference the same as “workspace” on my system?

As I get acquainted with the lingo, I wondered if the “workspace” would include all of my project folders and I’d simply go to the folder associated with the application I want to work on.

BTW, I was able to create a new project (perhaps unfortunately in a difference folder tree) and was able to cloud compile it and flash it locally to my Photon. Interesting…I had to put the Photon into DFU mode instead of listening mode to flash the app.

With CLI both options were always possible

// DFU Mode
particle flash --usb firmware.bin -v
// Listeing Mode
particle flash --serial firmware.bin -v

I’ve always found DFU Mode more reliable and maybe that’s also the reason why Workbench is going that way.

Am I correct in understanding there’s no simple way to bring all of my nearly 100 Dev projects into Workbench? It appears I should create a new folder by running Particle: Create Project for each project I’d like to bring over from Dev. I’d then copy the .ino file into the src directory of the Workbench folder, but I wouldn’t need to bring over any other files. Is that correct?

I apologize if this is described somewhere else. Just point me in the right direction!

The above is certainly helpful and I do appreciate the help, although I do think we have a potential issue of Windows vs. Mac?

based on your original screen grab, my instructions were for mac - at which step did you run into problems?

I don’t see the menu option you refer to: “File > Close Folder”

VSCode changes that menu item based on what you have open (file, folder or workspace). you might want to run thru if you haven’t already as there are some key concepts that we assume folks will grok (ui controls, workspaces vs. folders, multilayered configuration, commands vs. tasks, etc).

we’re also working on a guided on-boarding UX that’ll ship in the near future to at least walk you through the process of creating a new particle project workspace.

I was able to create a new project

ok, so that tells me you’ve been able to install Workbench and that it is working.

Am I correct in understanding there’s no simple way to bring all of my nearly 100 Dev projects into Workbench?

to view all our available commands, select “View > Command Palette” from the main menu then start typing “particle” - you should see the full list of commands filter down to only ours.

from there you can run the Particle: Import Project command and step thru the prompts.

I installed the latest VSC and the new alpha5 visx files last night on my personal laptop, no problems. I can create a project.

At my office this morning, I did the same: updated VSC to latest 1.29.1, then installed alpha5 visx files installing the core file last. After each file I did the “reload” to take effect. But when I try to run “Partice: Create New Project” I get an error at the bottom right that “command extension.createProject not found”. Any ideas what to do?



While tinkering on my own I did a few things. Uninstalled alpha5 extensions and re-installed. Both this time and the original install, I did not get the prompt to install the particle dependencies. So continuing on, I have a prompt to install the the 64-bit version of VSC (had 32-bit from a long time ago), so I did, and re-installed alpha5 extensions. This time, after sitting there with a spinning wait cursor for a bit, I received a pop-up “Particle Dependencies Missing” with an “install” button, which I clicked and the gcc, DeviceOS, etc started the download in the bottom left corner. After that re-install, it looks like the command “Particle: Create New Project” worked this time.

1 Like

So here’s my process that doesn’t work:

  1. Create a project in my new Workspace folder Particle: Create New Project
  2. Set up the workspace for the appropriate device: Particle: Configure Workspace for Device
  3. Import an existing project that’s in my Dev project folder: Particle: Import Project… point to the file in the source (Dev) directory.

Assuming there’s no Lib folder, it brings the source file into the Workspace src folder. It also creates a xxx.code-workspace file in the source directory for some reason. I’m assuming this is simply a footprint to indicate the project has been imported in the Workbench. It also creates a lib folder in the source project folder and installs the libraries that are referenced in the program/ file (I’m assuming the latter). This makes no sense to me. In Workbench I can clearly see the desired source code in the src folder.

With all that said, if I File > Save the application file in Workbench (for safety sake) and File > Close Workspace and the File > Open Workspace, the new source code is not there – just the initial boiler plate that’s created when the project was created.

The only way I’ve been able to fix this is to manually copy the actual application source code.

Am I missing something?

It’s also a bit unclear as to when I need to install the library files. I believe I need those references in the file, but it seems the cloud compiler complains if the library files are present in the lib folder.

Thanks in advance for any guidance.

here’s how it’s supposed to work:

this shows the following steps:

  1. import project (command)
  2. compile via the cloud (command)
  3. compile user application using the local compiler task (tasks)

note that the project i’m importing has the following layout:

├── src
│    └── proj-import-01.ino

my contains:


where name is required

try mirroring all of this as closely as you can and if you are still running into issues, let’s start a new thread: Information: How to report bugs and provide feedback