Fab Lab Rwanda · Group work

Embedded Networking and Communications

Our group exercise will exchange a meaningful message between two projects. The important record is the complete path from the sending application to the receiving application and the observed response.

Define the two projects

We will identify both endpoints, their purpose and the physical or wireless transport. The message should change a state or request data in the other project, so the result can be checked at both ends. Boards, computers or mobile devices can participate; the group task is not limited to two identical microcontrollers.

The selected interface determines the wiring, reference, signal levels, addressing and software libraries. We will draw the actual connection and verify compatibility before connecting hardware.

Message format and receive behaviour

A small protocol should define the destination, command and payload, plus a way to associate a response with a request. For example, a sequence number can make repeated or missing messages visible. This is a proposed protocol structure, not a transcript of a completed test.

Both programs must agree on framing, encoding and valid values. The receiver should validate a complete message before acting; the sender should handle a timeout or explicit error rather than assume delivery.

StageBehaviour to implementObservation
SendForm a message from a known commandSender log identifies the sequence and payload.
ReceiveParse and apply the message in the other projectReceiver log and project behaviour agree.
ReplyReturn an acknowledgement or resultSender matches it to the original request.
FailureHandle a disconnected link or invalid messageA defined error/timeout occurs without an unintended action.

Test method and interpretation

We will capture the programs running at both endpoints with a common test sequence. The record should show the sent value, received value and resulting behaviour, followed by at least one failure/recovery case. Logs need enough context to identify which project produced each line.

The downloadable sources should contain the actual send and receive code, with library versions and setup instructions. A diagram or screenshot of code alone cannot reproduce the exchange.

Relation to the plotter tools

The image-to-G-code tool currently prepares a downloadable file in the browser. It does not send messages to the plotter controller. The build interface also downloads files and previews models; it does not establish an inter-project network test.

References

All group assignments