Skip to main content

A utility for generating Daisy board support files from JSON descriptions

Project description

json2daisy

Utility for converting JSON board definitions into valid, libDaisy compatible C++ board support files for the Daisy platform.

Install

Note that this module is not intended as a standalone application at this time. You should not need to install it manually for most use cases.

You can install this package with pip:

python -m pip install json2daisy

If you'd like to build the package and install locally, you'll need the build package:

python -m pip install build

Once that's set up, navigate to the root directory of json2daisy and run:

python3 -m build
python3 -m pip install dist/json2daisy-0.2.0.tar.gz

If pip complains about a missing file, make sure you've entered the correct version number in the archive path.

Usage

This package can be used as a standalone program on the command line or as an imported module.

On the command line:

python -m json2daisy path/to/board_description.json

As a module:

import json2daisy

# If you want to generate from an Electrosmith board:
header_string, board_name, component_info, component_aliases = json2daisy.generate_header_from_board('field')
# If you're supplying custom JSON
header_string, board_name, component_info, component_aliases = json2daisy.generate_header_from_file('path/to/board_description.json')

As you can see, the two functions above will return a number of supplementary objects in addition to the header string. These provide detailed information for how to interact with the generated header. The component_info dictionary provides getters and setters for I/O, and the component_aliases dictionary provides valid aliases for everything in component_info.

For examples of how to structure the board description, take a look at the JSON files in src/json2daisy/resources.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

json2daisy-0.4.2.tar.gz (21.0 kB view hashes)

Uploaded Source

Built Distribution

json2daisy-0.4.2-py3-none-any.whl (23.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page