49#define CS_USB_DONGLE 200
228 struct __attribute__((__packed__)) {
238 struct __attribute__((__packed__)) {
ButtonIndex
Definition: cs_Boards.h:104
@ BUTTON0
Definition: cs_Boards.h:105
@ BUTTON_COUNT
Definition: cs_Boards.h:109
@ BUTTON1
Definition: cs_Boards.h:106
@ BUTTON2
Definition: cs_Boards.h:107
@ BUTTON3
Definition: cs_Boards.h:108
GpioIndex
Definition: cs_Boards.h:112
@ GPIO_INDEX1
Definition: cs_Boards.h:114
@ GPIO_INDEX6
Definition: cs_Boards.h:119
@ GPIO_INDEX9
Definition: cs_Boards.h:122
@ GPIO_INDEX5
Definition: cs_Boards.h:118
@ GPIO_INDEX2
Definition: cs_Boards.h:115
@ GPIO_INDEX7
Definition: cs_Boards.h:120
@ GPIO_INDEX0
Definition: cs_Boards.h:113
@ GPIO_INDEX_COUNT
Definition: cs_Boards.h:123
@ GPIO_INDEX3
Definition: cs_Boards.h:116
@ GPIO_INDEX4
Definition: cs_Boards.h:117
@ GPIO_INDEX8
Definition: cs_Boards.h:121
uint8_t GpioToAin(uint8_t gpio)
void init(boards_config_t *config)
initializes a board config to default values.
uint8_t GetGpioPin(uint8_t major, uint8_t minor)
uint8_t GpioToAinOnChipset(uint8_t gpio, uint8_t chipset)
Maps GPIO pins to AIN pins.
LedIndex
Definition: cs_Boards.h:126
@ LED_GREEN
Definition: cs_Boards.h:133
@ LED_COUNT
Definition: cs_Boards.h:131
@ LED3
Definition: cs_Boards.h:130
@ LED2
Definition: cs_Boards.h:129
@ LED0
Definition: cs_Boards.h:127
@ LED_RED
Definition: cs_Boards.h:132
@ LED1
Definition: cs_Boards.h:128
cs_ret_code_t configure_board(boards_config_t *p_config)
Configure board.
cs_ret_code_t configure_board_from_uicr(const cs_uicr_data_t *uicrData, boards_config_t *config)
GainIndex
Definition: cs_Boards.h:96
@ GAIN_LOW
Definition: cs_Boards.h:97
@ GAIN_COUNT
Definition: cs_Boards.h:100
@ GAIN_MIDDLE
Definition: cs_Boards.h:98
@ GAIN_SINGLE
Definition: cs_Boards.h:101
@ GAIN_HIGH
Definition: cs_Boards.h:99
Chipset
Definition: cs_Boards.h:136
@ CHIPSET_NRF52833
Definition: cs_Boards.h:138
@ CHIPSET_NRF52840
Definition: cs_Boards.h:139
@ CHIPSET_NRF52832
Definition: cs_Boards.h:137
cs_ret_code_t configure_board_from_hardware_board(uint32_t hardwareBoard, boards_config_t *config)
uint16_t cs_ret_code_t
Definition: cs_Typedefs.h:21
Board configuration.
Definition: cs_Boards.h:169
uint8_t pinDimmer
GPIO pin to control the IGBTs.
Definition: cs_Boards.h:174
int32_t powerOffsetMilliWatt
Measured power when there is no load (mW).
Definition: cs_Boards.h:306
int8_t minTxPower
The minimum radio transmission power to be used.
Definition: cs_Boards.h:326
bool enableUart
True if the board should have UART enabled by default.
Definition: cs_Boards.h:243
uint8_t clk
Clock pin.
Definition: cs_Boards.h:232
uint8_t pinAinDimmerTemp
Analog input pin to read the dimmer temperature.
Definition: cs_Boards.h:201
uint8_t pinVoltageZeroCrossing
GPIO pin to get zero-crossing information for voltage.
Definition: cs_Boards.h:210
bool ledInverted
True if LED is off when GPIO is set high.
Definition: cs_Boards.h:250
uint32_t scanIntervalUs
Scan interval in μs.
Definition: cs_Boards.h:345
bool canTryDimmingOnBoot
True if the Crownstone can try dimming at boot, because it has an accurate enough power measurement,...
Definition: cs_Boards.h:263
uint8_t pinRelayDebug
GPIO to debug the relay: turns on when relay is turned on, and vice versa. Inverted when LEDs are inv...
Definition: cs_Boards.h:180
float pwmTempVoltageThresholdDown
Voltage of PWM thermometer at which the dimmer is cool enough again.
Definition: cs_Boards.h:332
bool dimmerOnWhenPinsFloat
True if the dimmer can be on when the pins are floating (during boot).
Definition: cs_Boards.h:269
uint32_t currentAdcRangeMilliVolt
Range in mV to be used for the current pin.
Definition: cs_Boards.h:319
uint32_t scanWindowUs
Scan window in μs.
Definition: cs_Boards.h:353
int8_t tapToToggleDefaultRssiThreshold
Default RSSI threshold, above which tap to toggle will trigger.
Definition: cs_Boards.h:358
uint8_t pinTx
GPIO pin to send UART.
Definition: cs_Boards.h:216
uint32_t hardwareBoard
The hardware board type (number).
Definition: cs_Boards.h:171
uint8_t pinAinEarth
Analog input pin to measure EARTH.
Definition: cs_Boards.h:204
bool dimmerInverted
True if the dimmer is inverted (setting gpio high turns dimmer off).
Definition: cs_Boards.h:240
bool enableLeds
True if the board has LEDs that should be enabled by default.
Definition: cs_Boards.h:247
uint8_t deviceType
Device type, e.g.
Definition: cs_Boards.h:276
bool dimmerTempInverted
True if the temperature sensor of the dimmer is inverted (NTC).
Definition: cs_Boards.h:253
bool canDimOnWarmBoot
True if the Crownstone can dim immediately after a warm boot.
Definition: cs_Boards.h:266
float pwmTempVoltageThreshold
Voltage of PWM thermometer at which the dimmer is too hot.
Definition: cs_Boards.h:329
uint8_t pinRelayOn
GPIO pin to switch the relay on.
Definition: cs_Boards.h:183
uint8_t pinRelayOff
GPIO pin to switch the relay off.
Definition: cs_Boards.h:186
bool usesNfcPins
True if the NFC pins (p0.09 and p0.10) are used as GPIO.
Definition: cs_Boards.h:256
uint8_t pinAinZeroRef
Analog input pin to read 'zero' / offset (to be used for both current and voltage measurements).
Definition: cs_Boards.h:198
bool hasAccuratePowerMeasurement
True if the Crownstone has a more accurate power measurement.
Definition: cs_Boards.h:259
uint32_t voltageAdcRangeMilliVolt
Range in mV to be used for the voltage pin.
Definition: cs_Boards.h:313
uint8_t cs
Chip select pin.
Definition: cs_Boards.h:230
uint8_t pinEnableDimmer
GPIO pin to enable the IGBT circuit.
Definition: cs_Boards.h:177
uint8_t pinRx
GPIO pin to receive UART.
Definition: cs_Boards.h:213
uint8_t pinCurrentZeroCrossing
GPIO pin to get zero-crossing information for current.
Definition: cs_Boards.h:207
Struct with all the Crownstone fields in UICR.
Definition: cs_UicrPacket.h:20