"CRC error detected" in reboot #61

Closed
opened 2026-10-27 09:30:49 +01:00 by adam · 9 comments
Owner

Pi Zero 2 W / Waveshare SPI Hat

This device works flawlessly after a fresh SD image and installation but after rebooting I get the following error.

SX1262_wrapper -WARNING -[RX] CRC error detected - discarding packet

Ive confirmed that radio settings are correct on both ends. It seems like the radio isnt initializing properly after a reboot.

Ive added to override.conf

-Unit-
After=network-online.target dev-spidev0.0.device
Wants=network-online.target dev-spidev0.0.device

-SERVICE-
-Wait for BUSY pin to go low
ExecStartPre=/usr/local/bin/sx1262_wait_ready.sh

-Set TXEN pin high (if used by your HAT)
ExecStartPre=/usr/bin/pinctrl set 6 dh

but nothing is working =\

Pi Zero 2 W / Waveshare SPI Hat This device works flawlessly after a fresh SD image and installation but after rebooting I get the following error. SX1262_wrapper -WARNING -[RX] CRC error detected - discarding packet Ive confirmed that radio settings are correct on both ends. It seems like the radio isnt initializing properly after a reboot. Ive added to override.conf -Unit- After=network-online.target dev-spidev0.0.device Wants=network-online.target dev-spidev0.0.device -SERVICE- -Wait for BUSY pin to go low ExecStartPre=/usr/local/bin/sx1262_wait_ready.sh -Set TXEN pin high (if used by your HAT) ExecStartPre=/usr/bin/pinctrl set 6 dh but nothing is working =\ <!-- github-sync-id:4078959932 -->
adam closed this issue 2026-10-27 09:30:49 +01:00
Author
Owner

IMHO this is normal behavior.

Interference in the RX signal is expected.
When the packet is received it is checked using CRC to confirm it's in tact, before forwarding it.
A CRC error is a good reason to not repeat the packet.

If your repeater doesn't repeat/transmit any packet and the log is only these messages I suggest you check your antenna connection/cabling/location.

--
Raspberry Pi 3B+, Waveshare SPI HAT

My own log:
[13:35:00] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet
[13:35:05] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet
[13:35:11] RepeaterHandler WARNING Duty-cycle limit exceeded. Airtime=741.4ms, wait=6.2s before retry
[13:35:12] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet
[13:35:29] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet
[13:35:32] SX1262_wrapper WARNING [RX] Header error detected (0x0020) - corrupted header, restoring RX mode
[13:35:35] RepeaterHandler WARNING Duty-cycle limit exceeded. Airtime=1527.8ms, wait=11.9s before retry
[13:35:43] SX1262_wrapper WARNING [RX] Header error detected (0x0020) - corrupted header, restoring RX mode

Doing about 1300 RX/min and 360 TX/min.

IMHO this is normal behavior. Interference in the RX signal is expected. When the packet is received it is checked using CRC to confirm it's in tact, before forwarding it. A CRC error is a good reason to not repeat the packet. If your repeater doesn't repeat/transmit any packet and the log is only these messages I suggest you check your antenna connection/cabling/location. -- Raspberry Pi 3B+, Waveshare SPI HAT My own log: [13:35:00] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet [13:35:05] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet [13:35:11] RepeaterHandler WARNING Duty-cycle limit exceeded. Airtime=741.4ms, wait=6.2s before retry [13:35:12] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet [13:35:29] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet [13:35:32] SX1262_wrapper WARNING [RX] Header error detected (0x0020) - corrupted header, restoring RX mode [13:35:35] RepeaterHandler WARNING Duty-cycle limit exceeded. Airtime=1527.8ms, wait=11.9s before retry [13:35:43] SX1262_wrapper WARNING [RX] Header error detected (0x0020) - corrupted header, restoring RX mode Doing about 1300 RX/min and 360 TX/min. <!-- github-comment-id:4106195966 -->
Author
Owner

Thank for the reply!

I've tried a few different antennas and ipex to sma pigtails still I get not telemetry on the web interface. It was working intermittently and most always on first install but now it's not working at all. I really think it's the waveshare board. That or my zero 2W doesn't like it.

An advert from my companion throws the CRC error, and when I advert from the repeater I get nothing on any other devices however the logs look like everything went out ok.

I'm not knowledgeable enough to fully debug what's going on but I'm almost thankful because it's a learning experience. I tend to bite off more than I can chew and go from there :)

Thanks for the reply, I'll keep digging and possibly may try a different radio.

PS...are you using the GPS hat?

Sent with Proton Mail secure email.

On Sunday, March 22nd, 2026 at 8:41 AM, Sander @.***> wrote:

as-spaargaren left a comment (rightup/pyMC_Repeater#147)

IMHO this is normal behavior.

Interference in the RX signal is expected.
When the packet is received it is checked using CRC to confirm it's in tact, before forwarding it.
A CRC error is a good reason to not repeat the packet.

If your repeater doesn't repeat/transmit any packet and the log is only these messages I suggest you check your antenna connection/cabling/location.

--
Raspberry Pi 3B+, Waveshare SPI HAT

My own log:
[13:35:00] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet
[13:35:05] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet
[13:35:11] RepeaterHandler WARNING Duty-cycle limit exceeded. Airtime=741.4ms, wait=6.2s before retry
[13:35:12] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet
[13:35:29] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet
[13:35:32] SX1262_wrapper WARNING [RX] Header error detected (0x0020) - corrupted header, restoring RX mode
[13:35:35] RepeaterHandler WARNING Duty-cycle limit exceeded. Airtime=1527.8ms, wait=11.9s before retry
[13:35:43] SX1262_wrapper WARNING [RX] Header error detected (0x0020) - corrupted header, restoring RX mode

Doing about 1300 RX/min and 360 TX/min.

—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

Thank for the reply! I've tried a few different antennas and ipex to sma pigtails still I get not telemetry on the web interface. It was working intermittently and most always on first install but now it's not working at all. I really think it's the waveshare board. That or my zero 2W doesn't like it. An advert from my companion throws the CRC error, and when I advert from the repeater I get nothing on any other devices however the logs look like everything went out ok. I'm not knowledgeable enough to fully debug what's going on but I'm almost thankful because it's a learning experience. I tend to bite off more than I can chew and go from there :) Thanks for the reply, I'll keep digging and possibly may try a different radio. PS...are you using the GPS hat? Sent with [Proton Mail](https://proton.me/mail/home) secure email. On Sunday, March 22nd, 2026 at 8:41 AM, Sander ***@***.***> wrote: > as-spaargaren left a comment [(rightup/pyMC_Repeater#147)](https://github.com/rightup/pyMC_Repeater/issues/147#issuecomment-4106195966) > > IMHO this is normal behavior. > > Interference in the RX signal is expected. > When the packet is received it is checked using CRC to confirm it's in tact, before forwarding it. > A CRC error is a good reason to not repeat the packet. > > If your repeater doesn't repeat/transmit any packet and the log is only these messages I suggest you check your antenna connection/cabling/location. > > -- > Raspberry Pi 3B+, Waveshare SPI HAT > > My own log: > [13:35:00] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet > [13:35:05] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet > [13:35:11] RepeaterHandler WARNING Duty-cycle limit exceeded. Airtime=741.4ms, wait=6.2s before retry > [13:35:12] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet > [13:35:29] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet > [13:35:32] SX1262_wrapper WARNING [RX] Header error detected (0x0020) - corrupted header, restoring RX mode > [13:35:35] RepeaterHandler WARNING Duty-cycle limit exceeded. Airtime=1527.8ms, wait=11.9s before retry > [13:35:43] SX1262_wrapper WARNING [RX] Header error detected (0x0020) - corrupted header, restoring RX mode > > Doing about 1300 RX/min and 360 TX/min. > > — > Reply to this email directly, [view it on GitHub](https://github.com/rightup/pyMC_Repeater/issues/147?email_source=notifications&email_token=B33LXSH5YB7Y5LLIX3BKUCL4R7NN5A5CNFSNUABFM5UWIORPF5TWS5BNNB2WEL2JONZXKZKDN5WW2ZLOOQXTIMJQGYYTSNJZGY3KM4TFMFZW63VGMF2XI2DPOKSWK5TFNZ2KYZTPN52GK4S7MNWGSY3L#issuecomment-4106195966), or [unsubscribe](https://github.com/notifications/unsubscribe-auth/B33LXSDCBKSHAOAFNF22PUL4R7NN5AVCNFSM6AAAAACWSTY6LSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHM2DCMBWGE4TKOJWGY). > You are receiving this because you authored the thread.Message ID: ***@***.***> <!-- github-comment-id:4106718831 -->
Author
Owner

I didn't get any CTC errors until the last update On 22 Mar 2026, at 19:14, lrdnik0n @.***> wrote:lrdnik0n left a comment (rightup/pyMC_Repeater#147)
Thank for the reply!

I've tried a few different antennas and ipex to sma pigtails still I get not telemetry on the web interface. It was working intermittently and most always on first install but now it's not working at all. I really think it's the waveshare board. That or my zero 2W doesn't like it.

An advert from my companion throws the CRC error, and when I advert from the repeater I get nothing on any other devices however the logs look like everything went out ok.

I'm not knowledgeable enough to fully debug what's going on but I'm almost thankful because it's a learning experience. I tend to bite off more than I can chew and go from there :)

Thanks for the reply, I'll keep digging and possibly may try a different radio.

PS...are you using the GPS hat?

Sent with Proton Mail secure email.

On Sunday, March 22nd, 2026 at 8:41 AM, Sander @.***> wrote:

as-spaargaren left a comment (rightup/pyMC_Repeater#147)

IMHO this is normal behavior.

Interference in the RX signal is expected.
When the packet is received it is checked using CRC to confirm it's in tact, before forwarding it.
A CRC error is a good reason to not repeat the packet.

If your repeater doesn't repeat/transmit any packet and the log is only these messages I suggest you check your antenna connection/cabling/location.

--
Raspberry Pi 3B+, Waveshare SPI HAT

My own log:
[13:35:00] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet
[13:35:05] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet
[13:35:11] RepeaterHandler WARNING Duty-cycle limit exceeded. Airtime=741.4ms, wait=6.2s before retry
[13:35:12] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet
[13:35:29] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet
[13:35:32] SX1262_wrapper WARNING [RX] Header error detected (0x0020) - corrupted header, restoring RX mode
[13:35:35] RepeaterHandler WARNING Duty-cycle limit exceeded. Airtime=1527.8ms, wait=11.9s before retry
[13:35:43] SX1262_wrapper WARNING [RX] Header error detected (0x0020) - corrupted header, restoring RX mode

Doing about 1300 RX/min and 360 TX/min.

—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: @.***>

I didn't get any CTC errors until the last update On 22 Mar 2026, at 19:14, lrdnik0n ***@***.***> wrote:lrdnik0n left a comment (rightup/pyMC_Repeater#147) Thank for the reply! I've tried a few different antennas and ipex to sma pigtails still I get not telemetry on the web interface. It was working intermittently and most always on first install but now it's not working at all. I really think it's the waveshare board. That or my zero 2W doesn't like it. An advert from my companion throws the CRC error, and when I advert from the repeater I get nothing on any other devices however the logs look like everything went out ok. I'm not knowledgeable enough to fully debug what's going on but I'm almost thankful because it's a learning experience. I tend to bite off more than I can chew and go from there :) Thanks for the reply, I'll keep digging and possibly may try a different radio. PS...are you using the GPS hat? Sent with [Proton Mail](https://proton.me/mail/home) secure email. On Sunday, March 22nd, 2026 at 8:41 AM, Sander ***@***.***> wrote: > as-spaargaren left a comment [(rightup/pyMC_Repeater#147)](https://github.com/rightup/pyMC_Repeater/issues/147#issuecomment-4106195966) > > IMHO this is normal behavior. > > Interference in the RX signal is expected. > When the packet is received it is checked using CRC to confirm it's in tact, before forwarding it. > A CRC error is a good reason to not repeat the packet. > > If your repeater doesn't repeat/transmit any packet and the log is only these messages I suggest you check your antenna connection/cabling/location. > > -- > Raspberry Pi 3B+, Waveshare SPI HAT > > My own log: > [13:35:00] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet > [13:35:05] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet > [13:35:11] RepeaterHandler WARNING Duty-cycle limit exceeded. Airtime=741.4ms, wait=6.2s before retry > [13:35:12] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet > [13:35:29] SX1262_wrapper WARNING [RX] CRC error detected - discarding packet > [13:35:32] SX1262_wrapper WARNING [RX] Header error detected (0x0020) - corrupted header, restoring RX mode > [13:35:35] RepeaterHandler WARNING Duty-cycle limit exceeded. Airtime=1527.8ms, wait=11.9s before retry > [13:35:43] SX1262_wrapper WARNING [RX] Header error detected (0x0020) - corrupted header, restoring RX mode > > Doing about 1300 RX/min and 360 TX/min. > > — > Reply to this email directly, [view it on GitHub](https://github.com/rightup/pyMC_Repeater/issues/147?email_source=notifications&email_token=B33LXSH5YB7Y5LLIX3BKUCL4R7NN5A5CNFSNUABFM5UWIORPF5TWS5BNNB2WEL2JONZXKZKDN5WW2ZLOOQXTIMJQGYYTSNJZGY3KM4TFMFZW63VGMF2XI2DPOKSWK5TFNZ2KYZTPN52GK4S7MNWGSY3L#issuecomment-4106195966), or [unsubscribe](https://github.com/notifications/unsubscribe-auth/B33LXSDCBKSHAOAFNF22PUL4R7NN5AVCNFSM6AAAAACWSTY6LSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHM2DCMBWGE4TKOJWGY). > You are receiving this because you authored the thread.Message ID: ***@***.***> —Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: ***@***.***> <!-- github-comment-id:4106822141 -->
Author
Owner

I'm not using the GPS HAT. Just the SX1262 LoRa Node (HF) with SPI interface.
I'm also troubleshooting my unit as it's not transmitting to any repeater in the area.
It only has tx power to reach my companion device in a 25 meter range from my home.

According to several websites these units are known for having bad TCXO's
My unit is now 4 days old, so it's still covered under warranty.
Tried enabling the DIO3 pin in the config, but no improvement. Looking at the Pinout to the Raspberry Pi DIO3 is not connected to the GPIO header.

I'm not using the GPS HAT. Just the SX1262 LoRa Node (HF) with SPI interface. I'm also troubleshooting my unit as it's not transmitting to any repeater in the area. It only has tx power to reach my companion device in a 25 meter range from my home. According to several websites these units are known for having bad TCXO's My unit is now 4 days old, so it's still covered under warranty. Tried enabling the DIO3 pin in the config, but no improvement. Looking at the Pinout to the Raspberry Pi DIO3 is not connected to the GPIO header. <!-- github-comment-id:4120633264 -->
Author
Owner

I am interested in this as I noted that mine isn't getting out either (although this may just be the area) but I do have a lora to/rx amp and when it swaps from one to the other the LED on it changes and I have noted that it never goes to TX amplification (yes the amp works as it should on other devices) so I tried a pre amp from the PI and it does switch now so I am assuming that the output from the PI is too low. I have a WaveShare hat on a Pi 4 if that helpsThanks On 24 Mar 2026, at 19:53, Sander @.***> wrote:as-spaargaren left a comment (rightup/pyMC_Repeater#147)
I'm not using the GPS HAT. Just the SX1262 LoRa Node (HF) with SPI interface.
I'm also troubleshooting my unit as it's not transmitting to any repeater in the area.
It only has tx power to reach my companion device in a 25 meter range from my home.
According to several websites these units are known for having bad TCXO's
My unit is now 4 days old, so it's still covered under warranty.
Tried enabling the DIO3 pin in the config, but no improvement. Looking at the Pinout to the Raspberry Pi DIO3 is not connected to the GPIO header.

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>

I am interested in this as I noted that mine isn't getting out either (although this may just be the area) but I do have a lora to/rx amp and when it swaps from one to the other the LED on it changes and I have noted that it never goes to TX amplification (yes the amp works as it should on other devices) so I tried a pre amp from the PI and it does switch now so I am assuming that the output from the PI is too low. I have a WaveShare hat on a Pi 4 if that helpsThanks On 24 Mar 2026, at 19:53, Sander ***@***.***> wrote:as-spaargaren left a comment (rightup/pyMC_Repeater#147) I'm not using the GPS HAT. Just the SX1262 LoRa Node (HF) with SPI interface. I'm also troubleshooting my unit as it's not transmitting to any repeater in the area. It only has tx power to reach my companion device in a 25 meter range from my home. According to several websites these units are known for having bad TCXO's My unit is now 4 days old, so it's still covered under warranty. Tried enabling the DIO3 pin in the config, but no improvement. Looking at the Pinout to the Raspberry Pi DIO3 is not connected to the GPIO header. —Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: ***@***.***> <!-- github-comment-id:4124653793 -->
Author
Owner

The Waveshare SPI HAT has known issues and is no longer recommended.

The Waveshare SPI HAT has known issues and is no longer recommended. <!-- github-comment-id:4561385533 -->
Author
Owner

Sad to see the Waveshare SPI hat is no longer recommended. I've been using this board in a pyMC repeater for a couple months, recently updated and it broke the functionality. It was working in a previous build without issue. It is also the cheapest and most available option of HATs for this project.

Sad to see the Waveshare SPI hat is no longer recommended. I've been using this board in a pyMC repeater for a couple months, recently updated and it broke the functionality. It was working in a previous build without issue. It is also the cheapest and most available option of HATs for this project. <!-- github-comment-id:4776558734 -->
Author
Owner

Sad to see the Waveshare SPI hat is no longer recommended. I've been using this board in a pyMC repeater for a couple months, recently updated and it broke the functionality. It was working in a previous build without issue. It is also the cheapest and most available option of HATs for this project.

The waveshare hat is possibly one of the worst devices ever to come to the Mesh.

It's cheap, sure, but that's for a reason. The config options are still there for legacy reasons but the WaveShare has no TCXO and has a demonstrated tendency to drift in frequency, causing CRC errors and even drifting so far that it's not useable at all.

It's been dropped because it's caused far more issues than any other hat. On 125/250kHz settings - they work, but they're a compromise. On 62.5KHz settings on a busy mesh they're just too unreliable to recommend anymore.

> Sad to see the Waveshare SPI hat is no longer recommended. I've been using this board in a pyMC repeater for a couple months, recently updated and it broke the functionality. It was working in a previous build without issue. It is also the cheapest and most available option of HATs for this project. The waveshare hat is possibly one of the worst devices ever to come to the Mesh. It's cheap, sure, but that's for a reason. The config options are still there for **legacy reasons** but the WaveShare has no TCXO and has a demonstrated tendency to drift in frequency, causing CRC errors and even drifting so far that it's not useable at all. It's been dropped because it's caused far more issues than any other hat. On 125/250kHz settings - they work, but they're a compromise. On 62.5KHz settings on a busy mesh they're just too unreliable to recommend anymore. <!-- github-comment-id:4776582658 -->
Author
Owner

@zindello Thanks for the detailed explanation.

@zindello Thanks for the detailed explanation. <!-- github-comment-id:4776725718 -->
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: adam/pyMC_Repeater#61