As I mentioned in my Sub-GHz Radio Modules project, I’m adding an SPI flash to store some information about the module, like the type and frequency band, to allow for auto-detection of the proper parameters. As such, I decided to pick up an old, unfinished project, of interfacing with SPI Flash. More specifically, SPI NOR…
What is the time?
Another thing I had a look at are DCF77 modules from AliExpress. The DCF77 is a 77.5 kHz time signal transmitted from Mainflingen in Germany. At 60 kHz, the MSF time signal is transmitted at 60 kHz from Cumbria in the UK. This signal should also be receivable in the Netherlands. There are no modules…
GPRS Modules (part 1)
While I have been working on the radio modules. I wasn’t in the mood for more coding (or rather, analysing the magic values generated by WDS), so I made a next revision of the radio PMOD modules. Seems I overlooked the PCB thickness in the KiCad Calculator tool, and ended up with the wrong width…
Playing with some radio modules (part 5)
Last time I made the Si4432 communicate with the SX1231. This time I’ll take a look at its successor Si4463. While Si4432 implements a traditional register-style access, the Si4463 provides an “API”, which commands. There is a command to access properties, which are akin to registers, as-in you can set and get their values. At…
Playing with some radio modules (part 4)
In previous post of this series I have been comparing the specs of various Sub-GHz transceiver ICs. In this part, the goal is to let different transceiver ICs of different brands communicate. In this part, I will let a HopeRF RFM69 module, which appears a rebranded SemTech part, close to the SX1231H, communicate with a…
MH32F103 I²C issues
As discussed in previous posts comparing the 32F103 microcontrollers, there are several I²C issues on the MegaHunt MH32F103. Disclaimer: The parts are assumed to be MegaHunt MH32F103. I have been told the “STM32F103 China” Blue Pills from AliExpress contain a MegaHunt MH32F103. As these parts have been relabelled as STM parts, I cannot tell for…
32F103 Comparison (part 7)
A while ago, I wrote a post about discovering performance difference between the STM32F103 and the CS32F103. With this in mind, I decided to run the Dhrystone benchmark on all of them. A benchmark as old as I am. I have compiled a firmware such that it contains the benchmark with O0, O1, O2, O3…
The Cortex M Series
Once upon a time, I wrote some code to identify a Cortex M core: cpuid_t *cpuid = (cpuid_t*) (&SCB->CPUID); if ((cpuid->PartNo & (0b11 Revision; where cpuid_t is defined as typedef union { uint32_t cpuid; struct { unsigned int Revision : 4; // p value in r_p_ unsigned int PartNo : 12; unsigned int Architecture :…
32F103 Comparison (part 6)
After the I²C test, showing problems with GigaDevice running at 400 kHz, and MegaHunt at either speed, this time I am running an SPI test. In this test, I have hooked up an MFRC522 and a CLRC663 PDC (RFID/NFC reader). Using this reader I will scan an ISO 14443 A tag (PICC), specifically an NTAG213….
32F103 Comparison (part 5)
It has been a while since I compared some 32F103 chips. Most recent posts has been about identifying them, but let’s now have a look at how they perform. In this post I will have a look at the I²C peripheral. The test is simple: A number of I²C peripherals is connected to the chip…