Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pkg/wakaama: implement IPSO sensor objects in LwM2M #20652

Merged

Conversation

leandrolanzieri
Copy link
Contributor

Contribution description

This PR adds implementations for various IPSO sensor objects to LwM2M. This is (hopefully) a first step towards automatically exposing SAUL devices to LwM2M. The implemented objects are:

  • Barometer (ID 3315)
  • Current (ID 3317)
  • Humidity (ID 3304)
  • Illuminance (ID 3301)
  • Temperature (ID 3303)
  • Voltage (ID 3316)

Given that all objects share common properties and functionalities, there's a base IPSO sensor object that is used by the specific object implementations. The base implementation deals with resource access and instance allocation.

Testing procedure

All objects include documentation on their usage, you can include that code on examples/lwm2m to test.

Issues/PRs references

None

@leandrolanzieri leandrolanzieri added the Type: new feature The issue requests / The PR implemements a new feature for RIOT label May 7, 2024
@github-actions github-actions bot added Area: pkg Area: External package ports Area: Kconfig Area: Kconfig integration labels May 7, 2024
@leandrolanzieri leandrolanzieri force-pushed the dev/lwm2m/ipso_objects branch 2 times, most recently from 6eaf99e to c1713e5 Compare May 7, 2024 11:33
@Teufelchen1
Copy link
Contributor

Cool! There are some merge conflicts and static white space issues.
Is this ready for review?

@leandrolanzieri
Copy link
Contributor Author

Cool! There are some merge conflicts and static white space issues. Is this ready for review?

I fixed the conflicts and ran uncrustify on all files. Yes, this is ready for review :)

Copy link
Contributor

@Teufelchen1 Teufelchen1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Some static tests are not happy with your whitespace.

pkg/wakaama/include/objects/barometer.h Outdated Show resolved Hide resolved
pkg/wakaama/include/objects/ipso_sensor_base.h Outdated Show resolved Hide resolved
@leandrolanzieri
Copy link
Contributor Author

Hope I got all now

Copy link
Contributor

@Teufelchen1 Teufelchen1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Squash pls!

@Teufelchen1 Teufelchen1 added the CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR label Jun 5, 2024
@riot-ci
Copy link

riot-ci commented Jun 5, 2024

Murdock results

✔️ PASSED

3d96491 pkg/wakaama/objects: add Voltmeter

Success Failures Total Runtime
10160 0 10161 15m:07s

Artifacts

@leandrolanzieri leandrolanzieri added this pull request to the merge queue Jun 7, 2024
Merged via the queue into RIOT-OS:master with commit 7a2b08f Jun 7, 2024
26 checks passed
@leandrolanzieri
Copy link
Contributor Author

Thanks for the review!

@leandrolanzieri leandrolanzieri deleted the dev/lwm2m/ipso_objects branch June 7, 2024 08:55
@mguetschow mguetschow added this to the Release 2024.07 milestone Jun 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: Kconfig Area: Kconfig integration Area: pkg Area: External package ports CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR Type: new feature The issue requests / The PR implemements a new feature for RIOT
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants