SPI Code for SI4010C2 Remotes

Job ID: 40245221

Budget: ₹1,500 – ₹12,500 INR

I’m working on a fleet of roughly 200 remote-control models built around the SI4010C2-GSR transmitter IC. All of the devices share a small external flash that is connected over SPI, and I need a compact, reliable firmware module that can both read from and write to that flash so configuration settings for each remote can be stored in, and retrieved from, individual BIN files.

Scope of work
• Develop C-level routines (or a callable library) for the SI4010C2 that implement full-duplex SPI transfers.
• Support page-level and single-byte read/write operations so I can update or fetch configuration blocks on the fly.
• Include helper functions to create, open, and verify BIN files that hold each remote’s settings.
• The firmware must compile under Silicon Labs’ toolchain; I currently use Keil with the standard SI4010C2 header files.

Acceptance criteria
• Demonstrate reliable read-back of a 1 kB configuration BIN and a subsequent write that passes a CRC-16 check.
• Code size small enough to fit alongside our existing key-scan logic in the SI4010C2 (roughly 6 kB headroom left).
• Clear, commented source plus a brief README explaining pin assignments, clock rate, and any required timing delays.

If you’ve built SPI drivers for small SoCs before—especially anything in Silicon Labs’ wireless line—you’ll feel right at home here. Feel free to suggest improvements to the memory-map strategy; I’m open to tweaks as long as the final result lets each of my 200 remotes load and save its own BIN file with zero data loss.