Skip to content

Latest commit

 

History

History
468 lines (373 loc) · 6.74 KB

File metadata and controls

468 lines (373 loc) · 6.74 KB

REST API

The REST API is available at http://chipselect.org/rest/<ressource>;

Modes

The GET mode is available on all resources for everybody. All other modes(POST, PUT, DELETE) are only available to logged in users. The DELETE mode is only available to users that have the delete role.

Example

this python script works and shows the data recorded for the RP2040.

#!/usr/bin/python3
# -*- coding: utf-8 -*-

import requests

url = 'https://chipselect.org/rest/'

if __name__ == '__main__':
    params = dict(
        REQUEST_METHOD='GET',
        name='RP2040'
    )

    restUrl = url + 'microcontroller'

    resp = requests.post(url=restUrl, data=params)
    print('Response: Status code ' + str(resp.status_code))
    print('Request text: ' + str(resp.text))
    if 200 == resp.status_code:
        print('now parsing reply...')
        data = resp.json()
        print(str(data))
    print('Done')

Resources are

address_block

modes

GET, POST, PUT, DELETE

filter

per_id

example response
[
    {
        "id": 13,
        "address_offset": "0x0",
        "size": "0x1000",
        "mem_usage": "registers",
        "protection": "n"
    }
]

architecture

modes

GET, POST, PUT, DELETE

filter

id, name, svd_name

example response
[
    {
        "id": 42,
        "name": "ARM Cortex-M4",
        "alternative": 0,
        "svd_name": "CM4",
        "revision": "r1p0",
        "endian": "little",
        "hasMPU": 0,
        "hasFPU": 0,
        "interrupt_prio_bits": 3,
        "ARM_Vendor_systick": 0
    }
]

enumeration_element

modes

GET, POST, PUT, DELETE

filter

field_id

example response
[
    {
        "id": 96,
        "name": "B_0x0",
        "description": "No ADC stop conversion command ongoing",
        "value": "0x0",
        "isDefault": 0
    },
    {
        "id": 97,
        "name": "B_0x1",
        "description": "Write 1 to stop the ADC. Read 1 means that an ADSTP command is in progress.",
        "value": "0x1",
        "isDefault": 0
    }
]

field

modes

GET, POST, PUT, DELETE

filter

reg_id

example response
[
    {
        "id": 18931389,
        "name": "SPEED",
        "description": "Speed Status",
        "bit_offset": 2,
        "size_bit": 2,
        "access": "read-only",
        "modified_write_values": null,
        "read_action": null
        "is_Enum": null
         "enum_name": null
         "enum_usage_right": null
    },
    {
        "id": 18931390,
        "name": "LINESTATE",
        "description": "USB Line State Status",
        "bit_offset": 6,
        "size_bit": 2,
        "access": "read-only",
        "modified_write_values": null,
        "read_action": null
        "is_Enum": null
         "enum_name": null
         "enum_usage_right": null
    }
]

flash_bank

modes

GET, POST, PUT, DELETE

filter

dev_id

example response
[
    {
        "id": 5179,
        "start_address": "0x8000000",
        "size": "0x10000"
    }
]

interrupt

modes

GET, POST, PUT, DELETE

filter

per_id, per_in_id

example response
[
    {
        "id": 6684,
        "name": "UART0_IRQ",
        "description": "",
        "number": 20
    }
]

market_state

modes

GET, POST, PUT, DELETE

filter

id, name

example response
[
    {
        "id": 6,
        "name": "Active"
    }
]

microcontroller

modes

GET, POST, PUT, DELETE

filter

id, name, limit, left_off_id

example response
[
    {
        "id": 4076,
        "name": "STM32F407",
        "CPU_clock_max_MHz": null,
        "Flash_size_kB": null,
        "RAM_size_kB": 0,
        "Supply_Voltage_min_V": null,
        "Supply_Voltage_max_V": null,
        "Operating_Temperature_min_degC": null,
        "Operating_Temperature_max_degC": null,
        "svd_id": null,
        "Addressable_unit_bit": 8,
        "bus_width_bit": 32,
        "description": null,
        "architecture_id": 42,
        "market_state_id": null,
        "package_id": null,
        "vendor_id": 1,
        "RAM_size_byte": null,
        "RAM_start_address": null
    }
]

package

modes

GET, POST, PUT, DELETE

filter

id, name

example response
[
    {
        "id": 30,
        "name": "WLCSP 25L DIE 460 P 0.4 MM"
    }
]

peripheral_instance

modes

GET, POST, PUT, DELETE

filter

dev_id

example response
 [
    {
        "id": 32695,
        "name": "XIP_CTRL",
        "description": "QSPI flash execute-in-place block",
        "base_address": "0x14000000",
        "peripheral_id": 26060,
        "disable_Condition": "",
        "dev_id": 4717,
        "per_in_id": 32695
    },
    {
        "id": 32729,
        "name": "PIO1",
        "description": "Programmable IO block",
        "base_address": "0x50300000",
        "peripheral_id": 26087,
        "disable_Condition": "",
        "dev_id": 4717,
        "per_in_id": 32729
    }
 ]

peripheral

modes

GET, POST, PUT, DELETE

filter

id, group_name

example response
[
    {
        "id": 421,
        "group_name": "ADC"
    }
]

register

modes

GET, POST, PUT, DELETE

filter

per_id

example response
[
    {
        "id": 976782,
        "name": "CLEAR",
        "display_name": null,
        "description": "Clear",
        "address_offset": "0x8",
        "size": 8,
        "access": "write-only",
        "reset_value": "0x0",
        "alternate_register": null,
        "reset_mask": "0xFFFFFFFF",
        "read_action": null,
        "modified_write_values": null,
        "data_type": null,
        "alternate_group": null
    },
    {
        "id": 976789,
        "name": "STATUS",
        "display_name": null,
        "description": "Status",
        "address_offset": "0x7",
        "size": 8,
        "access": "read-only",
        "reset_value": "0x0",
        "alternate_register": null,
        "reset_mask": "0xFFFFFFFF",
        "read_action": null,
        "modified_write_values": null,
        "data_type": null,
        "alternate_group": null
    }
]

vendor

modes

GET, POST, PUT, DELETE

filter

id, name

example response
[
    {
        "id": 1,
        "name": "STMicroelectronics",
        "url": "https://st.com/",
        "alternative": 0
    }
]