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 gadus atpakaļ
Bernd Gottschlag
f30f7c71a9
Add delay after setting the pull ups for pin programming
Without it the bits are sometimes read incorrectly.
5 gadus atpakaļ
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 gadus atpakaļ
Bernd Gottschlag
e6669484e6
Disable the dynamic packet length
The packet length is now fixed to 32 bytes.
5 gadus atpakaļ
Bernd Gottschlag
b10df03e01
Fix generation of the salt
5 gadus atpakaļ
Bernd Gottschlag
05696f7e74
Fix decryption bug
5 gadus atpakaļ
Bernd Gottschlag
1381cb6634
Add encryption for the sent packet
5 gadus atpakaļ
Bernd Gottschlag
3a21aef881
Rework the makefile and optimize the code for flash space
5 gadus atpakaļ
Bernd Gottschlag
8a49c011c9
Update packet protocoll
5 gadus atpakaļ
Bernd Gottschlag
58a48e5230
Fix order of the element count and packet type bit field
5 gadus atpakaļ
Bernd Gottschlag
e435620c91
Add a new packet format with the calculation of the CRC
5 gadus atpakaļ
Bernd Gottschlag
c86399b66e
Add the calculation of a crc
The algorith used is for the CRC-16-CCITT, also known as CRC-KERMIT.
5 gadus atpakaļ
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 gadus atpakaļ
Bernd Gottschlag
3dcfae6196
Change the way the TX and RX addresses are written to the nrf24l01
5 gadus atpakaļ
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 gadus atpakaļ
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 gadus atpakaļ
Bernd Gottschlag
f7bfdf101c
Add definitions of the IRQ pin to the nrf24l01
5 gadus atpakaļ
Bernd Gottschlag
1dd0f89149
Fix pin definitions of the interface to the nrf24l01
5 gadus atpakaļ
Bernd Gottschlag
011303042b
Remove a variable that caused a compiler warning
5 gadus atpakaļ
Bernd Gottschlag
f1b0ebf618
Move SPI initialization and pin definitions to spi.c
5 gadus atpakaļ
Bernd Gottschlag
204ff8d220
Add power save mode and send messages every 7.5s
5 gadus atpakaļ
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 gadus atpakaļ
Bernd Gottschlag
ddb5b0426e
Send the data from the BME280 with the NRF24L01
5 gadus atpakaļ
Bernd Gottschlag
01dff7cfd3
Use spi functions
5 gadus atpakaļ
Bernd Gottschlag
93fd7841a9
Use spi functions
5 gadus atpakaļ
Bernd Gottschlag
9d1b611356
Use dedicated function to read the status register when transmitting
5 gadus atpakaļ
Bernd Gottschlag
fc26a37348
Set the transmission retries and time-out duration to each maximum
5 gadus atpakaļ
Bernd Gottschlag
b9cfc34e94
Flush TX FIFO after an unsuccessful transmission
5 gadus atpakaļ
Bernd Gottschlag
45f19e8c43
Fix register struct definitions
5 gadus atpakaļ
Bernd Gottschlag
5ee6bbbf1a
Add SPI interface functions
5 gadus atpakaļ
Bernd Gottschlag
7f1da0221c
Update .gitignore
5 gadus atpakaļ
Bernd Gottschlag
e5ad15dbfa
Add reading from the BME280 using the official API
Currently the data values are written to the debug output.
5 gadus atpakaļ
Bernd Gottschlag
780cedcbc4
Fix order of the bit fields of the register definitions
5 gadus atpakaļ
Bernd Gottschlag
278f7f23fe
WIP: use register definitions to access them
5 gadus atpakaļ
Bernd Gottschlag
b487ab67f6
Add nRF24L01 register definitions
5 gadus atpakaļ
Bernd Gottschlag
33e1d5e700
WIP tidy up the NRF24L01 code
5 gadus atpakaļ
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 gadus atpakaļ
Bernd Gottschlag
daf929f3d2
Add digikey link for a part
5 gadus atpakaļ
Bernd Gottschlag
cab19c7994
Fix kicad library paths
5 gadus atpakaļ
Bernd Gottschlag
086986e6b5
Rename schematics folder to match the structure of the base station
5 gadus atpakaļ
Bernd Gottschlag
80e31fe6bc
Move the schematics to seperate folder
5 gadus atpakaļ
Bernd Gottschlag
443b4a39dd
Fix spelling of a symbol field
5 gadus atpakaļ
Bernd Gottschlag
bd4eb8047e
Add correct ESD diode
5 gadus atpakaļ
Bernd Gottschlag
b0ca0c2284
Exchange the ESD diode for one with the correct package
5 gadus atpakaļ
Bernd Gottschlag
222278a85e
Fix location of markings
5 gadus atpakaļ
Bernd Gottschlag
efbb38a9b4
Add a LED for debugging and fix some errors
5 gadus atpakaļ
Bernd Gottschlag
81f222b526
Add the dip switch to the PCB
5 gadus atpakaļ
Bernd Gottschlag
648257be03
Add a dip switch and the associated footprint
5 gadus atpakaļ
Bernd Gottschlag
90a300850b
Fix library paths
5 gadus atpakaļ
Bernd Gottschlag
a42e16a21c
Correct position of markings
5 gadus atpakaļ