|
3 | 3 | # Created By: Michael Pham |
4 | 4 |
|
5 | 5 | """ |
6 | | -Built for the PySquared FC Board |
7 | | -Version: 2.0.0 |
8 | | -Published: Nov 19, 2024 |
| 6 | +Built for the PySquared V5a FC Board |
| 7 | +Version: X.X.X |
| 8 | +Published: |
9 | 9 | """ |
10 | 10 |
|
11 | 11 | import gc |
| 12 | +import os |
12 | 13 | import time |
13 | 14 |
|
| 15 | +import board |
14 | 16 | import digitalio |
15 | 17 | import microcontroller |
16 | 18 |
|
17 | | -try: |
18 | | - # from board_definitions import proveskit_rp2040_v4 as board |
19 | | - raise ImportError |
20 | | -except ImportError: |
21 | | - import board |
22 | | - |
23 | | -import os |
24 | | - |
25 | 19 | import lib.pysquared.functions as functions |
26 | 20 | import lib.pysquared.nvm.register as register |
27 | 21 | from lib.pysquared.cdh import CommandDataHandler |
|
30 | 24 | from lib.pysquared.hardware.digitalio import initialize_pin |
31 | 25 | from lib.pysquared.hardware.imu.manager.lsm6dsox import LSM6DSOXManager |
32 | 26 | from lib.pysquared.hardware.magnetometer.manager.lis2mdl import LIS2MDLManager |
33 | | -from lib.pysquared.hardware.radio.manager.sx126x import SX126xManager |
| 27 | +from lib.pysquared.hardware.radio.manager.sx1280 import SX1280Manager |
34 | 28 | from lib.pysquared.logger import Logger |
35 | 29 | from lib.pysquared.nvm.counter import Counter |
36 | 30 | from lib.pysquared.nvm.flag import Flag |
|
43 | 37 | rtc = MicrocontrollerManager() |
44 | 38 |
|
45 | 39 | logger: Logger = Logger( |
46 | | - error_counter=Counter(index=register.ERRORCNT, datastore=microcontroller.nvm), |
| 40 | + error_counter=Counter(index=register.ERRORCNT), |
47 | 41 | colorized=False, |
48 | 42 | ) |
49 | 43 |
|
|
68 | 62 |
|
69 | 63 | # TODO(nateinaction): fix spi init |
70 | 64 | spi0 = _spi_init( |
| 65 | + logger, |
| 66 | + board.SPI0_SCK, |
| 67 | + board.SPI0_MOSI, |
| 68 | + board.SPI0_MISO, |
| 69 | + ) |
| 70 | + |
| 71 | + spi1 = _spi_init( |
71 | 72 | logger, |
72 | 73 | board.SPI1_SCK, |
73 | 74 | board.SPI1_MOSI, |
74 | 75 | board.SPI1_MISO, |
75 | 76 | ) |
76 | 77 |
|
77 | | - radio = SX126xManager( |
| 78 | + use_fsk_flag = Flag(index=register.FLAG, bit_index=7) |
| 79 | + |
| 80 | + radio = SX1280Manager( |
78 | 81 | logger, |
79 | 82 | config.radio, |
80 | | - Flag(index=register.FLAG, bit_index=7, datastore=microcontroller.nvm), |
81 | | - spi0, |
82 | | - initialize_pin(logger, board.SPI0_CS0, digitalio.Direction.OUTPUT, True), |
83 | | - board.RF2_IO0, |
84 | | - initialize_pin(logger, board.RF1_RST, digitalio.Direction.OUTPUT, True), |
85 | | - board.RF2_IO4, |
| 83 | + use_fsk_flag, |
| 84 | + spi1, |
| 85 | + initialize_pin(logger, board.SPI1_CS0, digitalio.Direction.OUTPUT, True), |
| 86 | + initialize_pin(logger, board.RF2_RST, digitalio.Direction.OUTPUT, True), |
| 87 | + initialize_pin(logger, board.RF2_IO0, digitalio.Direction.OUTPUT, True), |
| 88 | + 2.4, |
| 89 | + initialize_pin(logger, board.RF2_TX_EN, digitalio.Direction.OUTPUT, True), |
| 90 | + initialize_pin(logger, board.RF2_RX_EN, digitalio.Direction.OUTPUT, True), |
86 | 91 | ) |
87 | 92 |
|
88 | 93 | i2c1 = initialize_i2c_bus( |
89 | 94 | logger, |
90 | | - board.I2C1_SCL, |
91 | | - board.I2C1_SDA, |
| 95 | + board.SCL1, |
| 96 | + board.SDA1, |
92 | 97 | 100000, |
93 | 98 | ) |
94 | 99 |
|
95 | | - magnetometer = LIS2MDLManager(logger, i2c1) |
96 | | - |
97 | | - imu = LSM6DSOXManager(logger, i2c1, 0x6B) |
98 | | - |
99 | 100 | c = Satellite(logger, config) |
100 | 101 |
|
101 | 102 | sleep_helper = SleepHelper(c, logger, watchdog) |
102 | 103 |
|
| 104 | + # radio = RFM9xManager( |
| 105 | + # logger, |
| 106 | + # config.radio, |
| 107 | + # Flag(index=register.FLAG, bit_index=7), |
| 108 | + # spi0, |
| 109 | + # initialize_pin(logger, board.SPI0_CS0, digitalio.Direction.OUTPUT, True), |
| 110 | + # initialize_pin(logger, board.RF1_RST, digitalio.Direction.OUTPUT, True), |
| 111 | + # ) |
| 112 | + |
| 113 | + magnetometer = LIS2MDLManager(logger, i2c1) |
| 114 | + |
| 115 | + imu = LSM6DSOXManager(logger, i2c1, 0x6B) |
| 116 | + |
103 | 117 | cdh = CommandDataHandler(config, logger, radio) |
104 | 118 |
|
105 | 119 | f = functions.functions( |
@@ -156,9 +170,7 @@ def main(): |
156 | 170 |
|
157 | 171 | f.listen_loiter() |
158 | 172 |
|
159 | | - f.all_face_data() |
160 | 173 | watchdog.pet() |
161 | | - f.send_face() |
162 | 174 |
|
163 | 175 | f.listen_loiter() |
164 | 176 |
|
|
0 commit comments