Bernd Gottschlag
9cc2488996
Put send functions into a separate file
5 years ago
Bernd Gottschlag
4f83ec8bef
Add handling of the salt
On start-up the sensor sends a Get_Salt-message to the base station. The
base station responds and sends the salt, which the sensor uses from
there on.
5 years ago
Bernd Gottschlag
b31efd8359
Fix decryption function
5 years ago
Bernd Gottschlag
08546c2e36
Re-enable dynamic packet length
The nrf24l01 used on the boards is probably a counterfeit chip. It
cannot acknowledge received packets (probably a bit flip of the NO_ACK
bit described here:
https://ncrmnt.org/2015/03/13/how-do-i-cost-optimize-nrf24l01/ ) if the
dynamic packet length is disabled.
5 years ago
Bernd Gottschlag
fe5cd5fc86
Add delay after setting the pull ups for pin programming
Without it the bits are sometimes read incorrectly.
5 years ago
Bernd Gottschlag
9694fa3913
Fix the rx0 address
The address was set for the wrong address and thus the module could not
receive acks from the base station
5 years ago
Bernd Gottschlag
f78e2f65c6
Disable the dynamic packet length
The packet length is now fixed to 32 bytes.
5 years ago
Bernd Gottschlag
608a6ee253
Fix generation of the salt
5 years ago
Bernd Gottschlag
05696f7e74
Fix decryption bug
5 years ago
Bernd Gottschlag
1381cb6634
Add encryption for the sent packet
5 years ago
Bernd Gottschlag
3a21aef881
Rework the makefile and optimize the code for flash space
5 years ago
Bernd Gottschlag
8a49c011c9
Update packet protocoll
5 years ago
Bernd Gottschlag
58a48e5230
Fix order of the element count and packet type bit field
5 years ago
Bernd Gottschlag
e435620c91
Add a new packet format with the calculation of the CRC
5 years ago
Bernd Gottschlag
c86399b66e
Add the calculation of a crc
The algorith used is for the CRC-16-CCITT, also known as CRC-KERMIT.
5 years ago
Bernd Gottschlag
30fe01bb9e
Generate an ID according to the dip switches
The ID is used as the last byte of the RX address. It is also sent as a
part of the data packet to allow assigning the sending station to a
packet.
5 years ago
Bernd Gottschlag
3dcfae6196
Change the way the TX and RX addresses are written to the nrf24l01
5 years ago
Bernd Gottschlag
fa580c8af7
Add ToDos to the schematic
Several issues were found after receiving the PCBs that should be
rectified for the next version.
5 years ago
Bernd Gottschlag
e7bfca4363
Use the IRQ signal from the nrf24l01 instead of polling the status
This is done to avoid transmission erros as described in
https://forum.mysensors.org/topic/10452/nrf24l01-communication-failure-root-cause-and-solution
5 years ago
Bernd Gottschlag
f7bfdf101c
Add definitions of the IRQ pin to the nrf24l01
5 years ago
Bernd Gottschlag
1dd0f89149
Fix pin definitions of the interface to the nrf24l01
5 years ago
Bernd Gottschlag
011303042b
Remove a variable that caused a compiler warning
5 years ago
Bernd Gottschlag
f1b0ebf618
Move SPI initialization and pin definitions to spi.c
5 years ago
Bernd Gottschlag
204ff8d220
Add power save mode and send messages every 7.5s
5 years ago
Bernd Gottschlag
0c03c24fcd
Change the MCU to the Atmega88
The pin definitions are updated and the uart debug interface is removed
as it is not present on the actual board.
5 years ago
Bernd Gottschlag
ddb5b0426e
Send the data from the BME280 with the NRF24L01
5 years ago
Bernd Gottschlag
01dff7cfd3
Use spi functions
5 years ago
Bernd Gottschlag
93fd7841a9
Use spi functions
5 years ago
Bernd Gottschlag
9d1b611356
Use dedicated function to read the status register when transmitting
5 years ago
Bernd Gottschlag
fc26a37348
Set the transmission retries and time-out duration to each maximum
5 years ago
Bernd Gottschlag
b9cfc34e94
Flush TX FIFO after an unsuccessful transmission
5 years ago
Bernd Gottschlag
45f19e8c43
Fix register struct definitions
5 years ago
Bernd Gottschlag
5ee6bbbf1a
Add SPI interface functions
5 years ago
Bernd Gottschlag
7f1da0221c
Update .gitignore
5 years ago
Bernd Gottschlag
e5ad15dbfa
Add reading from the BME280 using the official API
Currently the data values are written to the debug output.
5 years ago
Bernd Gottschlag
780cedcbc4
Fix order of the bit fields of the register definitions
5 years ago
Bernd Gottschlag
278f7f23fe
WIP: use register definitions to access them
5 years ago
Bernd Gottschlag
b487ab67f6
Add nRF24L01 register definitions
5 years ago
Bernd Gottschlag
33e1d5e700
WIP tidy up the NRF24L01 code
5 years ago
Bernd Gottschlag
347211065c
Add prototyping code for sending a dummy message with the nrf24l01
The firmware is developed using an aduino micro pro with an atmega32u4
as the hardware for the weather station is not ready yet.
5 years ago
Bernd Gottschlag
daf929f3d2
Add digikey link for a part
5 years ago
Bernd Gottschlag
cab19c7994
Fix kicad library paths
5 years ago
Bernd Gottschlag
086986e6b5
Rename schematics folder to match the structure of the base station
5 years ago
Bernd Gottschlag
80e31fe6bc
Move the schematics to seperate folder
5 years ago
Bernd Gottschlag
443b4a39dd
Fix spelling of a symbol field
5 years ago
Bernd Gottschlag
bd4eb8047e
Add correct ESD diode
5 years ago
Bernd Gottschlag
b0ca0c2284
Exchange the ESD diode for one with the correct package
5 years ago
Bernd Gottschlag
222278a85e
Fix location of markings
5 years ago
Bernd Gottschlag
efbb38a9b4
Add a LED for debugging and fix some errors
5 years ago
Bernd Gottschlag
81f222b526
Add the dip switch to the PCB
5 years ago