-
Notifications
You must be signed in to change notification settings - Fork 0
/
edas.slcp
150 lines (149 loc) · 6.51 KB
/
edas.slcp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
# Silicon Labs Project Configuration Tools: slcp, v0, Component selection file.
project_name: edas
label: edas
description: |-
This application demonstrates the simplest exchange of transmit and receive operation between two nodes. Both nodes are capable of sending and receiving messages. On the WSTK, any button press (PB0/PB1) will send a message. LED0 will toggle on message send and LED1 will toggle on message receive. CLI can also be used for sending and showing received messages. To send enter 'tx' or 'send'. By default the received packets will be printed out in terminal, to enable or disable print enter 'rx 1' ('receive 1') or 'rx 0' ('receive 0') in terminal. With one click this baremetal sample app can be run on an OS, currently MicriumOS and FreeRTOS is supported.
NOTE: Due to the higher current consumption of the continuous radio usage (especially in Rx Mode), it is not recommended to power the boards from a coin cell. Instead, an USB power bank can be used if portability is needed.
category: RAIL Examples
filter:
- name: Device Type
value: [SoC]
- name: Project Difficulty
value: [Beginner]
- name: Wireless Technology
value: [RAIL]
package: Flex
quality: production
readme:
- {path: readme.md}
source:
- {path: main.c}
- {path: app_init.c}
- {path: app_process.c}
- {path: app_cli.c}
include:
- path: ''
file_list:
- {path: app_init.h}
- {path: app_process.h}
sdk: {id: gecko_sdk, version: 4.1.3}
toolchain_settings:
- {value: debug, option: optimize}
component:
- {id: power_manager}
- {id: app_log}
- {id: radio_config_simple_rail_singlephy}
- {id: iostream_retarget_stdio}
- {id: sl_system}
- instance: [btn0, btn1]
id: simple_button
- {id: restrictions_profile_wisun_fan_1_0}
- instance: [example]
id: cli
- {id: brd4166a}
- {id: mpu}
- {id: si70xx_driver}
- instance: [inst0]
id: rail_util_init
- {id: restrictions_profile_sun}
- {id: EFR32MG12P332F1024GL125}
- {id: sl_flex_rail_packet_asm}
- {id: iostream_recommended_stream}
- {id: restrictions_profile_long_range}
- instance: [led0, led1]
id: simple_led
- {id: printf}
- {id: restrictions_profile_connect}
- {id: sl_simple_rail_stub}
- {id: device_init}
- {id: sl_flex_rail_sleep}
- {id: restrictions_profile_base}
- {id: restrictions_profile_wisun_han}
- {id: app_assert}
- {id: rail_util_recommended}
- {id: restrictions_profile_wisun_ofdm}
define:
- condition: [hardware_board_has_eff]
name: HARDWARE_BOARD_HAS_EFF
template_contribution:
- name: cli_command
priority: 0
value: {name: info, handler: cli_info, help: Unique ID of the MCU}
- name: cli_command
priority: 0
value: {name: send, handler: cli_send_packet, help: Send a packet}
- name: cli_command
priority: 0
value:
name: receive
handler: cli_receive_packet
help: Turn ON/OFF received message forwarding on CLI
argument:
- {type: uint8, help: ON/OFF}
requires:
- {name: a_radio_config}
- condition: [kernel]
name: sl_simple_rail_os
- condition: [hardware_board_has_eff]
name: rail_util_eff
- condition: [device_family_fgm23]
name: radio_config_singlephy_device_family_fgm23
configuration:
- {name: SL_STACK_SIZE, value: '2048'}
- {name: SL_HEAP_SIZE, value: '2048'}
- {name: configMINIMAL_STACK_SIZE, value: '1024'}
- {name: CPU_CFG_TS_32_EN, value: '1'}
- {name: OS_CFG_DBG_EN, value: '1'}
- {name: OS_CFG_TS_EN, value: '1'}
- {name: OS_CFG_SCHED_ROUND_ROBIN_EN, value: '1'}
- {name: OS_CFG_STAT_TASK_EN, value: '1'}
- {name: OS_CFG_TASK_PROFILE_EN, value: '1'}
- {name: SL_RAIL_UTIL_INIT_INIT_COMPLETE_CALLBACK_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_RADIO_CONFIG_SUPPORT_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_PROTOCOLS_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_PROTOCOL_INST0_DEFAULT, value: SL_RAIL_UTIL_PROTOCOL_PROPRIETARY}
- {name: SL_RAIL_UTIL_INIT_CALIBRATIONS_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_CALIBRATION_TEMPERATURE_NOTIFY_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_CALIBRATION_ONETIME_NOTIFY_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_TRANSITIONS_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_TRANSITION_INST0_TX_SUCCESS, value: RAIL_RF_STATE_RX}
- {name: SL_RAIL_UTIL_INIT_TRANSITION_INST0_TX_ERROR, value: RAIL_RF_STATE_RX}
- {name: SL_RAIL_UTIL_INIT_TRANSITION_INST0_RX_SUCCESS, value: RAIL_RF_STATE_RX}
- {name: SL_RAIL_UTIL_INIT_TRANSITION_INST0_RX_ERROR, value: RAIL_RF_STATE_RX}
- {name: SL_RAIL_UTIL_INIT_DATA_FORMATS_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENTS_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_RX_PREAMBLE_LOST_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_RX_PACKET_RECEIVED_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_RX_ADDRESS_FILTERED_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_RX_FRAME_ERROR_INST0_ENABLE, value: '0'}
- {name: SL_RAIL_UTIL_INIT_EVENT_RX_PACKET_ABORTED_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_TX_PACKET_SENT_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_TX_ABORTED_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_TX_BLOCKED_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_RX_FIFO_OVERFLOW_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_TX_UNDERFLOW_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_TX_CHANNEL_BUSY_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_RX_TX_SCHEDULED_RX_TX_STARTED_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_RX_SCHEDULED_RX_MISSED_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_TX_SCHEDULED_TX_MISSED_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_CONFIG_UNSCHEDULED_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_CONFIG_SCHEDULED_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_SCHEDULER_STATUS_INST0_ENABLE, value: '1'}
- {name: SL_RAIL_UTIL_INIT_EVENT_CAL_NEEDED_INST0_ENABLE, value: '1'}
- condition: [hardware_board_has_eff]
name: SL_RAIL_UTIL_PA_SELECTION_SUBGHZ
value: RAIL_TX_POWER_MODE_SUBGIG_EFF_25DBM
- condition: [hardware_board_has_eff]
name: SL_RAIL_UTIL_PA_CALIBRATION_ENABLE
value: '1'
- {name: SL_BOARD_ENABLE_VCOM, value: '1'}
- {name: SL_CLI_LOCAL_ECHO, value: (1)}
- {name: SL_IOSTREAM_USART_VCOM_CONVERT_BY_DEFAULT_LF_TO_CRLF, value: (1)}
- {name: SL_IOSTREAM_USART_VCOM_FLOW_CONTROL_TYPE, value: usartHwFlowControlNone}
- {name: SL_IOSTREAM_EUSART_VCOM_CONVERT_BY_DEFAULT_LF_TO_CRLF, value: (1)}
- {name: SL_IOSTREAM_EUSART_VCOM_FLOW_CONTROL_TYPE, value: eusartHwFlowControlNone}
- {name: APP_LOG_PREFIX_ENABLE, value: '0'}
ui_hints:
highlight:
- {path: readme.md, focus: true}
- {path: config/rail/radio_settings.radioconf}