cc2541 vs HM-10 / HM-#
The HM-# line of boards are essentially just pre-built modules that combine the dedicated BLE IC (usually a CC2540 or CC2541) with all the basic stuff that it needs to get running; timing crystal, ground plane, antenna trace, various pull-up/pull-down resistors on pins, etc. Plus it breaks out the super tiny pins on the TI chips to much larger contacts that almost fit a standard breadboard.
There are a bunch of HM-X clones / forks, including open-source SparkFun variants (HM-13). The original designs, and original IP holder, all seem to point to Jinan Huamao.
These boards are wildly popular, so it is often easier to find guides for "HM-10 projects" rather than "CC2541 projects".
HM-10 & HM-11 [VS] HM-12 & HM-13
HM 10-11 are V4.0 BLE, whereas HM 12-13 are dual-mode EDR 4.0 and BLE 4.0.
Hard to tell: It also looks like the HM-12 and HM-13 pairs the actual bluetooth SOC with another full processor, the NuMicro NUC029, which would certainly explain the jump in flash from 256Kb with the HM-10/11 to 64KB (512 Kb) with the HM-12/13.
Docs and Resources
|Official Datasheet||PDF Datasheet||TI hosted|
|Software Dev Guide||PDF Guide||TI hosted|
|BLE Dev Kit||Git repo of sample stuff related to getting started with HM-10/CC2541||Github|
Can you put your programs directly on the CC2541?
Yes, but in general not worth the time & money unless building a large-scale commerical product. Requires expensive licensed TI software (IAR Embedded Workshop) and specialized programmers (CC Debugger). See this for details.