Primary Git Repository for the Zephyr Project. Zephyr is a new generation, scalable, optimized, secure RTOS for multiple hardware architectures.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

39 lines
742 B

/*
* Copyright (c) 2024 DNDG srl
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef __ARDUINO_OPTA_BOARD_H
#define __ARDUINO_OPTA_BOARD_H
#include <stdint.h>
#define OPTA_OTP_MAGIC 0xB5
#define OPTA_SERIAL_NUMBER_SIZE 24
struct __packed opta_board_info {
uint8_t magic;
uint8_t version;
union {
uint16_t board_functionalities;
struct {
uint8_t wifi: 1;
uint8_t rs485: 1;
uint8_t ethernet: 1;
} _board_functionalities_bits;
};
uint16_t revision;
uint8_t external_flash_size;
uint16_t vid;
uint16_t pid;
uint8_t mac_address[6];
uint8_t mac_address_wifi[6];
};
const struct opta_board_info *const opta_get_board_info(void);
const char *const opta_get_serial_number(void);
#endif /* __ARDUINO_OPTA_BOARD_H */