Bernd Gottschlag
1a527b5929
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
f30f7c71a9
Add delay after setting the pull ups for pin programming
Without it the bits are sometimes read incorrectly.
5 years ago
Bernd Gottschlag
0d7211d770
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
e6669484e6
Disable the dynamic packet length
The packet length is now fixed to 32 bytes.
5 years ago
Bernd Gottschlag
b10df03e01
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
Mathias Gottschlag
8f05bab10e
Implement reading values from the BME280.
5 years ago
Mathias Gottschlag
7ad34f1038
Fix disabling display power.
5 years ago
Mathias Gottschlag
3afa50a051
Rename display pins and group BME280 pins.
5 years ago
Mathias Gottschlag
da228540d8
base-station: Simplify decryption.
5 years ago
Bernd Gottschlag
ed128699b7
Implement cipher block chaining for the decryption of packets
5 years ago
Mathias Gottschlag
62a7d7210a
display: Show dummy weather station values.
5 years ago
Bernd Gottschlag
8f2658655e
Merge branch 'master' of git.gottschlag.net:bernd/smart-home
5 years ago
Bernd Gottschlag
207868cdda
Add simple decryption of the data packets
The cipher block chaining is not yet implemented
5 years ago
Mathias Gottschlag
8a20cd3318
display: More drawing code.
5 years ago
Mathias Gottschlag
86f451d51c
display: cargo update, and use tinygfx instead of embedded-epd library.
5 years ago
Bernd Gottschlag
ae3b470844
Update packet handling protocol
The packets are not yet encrypted
5 years ago
Mathias Gottschlag
0d48079851
display: Restructure the program (with multiple software tasks).
5 years ago
Mathias Gottschlag
e9f89f739f
display: Revert to simple EPD display example code.
5 years ago
Mathias Gottschlag
d3cc04db76
display: Update toolchain.
5 years ago
Mathias Gottschlag
a6b8646090
display: Fix pins/SPI and configure some default pin states.
5 years ago
Mathias Gottschlag
ea8c4889f0
display: Fix project name and add epd-waveshare dependency.
5 years ago
Bernd Gottschlag
dcd6ee4e24
Disable the MQTT connection
5 years ago
Bernd Gottschlag
65f5893bc4
Change the address of the nrf24l01 and the packet format
5 years ago
Bernd Gottschlag
a864df322d
Add further information to the README
5 years ago
Mathias Gottschlag
9089fef433
Describe the remaining protocol.
5 years ago
Mathias Gottschlag
1dde4df49d
More protocol description, enough to implement sensor reports.
5 years ago
Mathias Gottschlag
3c0b03f73d
First part of protocol documentation.
5 years ago
Bernd Gottschlag
b837785f8e
Add range checks for the received values and fix formatting
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