KBD_PWM from 105 -> 95 (GPIO2_IO[25]) RF_SW_CTRL from 104 -> 103 (GPIO2_IO[15]) RF_ATT_DATA to 107 (SPI7_SOUT) RF_ATT_CLK to 106 (SPI7_SCK) RF_ATT_LE1 to 105 (GPIO2_IO[12]) RF_ATT_LE2 to 104 (GPIO2_IO[13]) RF_PA_SHUTDOWN not decided yet |
||
|---|---|---|
| .github/workflows | ||
| parts | ||
| photos | ||
| present | ||
| .gitattributes | ||
| .gitignore | ||
| audio.kicad_sch | ||
| connectors.kicad_sch | ||
| display.kicad_sch | ||
| fp-lib-table | ||
| keyboard.kicad_sch | ||
| LICENSE.txt | ||
| linht-hw.kicad_pcb | ||
| linht-hw.kicad_pro | ||
| linht-hw.kicad_sch | ||
| linht-hw.pdf | ||
| Makefile | ||
| mcm-imx93-pinout.md | ||
| mux.kicad_sch | ||
| power.kicad_sch | ||
| README.md | ||
| rf.kicad_sch | ||
| soc.kicad_sch | ||
| sym-lib-table | ||
LinHT-hw
Open-source hardware, Linux-based, SDR handheld transceiver. OpenHT successor with greatly simplified hardware - no FPGAs involved. This project offers a replacement board for the Retevis C62 radio, greatly expanding its capabilities.
Hardware
The device uses an MCM-iMX93 System on Module (SoM) running Linux. The RF front-end is based on the Semtech SX1255. The chip is used as a complete IQ modulator/demodulator, allowing for true all-mode support.
Resources
CPU:
- Dual-core ARM Cortex-A55 @ 1.7GHz
- ARM Cortex-M33 coprocessor @ 250MHz
- Floating Point Unit
- ARM Ethos U-65 microNPU (Neural Processing Unit with TensorFlow Lite support)
Memory:
- 2GB LPDDR4
- 32GB eMMC
RF:
- 500kHz bandwidth complete IQ transceiver
Software
Developers can use C/C++/Python as well as (or in conjunction with) GNU Radio flowgraphs. Tools such as gcc are built-in.
Supported modes (so far):
- FM transmission and reception with pre-/de-emphasis and CTCSS,
- SSB transmission and reception,
- M17 - transmission and reception,
- TETRA - reception only,
- Demo 64QAM transmission at 2Mbps
Other modes can be added later (FreeDV, APRS, etc.).
Images
Download images
Prebuilt images for LinHT can be downloaded here.
Building images
Instructions for setting up the Yocto build environment can be found in the M17 Wiki. All layers required to build the image are located in the M17 Project GitHub:
- meta-linht-hardware: Provides machine configuration and hardware support for the LinHT hardware.
- meta-linht-software: Provides application software, libraries, and system configuration.
- meta-linht-sdr: A modified version of meta-sdr, providing the GNU Radio package.
Flashing
To flash the images to LinHT the Universal Update Utility is needed. LinHT needs to be booted into flash mode (holding the secondary side button while booting). Once in flash mode, the image can be written with uuu:
uuu -v -b emmc_all imx-boot-mcm-imx93-sd.bin-flash_singleboot linht-image-mcm-imx93.rootfs.wic.zst
Driver
To access LinHTs network device under windows, RNDIS driver need to be installed.
License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
