We had a user today reporting some issues with their Rhino and Grasshopper connectors, they would get errors at startup like Unable to load SpeckleConnectorRhino.rhp plug-in: initialization failed
or An error occurred during ... Method Not found Speckle.Core....
These issues are most of the times caused by having multiple misaligned versions of our connectors installed, such things can happen if:
- you have been debugging / developing on top of Speckle
- have a very old version of the connector installed
- an installation/uninstallation failed
- you have installed both connectors via Manager and connectors manually as System Wide
Soultion
To debug and quickly solve these issues we recommend using grasshopper to see what DLLs are loaded:
- open Grasshopper and create a new C# node
- add a second
B
output port to the node - add this line at the top
using System.Linq;
- add these lines in the function and click OK
var speckleDlls = AppDomain.CurrentDomain.GetAssemblies().Where(o => o.FullName.Contains("Speckle")).ToList();
A = speckleDlls.Select(o => o.FullName).ToList();
B = speckleDlls.Select(o => o.Location).ToList();
The output should be something like this; if not, you most likely have additional versions that can be deleted. Note that SpeckleCore
, SpeckleConnectorRhino
and SpeckleConnectorGrasshopper
all share the same 2.x
version: