Commit Graph

16 Commits

Author SHA1 Message Date
Twirre Meulenbelt
45be0366ba style: correct and clarify docs and comments
ref: N25B-168
2025-10-16 22:03:50 +02:00
Twirre Meulenbelt
4c3aa3a911 feat: adapt actuation receiver to state's qi_session
Makes actuation tests pass. In main, the timing of the socket no longer contains the time to receive and send data, but only the processing time of the message handler.

ref: N25B-168
2025-10-16 21:46:46 +02:00
Twirre Meulenbelt
56c804b7eb test: add unit tests for main and actuation receivers
Exhaustive test cases for both classes, with 100% coverage. Adds `mock` dependency. Tests for actuation receiver do not yet pass.

ref: N25B-168
2025-10-16 21:43:24 +02:00
Twirre Meulenbelt
55483808ff fix: use qi session from state in actuation receiver
ref: N25B-168
2025-10-16 18:09:01 +02:00
Twirre Meulenbelt
c10fbc7c90 fix: use different port, fix endpoint name matching
ref: N25B-168
2025-10-16 17:37:01 +02:00
Twirre Meulenbelt
23c3379bfb refactor: use new port negotiation style
As changed in the API document, this now uses the new port negotiation style.

ref: N25B-168
2025-10-16 17:22:04 +02:00
Twirre Meulenbelt
e12d88726d Merge remote-tracking branch 'origin/dev' into feat/actuation-receiver
# Conflicts:
#	src/robot_interface/endpoints/socket_base.py
2025-10-16 17:01:16 +02:00
Luijkx,S.O.H. (Storm)
0b55d5c221 style: fixed docstrings
close: N25B-171
2025-10-16 14:06:31 +00:00
Twirre Meulenbelt
308a19bff2 fix: correct negotiate endpoint name
Was previously "negotiation/", but the API document described it as "negotiate/". It is now "negotiate/" in the implementation as well.

ref: N25B-168
2025-10-16 15:02:01 +02:00
Storm
0c5b47ae16 refactor: removed hardcoded IP and port and moved video functions from main to the VideoSender class
ref: N25B-171
2025-10-16 14:57:53 +02:00
Storm
e3663e1327 feat: implemented receiving video image from robot
The functionality is implemented in main.py in the functions start_video_rcv and video_rcv_loop.

close: N25B-171
2025-10-15 17:52:59 +02:00
Twirre Meulenbelt
df985a8cbc fix: log speech commands even when Pepper SDK is not connected
Previously, the `_handle_speech` function had an early return when no Pepper session was available, causing incoming messages not to get logged. Now messages are logged even when there is no session with the Pepper SDK.

ref: N25B-168
2025-10-15 14:58:31 +02:00
Twirre Meulenbelt
ff6abbfea1 feat: implement actuation receiver
The ActuationReceiver connects to the Pepper robot using the Qi library. The endpoint is automatically negotiated.

ref: N25B-168
2025-10-13 22:08:43 +02:00
Twirre Meulenbelt
c6916470e9 feat: implement negotiation
By implementing SocketBase and adding the socket to the state, the negotiation will automatically give the right endpoints.

ref: N25B-168
2025-10-13 22:06:27 +02:00
Twirre Meulenbelt
e9c6b918e0 refactor: rename EndpointBase to SocketBase
Because 'endpoint' is also used in the messages, the name 'socket' is more descriptive.

ref: N25B-168
2025-10-09 16:24:31 +02:00
Twirre Meulenbelt
23805812d5 feat: abstract base classes for endpoints
Introduces EndpointBase and ReceiverBase abstract base classes. Implements a ReceiverBase with the MainReceiver.

ref: N25B-168
2025-10-09 16:04:18 +02:00