Comments (7)
i think 'blinka' is a fine project name because its overall neutral, and doesn't mean/stand for anything. is that your q?
from adafruit_blinka.
OK, so any packages specific to the port will be rooted at blinka.x.y.
It would make sense to migrate stuff like https://github.com/cefn/Adafruit_Micropython_Blinka/blob/master/python/board/feather_huzzah.py under blinka/feather_huzzah/board/init.py so that all feather_huzzah-specific stuff can be kept in one (removable/includable) place.
from adafruit_blinka.
OK :) whatever makes you feel good about the structure! esp/pyb are fairly fast chips, so they can deal with layers of abstraction
from adafruit_blinka.
Having a top level blinka
package won't affect the ability to import board
directly, right? If we're forced to have a top level I'd be tempted to introduce a circuitpython
package and having everything move under it. Our existing top levels shouldn't conflict with anything now though so I don't think its required.
I want to ensure that our imports we describe in learn guides work as documented after the blinka library is installed.
from adafruit_blinka.
Main intent is consistency esp. with other adafruit projects so I am not confusing other adopters/contributors, and future maintainability of bundles targeting different platforms.
In conclusion based on the cookiecutter approach and given the naming choice I should have a python path rooted at /blinka so there will be a /blinka/blinka/init.py to place wrapper-specific stuff imported as blinka, and /blinka/digitalio.py would be imported as digitalio
Then all stuff for a specific board would be in the repo at /blinka/blinka/board/NAME/*.py, imported at blinka.board.name. This should be a package not a module so that hardware-specific elements can be selectively included to save on RAM/flash storage (e.g. if you only trigger the platform-introspection logic of digitalio, then you won't have loaded all the platform-specific elements for bitbangio).
Alongside /blinka, I can have separate files and folders for documentation, integration testing and other stuff which isn't intended to be part of the distribution ending up on boards.
Thanks. It's pretty useful to get it right now, so that there isn't a lot of rework later on. Also means I can confidently raise a PR soon without corrupting the main repo with wrong-headed paths.
from adafruit_blinka.
@tannewt the blinka package is just a place to put stuff which is imported by the blinka-specific implementations of e.g. board or digitalio which indeed should be addressable exactly as if they were built-in packages on a board running a CircuitPython image. Does that answer your q?
from adafruit_blinka.
Yup! Works for me. Thanks!
from adafruit_blinka.
Related Issues (20)
- Adafruit_CircuitPython_MCP2515 not working correctly
- Raspberry Pi 5 PWMOut needs updating to libgpiod HOT 1
- Requesting support for Geniatech xpi-3566-zero
- Is the Rock 4SE not supported? HOT 4
- UnexpectedMakers ProS3 HOT 3
- Issue with Adafruit-PlatformDetect on Windows
- SSD1306 is not working on a Raspberry Pi 5 HOT 7
- CE1 busy on Pi 5 HOT 1
- Banana Pi M2 Berry
- Adafruit-PlatformDetect version 3.60.0 was unable to identify the board HOT 13
- Please support RP2040-LCD-1.28 HOT 1
- adafruit HOT 2
- KB 2040 board HOT 2
- Open drain output on a Raspberry Pi requires value setting of an input pin HOT 2
- GPIO Access Support for linux (kernel > 4.7) HOT 7
- These are very inexpensive and I think would be good boards to support -- LuckyFox Pico Mini HOT 1
- Jetson Nano resulting in AttributeError: module 'adafruit_platformdetect.constants.chips' has no attribute 'JH71x0' HOT 30
- Use HW PWM for pins that support it
- Please support for orange pi win plus!!! HOT 1
- Support for Orange Pi Zero 2W HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from adafruit_blinka.