# VMware

{% embed url="<https://www.youtube.com/watch?t=3s&v=TD_Gr38HOsU>" %}

### 1. Preparation:

{% stepper %}
{% step %}
**Download the** CUBE OS **image**

Visit this [repo](https://github.com/eWeLinkCUBE/CUBE-OS/releases/latest) to download the latest `.vmdk`image. Please extract the image after downloading.
{% endstep %}

{% step %}
**Install VMware**

Download and install a virtual machine manager, with [VMware Workstation](https://www.vmware.com/products/desktop-hypervisor/workstation-and-fusion) being recommended.

> Have other virtual machine managers? The following steps can theoretically be used as well.\
> Unfamiliar with virtual machines and owning a Raspberry Pi? You can choose to install CUBE OS on a [Raspberry Pi](https://cube.ewelink.cc/getting-started/quickstart/raspberry-pi). \
> If none of these options are viable, you can purchase an [iHost](https://sonoff.tech/products/sonoff-ihost-smart-home-hub/58) with built-in CUBE OS from the SONOFF official website or platforms like Amazon.
> {% endstep %}

{% step %}
**Zigbee Adapter (Optional)**

If you need to add Zigbee devices, prepare a Zigbee Dongle. Tested Zigbee Dongles include:

> SONOFF ZBDongle-MAX\
> SONOFF ZBDongle-PMG24\
> SONOFF ZBDongle-LMG21\
> SONOFF ZBDongle-E\
> SONOFF ZBDongle-P\
> [Others listed](https://darkxst.github.io/silabs-firmware-builder/) by developer @darkxst&#x20;

{% hint style="info" %}
For more information on Zigbee configurations and compatibility, please refer to this [guide](https://cube.ewelink.cc/compatibility-check/zigbee).
{% endhint %}
{% endstep %}
{% endstepper %}

### 2. Create a Virtual Machine

{% stepper %}
{% step %}
Launch VMware, Select “Create a New Virtual Machine” <img src="https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2Fr8PHiRqOiXobDqruy7s0%2Fimage.png?alt=media&#x26;token=421b78d6-dcc8-4cfb-aa13-79694108ab9d" alt="" data-size="line">.

<div align="left"><figure><img src="https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FQFbFezH6P9YB1oVGan0g%2F551861f9b11344999e39d9447484c924.png?alt=media&#x26;token=f97b61fc-2fd0-4aac-b857-bc03cc130a6d" alt="" width="375"><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
Choose **Custom**, click **Next**. Hardware-**Workstation 17.5 or later,** click **Next.**\
![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FfvUh55dxCDtcpFt8Ybv1%2Fimage.png?alt=media\&token=716754d2-2744-4dfd-8b50-9ee164e6786d)![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2F7E5wYAgLZSxS4Q18EjOQ%2Fimage.png?alt=media\&token=9c5632c1-e7b4-4750-b86e-083ec7165ee9)
{% endstep %}

{% step %}
Choose **I will install the operating system later**, click **Next**.![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FEucHMIu37HMItv7j5OAO%2Fimage.png?alt=media\&token=3c44176e-f8f7-4d20-8918-5821433418cb)
{% endstep %}

{% step %}
Select **Linux > Other Linux 6.x kernel (64-bit)** as the guest operating system type.![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FnILL3D3O9WLaJ8Lv1fug%2Fimage.png?alt=media\&token=6830272f-cc25-40af-bd55-c941bc63b48f)
{% endstep %}

{% step %}
Name the VM as **CUBE OS** and choose a storage location.![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FICYGv0te8NoRQicSHuva%2Fimage.png?alt=media\&token=952ea744-d9d8-49ee-9b4e-e5dc2aacbe67)
{% endstep %}

{% step %}
System Resources:

* **Processors**: 2 cores
* **Memory**: 4096MB (4GB) or more\
  ![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FMOjhpyi8LK7LTdzO7gwM%2Fimage.png?alt=media\&token=34d5aac9-4b98-4ef9-b22e-7ba8b594005c)![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FzPV4t0VLW9yOCaUiOrdp%2Fimage.png?alt=media\&token=7f8ae473-9e9c-4fc5-95b8-48bd9784b955)
  {% endstep %}

{% step %}
Network / I/O Controller Types:

* Set **Network Adapter** to **Bridged** mode (important for LAN access and discovery).
* Set **Controller Type** to **LSI Logic** (required for compatibility with the virtual disk).![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FOSEOMcBRodw2wak9OiXf%2Fimage.png?alt=media\&token=136456f4-79ef-4aaf-a3f8-456d0f5fde87)![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2Fg84GIe8PEuK0br7G9ozs%2Fimage.png?alt=media\&token=a7dcb94b-4c4d-44bf-b130-9eb70a0855b5)
  {% endstep %}

{% step %}
Select a Disk Type **SCSI(Recommended), Use an existing virtual disk**.

![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2Fxhjmab8nWynNOo0cBx1A%2Fimage.png?alt=media\&token=60cac5c5-c62d-4b2c-925e-9c08b4ec8b05)![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2F4vcagexh1BLTE0Ttwy8M%2Fimage.png?alt=media\&token=cfb9e466-cb58-4255-bece-973911bc4515)

{% endstep %}

{% step %}
Click **Browse**, then select the CUBE OS `.vmdk` and **Keep Existing Format**.![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FkvUPNDF8K1o9yTYKkT0D%2Fimage.png?alt=media\&token=ec59dbd9-6fda-4481-8a04-9b3b9ad79100)![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FyvCyLd1q35tQ5hrPx0Pj%2Fimage.png?alt=media\&token=a00c92a4-4385-45e3-8a43-50f27358fae4)
{% endstep %}

{% step %}
Click “Finish” to create the virtual machine.
{% endstep %}
{% endstepper %}

### 3. Configure the Virtual Machine

{% stepper %}
{% step %}
Select the created virtual machine and click the “Settings” ![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FMiAGjb0EmnV9shFNC89x%2Fimage.png?alt=media\&token=824d1587-76f7-4719-a709-68c333754ed4) button.![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2F7dNJA5HcmoMOyOO6mpX9%2Fimage.png?alt=media\&token=fbcbd26d-d17c-4910-9df1-b2f010b73bb0)
{% endstep %}

{% step %}
Under the “Network” tab, confirm the network connection as “**Bridged**” and select **Replicate physical network connection state**.

<img src="https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FI0Z4wF6yQX3cx0c8elIB%2Fimage.png?alt=media&#x26;token=8101a492-9a4f-46dd-b744-afec60edab40" alt="" data-size="original">
{% endstep %}

{% step %}
Under “Options”-“Advanced” tab, set **Firmware type** to **UEFI**. ![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FPrkENK5ZVypAsV3YYG5p%2Fimage.png?alt=media\&token=f8d269bc-5565-409f-b6b5-9f4aea585704)
{% endstep %}

{% step %}
**Optional:** If using a Zigbee USB dongle, ensure **USB Controller** is added. Under **USB Controller**, enable **Show all USB input devices.**

![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2F86yftEMneFGw6vP4IfLw%2Fimage.png?alt=media\&token=7a0eb35a-b74b-4e8e-bb5d-4865449fd8bb)
{% endstep %}

{% step %}
Click “OK” to save the configuration.
{% endstep %}
{% endstepper %}

### 4. Boot CUBE OS

{% stepper %}
{% step %}
Start the virtual machine.
{% endstep %}

{% step %}
Wait a few moments for CUBE OS to initialize. Monitor the boot screen until the boot is complete.

![](https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2F3DhdZN6Xb0hAz8cO9691%2Fimage.png?alt=media\&token=54720c3e-7aa0-4c8c-b114-b750e338a772)
{% endstep %}

{% step %}
Once completed, you will see the CUBE OS' IP displayed on the screen. Use this IP address or [cube.local](http://cube.local) to access the CUBE OS Web management page.

<img src="https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FZbb6mFwPaMSDIRqzexaK%2FScreenshot%202024-11-15%20180746.png?alt=media&#x26;token=8bffc2eb-f774-4ac7-8916-1d04c07e405f" alt="" data-size="original">
{% endstep %}

{% step %}
Upon successful access, a short ID can be viewed on the settings page. Subsequently, access the CUBE OS Web management page using `cube-{short id}.local`, which is useful for differentiating multiple CUBE OS instances on the same local network.

<img src="https://67406449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCnF8kmk9yw3yiy2mRerq%2Fuploads%2FXJi8azaU8jWkoxymkz8K%2FScreenshot%202024-11-18%20at%2011.33.14.png?alt=media&#x26;token=eb4c5fc2-307f-41d9-b0c7-ccefb6d3ad73" alt="" data-size="original">
{% endstep %}
{% endstepper %}
