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

Major rework and update of SDK bindings #62

Open
wants to merge 297 commits into
base: master
Choose a base branch
from

Conversation

daniel-j
Copy link

@daniel-j daniel-j commented Mar 6, 2023

Features

  • Nimble integration. Use nimble tasks to configure, build. piconim has gained some features as well, and can be used for more advanced building
  • Pico W support. Wifi and Bluetooth bindings using Futhark
  • Updated and added new bindings to support Pico SDK v1.5.1, striving to be pretty much 1:1, with some Nim goodness added here and there (shorter method names, distinct types, ranges, enums...)
  • More examples, translated from C to Nim from the pico-examples repository
  • More robust CMake-based configure and build process to work as smoothly as possible with Nim
  • Code examples and the SDK bindings are compiled when running nimble test and nimble examples.
  • Proof-of-concept hand-crafted Cyw43 and (partial) Lwip bindings, which I made before adding Futhark. Enough to do HTTPS requests on the Pico W.
  • Change license to match Pico SDK's (BSD-3-Clause)
  • Can choose board type when running piconim init --board pico_w projectName

Future improvements

  • Tinyusb. I haven't touched it at all, so probably needs work
  • Update all examples to the new codebase
  • Test the examples on real hardware and make sure they work
  • Generate html documentation and host it somewhere. Some doc-comments needs updating to RST first
  • Github workflows for running the tests on the different platforms
  • Bluetooth tests and examples
  • FreeRTOS support when using Wifi. Would be nice to use the Nim stdlib to do http requests

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants