diff --git a/platforms/digi-xbee-hive.png b/platforms/digi-xbee-hive.png
new file mode 100644
index 0000000..c21d17f
Binary files /dev/null and b/platforms/digi-xbee-hive.png differ
diff --git a/platforms/platforms.xml b/platforms/platforms.xml
index c4a611c..51e747c 100644
--- a/platforms/platforms.xml
+++ b/platforms/platforms.xml
@@ -139,4 +139,11 @@
Digi TX64-Rail-Single-Cellular ?\[[0-9a-fA-F]{12}\] ?\(ssh\)
https://www.digi.com/resources/documentation/digidocs/90002450/default.htm
+
+ digi-xbee-hive.png
+ Digi XBee Hive Wi-SUN
+ xbee_gateway
+ Digi XBee Hive Wi-SUN ?\[[0-9a-fA-F]{12}\] ?\(ssh\)
+ https://docs.digi.com/resources/documentation/digidocs/rf-docs/wisun/index.html
+
\ No newline at end of file
diff --git a/samples/xbee/communication/ws_get_started/README.md b/samples/xbee/communication/ws_get_started/README.md
new file mode 100644
index 0000000..4c27ebf
--- /dev/null
+++ b/samples/xbee/communication/ws_get_started/README.md
@@ -0,0 +1,88 @@
+Wi-SUN Get Started Sample Application
+=====================================
+
+This example is part of the Digi's Wi-SUN Get Started. It demonstrates
+how to use the XBee Hive Wi-SUN and the XBee Wi-SUN modules to exchange
+data using the socket IPv6 API.
+
+This application is executed in the XBee Hive Wi-SUN and performs the
+following actions:
+ * Allows the user to input messages to send to the target XBee.
+ * Listens for incoming IPv6 messages from the XBee network.
+
+Read the [demo documentation][doc] for more information.
+
+
+Requirements
+------------
+
+To run this example you need:
+
+* An XBee Hive Wi-SUN device.
+* An XBee Wi-SUN radio module running the corresponding MicroPython
+ application of the Get Started and its corresponding carrier board
+ (XBIB-C board).
+* XBee Studio (available at www.digi.com/digi-xbee-studio)
+
+
+Setup
+-----
+
+1. Ensure the XBee Wi-SUN module is in the same network as the Digi XBee Hive Wi-SUN device.
+
+Run
+---
+
+The example expects the IPv6 address of the remote XBee device as a parameter to
+launch. To obtain that value:
+
+1. Launch the XBee Studio application.
+2. Plug the remote XBee device to the PC. XBee Studio automatically discovers it.
+3. Open the device tab associated to the XBee module by clicking on it.
+4. Click **Settings** in the left sidebar to open the settings page. This reads
+ all the settings automatically.
+5. Search the **MY** setting. This is the value you have to pass as parameter
+ to the Python application of the Digi XBee Hive Wi-SUN device.
+
+Ensure to pass the XBee Device's IPv6 address as parameter to the example application. To do so from PyCharm:
+
+1. Click on the **Run/debug Configurations** button in the toolbar of your IDE.
+ It is a combo-box with the name of your project.
+2. On the contextual menu that appears, click on **Edit Configurations**.
+3. In the new window, there is a **Parameters** field. It allows to input the
+ parameters of the application. Input **-a ** where
+ is the IPv6 address of the device that you copied
+ in the previous section.
+
+At this point you only need to build and launch the project. Then, read the Get
+started section of the documentation for more information about the exercise.
+
+Supported platforms
+-------------------
+
+* Digi XBee Hive Wi-SUN - minimum firmware version: 25.6.110.1
+
+License
+-------
+
+Copyright (c) 2025, Digi International, Inc.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+[doc]: https://docs.digi.com/resources/documentation/digidocs/rf-docs/wisun/wisun-gs_c.html
\ No newline at end of file
diff --git a/samples/xbee/communication/ws_get_started/main.py b/samples/xbee/communication/ws_get_started/main.py
new file mode 100644
index 0000000..38936d0
--- /dev/null
+++ b/samples/xbee/communication/ws_get_started/main.py
@@ -0,0 +1,81 @@
+# Copyright (c) 2025, Digi International, Inc.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+# SOFTWARE.
+import socket
+import argparse
+import threading
+
+
+PORT = 9750
+
+print("---------------------------------------+")
+print(" | XBee Hive Wi-SUN Get Started Sample |")
+print(" +-------------------------------------+\n")
+
+def receiver(sock):
+ """
+ Background thread: receive and print incoming UDP datagrams.
+ """
+ while True:
+ try:
+ data, address = sock.recvfrom(1024)
+ print("Received from [%s]:%s >> %s\n> " % (
+ address[0], address[1], data.decode().rstrip()),
+ end='', flush=True)
+ except OSError as e:
+ print("Receive error: %s" % e)
+
+def main():
+ parser = argparse.ArgumentParser(
+ description='Simple IPv6 UDP socket client')
+ parser.add_argument('-a', '--address', required=True,
+ help='IPv6 address of the server')
+ args = parser.parse_args()
+
+ # Create an IPv6 UDP socket.
+ server = (args.address, PORT)
+ s = socket.socket(socket.AF_INET6, socket.SOCK_DGRAM)
+ s.bind(('::', PORT))
+
+ # Start receiver thread.
+ thread = threading.Thread(target=receiver, args=(s,), daemon=True)
+ thread.start()
+
+ print("\nType a message and hit Enter to send it to [%s]:%s." % (
+ args.address, PORT))
+ try:
+ while True:
+ # Read a line from stdin and send it as a UDP datagram.
+ line = input("> ")
+ if not line:
+ print("Please, enter some data to send to [%s]:%s." % (
+ args.address, PORT))
+ continue
+
+ try:
+ s.sendto(line.encode(), server)
+ except OSError as e:
+ print("Error sending data: %s" % e)
+ except KeyboardInterrupt:
+ print('\nInterrupted by user, closing...')
+ finally:
+ s.close()
+
+if __name__ == '__main__':
+ main()