# Babel and yakut

**URL:** <https://forum.zubax.com/t/babel-and-yakut/2003>\
**Category:** Cyphal & DroneCAN\
**Created:** [July 28, 2022, 11:20am UTC](https://forum.zubax.com/t/babel-and-yakut/2003 "2022-07-28T11:20:44Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![zbmg](https://forum.zubax.com/letter_avatar_proxy/v4/letter/z/a5b964/32.png) [@zbmg](https://forum.zubax.com/u/zbmg)\
**Post date:** [July 28, 2022, 11:20am UTC](https://forum.zubax.com/t/babel-and-yakut/2003/1 "2022-07-28T11:20:45Z")

</div>

Hello, I’m trying the recently purchased Babel. I need to create an application with CAN CLASSIC, connected to a STM32L4. Starting from the example CypalGarage differentialPressure I tried the port with bxCAN. Through yakut I see the messages go (if I set node\_id fixed heartbeat ok, without the request NodeIdAllocation 8166 message that I changed in the example from version 2 8165 to 1)  
As soon as I set node\_id UAVCAN\_\_NODE\_\_ID on yakut to try the plug-and-play, yakut generates this error about every 10 seconds, I would say with the publication of active services.  
Am I doing something wrong?

Error:

```auto
2022-07-28 06:51:27 0013633 ERR pycyphal.application.heartbeat_publisher: HeartbeatPublisher(heartbeat=uavcan.node.Heartbeat.1.0(uptime=11, health=uavcan.node.Health.1.0(value=0), mode=uavcan.node.Mode.1.0(value=0), vendor_specific_status_code=33), priority=NOMINAL, period=1.0) publisher task exception: [Errno 105] No buffer space available
Traceback (most recent call last):
  File "/home/ubuntu/.local/lib/python3.10/site-packages/pycyphal/application/heartbeat_publisher.py", line 203, in _task_function
    if not await pub.publish(self.make_message()):
  File "/home/ubuntu/.local/lib/python3.10/site-packages/pycyphal/presentation/_port/_publisher.py", line 113, in publish
    return await self._maybe_impl.publish(message, self._priority, loop.time() + self._send_timeout)
  ...
  File "/usr/lib/python3.10/asyncio/selector_events.py", line 441, in sock_sendall
    n = sock.send(data)
OSError: [Errno 105] No buffer space available

```

---

<div class="post-metadata">

**Author:** ![pavel-kirienko](https://forum.zubax.com/user_avatar/forum.zubax.com/pavel-kirienko/32/180_2.png) [@pavel-kirienko](https://forum.zubax.com/u/pavel-kirienko)\
**Post date:** [July 28, 2022, 12:01pm UTC](https://forum.zubax.com/t/babel-and-yakut/2003/2 "2022-07-28T12:01:24Z")

</div>

There was a defect in PyCyphal before v1.9. See “NOBUFS” in the [Changelog](https://pycyphal.readthedocs.io/en/stable/pages/changelog.html#v1-9). The fix was merged 3 weeks ago:

> <https://github.com/OpenCyphal/pycyphal/pull/234>
>
> This is a followup to issue #233.
> 
> Avoid ENOBUFS OSErrors by shrinking the siz…e of SNDBUF when appropriate.
> 
> Similar behavior could have probably been achieved by simply setting the socket's SNDBUF to 0 to get whatever Linux sets as the minimum, but it seems like this may cause potential queue under-utilization when there are large queues specified, so this pull request tries to calculate (with a very rough approximation for sk\_buffer struct size) what the minimum SNDBUF should be to get blocking behavior.

Please make sure you are using the latest PyCyphal: **`pip install -U pycyphal`**

---

<div class="post-metadata">

**Author:** ![zbmg](https://forum.zubax.com/letter_avatar_proxy/v4/letter/z/a5b964/32.png) [@zbmg](https://forum.zubax.com/u/zbmg)\
**Post date:** [July 28, 2022, 1:03pm UTC](https://forum.zubax.com/t/babel-and-yakut/2003/3 "2022-07-28T13:03:15Z")

</div>

in fact after installing latest PyCyphal it no longer generates the error. Thank you.

Does Yakut’s plug and play also work with the NodeIdAllocation \_1\_0 message?

---

<div class="post-metadata">

**Author:** ![pavel-kirienko](https://forum.zubax.com/user_avatar/forum.zubax.com/pavel-kirienko/32/180_2.png) [@pavel-kirienko](https://forum.zubax.com/u/pavel-kirienko)\
**Post date:** [July 28, 2022, 1:03pm UTC](https://forum.zubax.com/t/babel-and-yakut/2003/4 "2022-07-28T13:03:28Z")

</div>

Yes it does.

---

<div class="post-metadata">

**Author:** ![zbmg](https://forum.zubax.com/letter_avatar_proxy/v4/letter/z/a5b964/32.png) [@zbmg](https://forum.zubax.com/u/zbmg)\
**Post date:** [July 28, 2022, 1:47pm UTC](https://forum.zubax.com/t/babel-and-yakut/2003/5 "2022-07-28T13:47:17Z")

</div>

Yes, in fact I put the version 1\_0 and it works correctly. Thank you
