jfjlaros / simpleRPC

Simple RPC implementation for Arduino.
MIT License
50 stars 17 forks source link

Remove the size from the Array signature. #34

Open yanxke opened 6 months ago

yanxke commented 6 months ago

Pull Request Details

Provide details about your pull request and what it adds, fixes, or changes.

Remove the size from the Array signature because the Python code can't parse this. Removing this makes it works like a Vector which can be parsed by the Python code. The API itself is ambiguous because it can't tell what should be after a starting '['

Breaking Changes

Describe what features are broken by this pull request and why, if any.

Signature on Array.

Issues Fixed

Enter the issue numbers resolved by this pull request below, if any.

None

Other Relevant Information

Provide any other important details below.

jfjlaros commented 6 months ago

This is a problem in the Python client, where working with arrays is not implemented yet. This is work in progress (for a while).

The size of the array must be communicated, otherwise the client cannot send an array because of its unknown size.

yanxke commented 6 months ago

The array size is already sent prior to sending the data as in Vector. It seems to work just fine for me right now.

jfjlaros commented 6 months ago

The problem is client side, it should know the size of the array before sending anything.

As said, this is work in progress. For now you can safely assume that Array is not implemented.

suahelen commented 4 months ago

https://github.com/csem/arduino-simple-rpc/tree/feature/support_array_t-s

here an implementation on client side that would resolve it. a small change on the mcu side would be necessary. The signature of an array should be changed to '[#]'

It is based on https://github.com/jfjlaros/arduino-simple-rpc/pull/26 that would allow np array writes.