-
Notifications
You must be signed in to change notification settings - Fork 12
Expand file tree
/
Copy pathrepl.py
More file actions
54 lines (47 loc) · 1.36 KB
/
repl.py
File metadata and controls
54 lines (47 loc) · 1.36 KB
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
import board
import digitalio
from busio import SPI
from lib.ground_station.ground_station import GroundStation
from lib.pysquared.cdh import CommandDataHandler
from lib.pysquared.config.config import Config
from lib.pysquared.config.jokes_config import JokesConfig
from lib.pysquared.hardware.busio import _spi_init
from lib.pysquared.hardware.digitalio import initialize_pin
from lib.pysquared.hardware.radio.manager.rfm9x import RFM9xManager
from lib.pysquared.hardware.radio.packetizer.packet_manager import PacketManager
from lib.pysquared.logger import Logger
from lib.pysquared.nvm.counter import Counter
logger: Logger = Logger(
error_counter=Counter(1),
colorized=False,
)
config: Config = Config("config.json")
jokes_config: JokesConfig = JokesConfig("jokes.json")
spi0: SPI = _spi_init(
logger,
board.SPI0_SCK,
board.SPI0_MOSI,
board.SPI0_MISO,
)
radio = RFM9xManager(
logger,
config.radio,
spi0,
initialize_pin(logger, board.SPI0_CS0, digitalio.Direction.OUTPUT, True),
initialize_pin(logger, board.RF1_RST, digitalio.Direction.OUTPUT, True),
)
packet_manager = PacketManager(
logger,
radio,
config.radio.license,
Counter(2),
0.2,
)
cdh = CommandDataHandler(logger, config, packet_manager, jokes_config)
ground_station = GroundStation(
logger,
config,
packet_manager,
cdh,
)
ground_station.run()