CMT2300A - RF Dev Board

Development Board for a Future IOT Project
CMT2300A 868MHz

Similar projects worth following
Development board to test the various features of the CMT2300A Transceiver…
Features of IC as listed on datasheet:

Frequency range: 127 ~1020MHz
Modem: OOK, (G)FSK, (G)MSK
Data rate: 0.5 ~ 300 kbps
........ -121 dBm 2.0 kbps, FRF = 433.92 MHz
........ -111 dBm 50 kbps, FRF = 433.92 MHz
Voltage range: 1.8 ~3.6 V
Transmit current:
........ 23 mA @ 13 dBm, 433.92 MHz, FSK
........ 72 mA @ 20 dBm, 433.92 MHz, FSK,
Rx current:
........ 8.5 mA @ 433.92 MHz, FSK (High power mode)
........ 7.2 mA @ 433.92 MHz, FSK (Low power mode)
Sleep current:
........ 300 nA, Duty Cycle = OFF
........ 800 nA, Duty Cycle = ON

Pending Documentation Update

x-zip-compressed - 99.12 kB - 04/22/2024 at 05:39


Adobe Portable Document Format - 170.83 kB - 04/22/2024 at 05:39


  • Bit Banging CMT2300A Protocol

    Jesse Farrell02/21/2023 at 00:21 0 comments

    The datasheet for this chip proudly touts SPI support, but looking beyond the front page of the datasheet reveals a custom communication protocol more similar to I2C (or at least I think so). This protocol requires 4 wires (+GND).

       > CSB: Chip selection for register access, active low

       > FCSB: Chip selection for FIFO access, active low

       > SCLK: Clock (+ve edge)

       > SDIO: Data input and output

    The timing diagram is shown below. For basic register access I will be ignoring FCSB.

    Since I’m on a bit of a deadline here, I decided to bit bang the protocol (I’m sure there’s an elegant way to do this, but that’s for another day). Here’s the rough code I have for reading data from the device.

    As an example, if I look at some registers, I can read out valid contents shown below. 

    In the scope capture, there’s a short spike between the RX and TX bytes. This is caused by the handoff between the pi pico and the CMT2300A. I have a weak pullup on the line, so data starts to rise to VCC before being pulled down by the slave.

    That’s all for now… transceiver is talking so I can do some register poking to put it through its paces.

View project log

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates