circuitpython-org/_board/feather_m0_rfm69.md
Jeff Epler 4715875cc4 Fix board dates to always be of the form YYYY-MM-DD
.. leading zeros are required for `frontmatter` to treat them as dates
rather than strings, apparently per the YAML specification.

This was done by script:
```py
import re
import datetime
import pathlib
import sys

import frontmatter

rx = re.compile(r'^(\s*)date_added:.*$', re.M)

for path_str in sys.argv[1:]:
    print(path_str)
    path = pathlib.Path(path_str)

    post = frontmatter.load(path)
    date_added = post.get("date_added", "")

    if isinstance(date_added, datetime.date):
        continue

    if isinstance(date_added, str):
        try:
            date_added = datetime.datetime.strptime(date_added, "%Y-%m-%d")
        except ValueError as exc:
            print(f"Failed to parse date {date_added} in {path_str}: {exc}")
            continue

    date_added = date_added.date()
    content = path.read_text("utf-8")
    new_content = rx.sub(lambda m: f"{m.group(1)}date_added: {date_added}", content)
    assert content != new_content

    path.write_text(new_content, "utf-8")
```
2024-03-22 11:31:45 -05:00

4.3 KiB

layout board_id title name manufacturer board_url board_image date_added family bootloader_id features
download feather_m0_rfm69 Feather M0 RFM69 Download Feather M0 RFM69 Adafruit
https://www.adafruit.com/product/3176
https://www.adafruit.com/product/3177
feather_m0_rfm69.jpg 2019-03-09 atmel-samd radiofruit_m0
Feather-Compatible
Battery Charging
LoRa/Radio
Breadboard-Friendly

This is the** Adafruit Feather M0 RFM69 Packet Radio (433, 868, or 915 MHz)****.** Also called RadioFruits**,** Adafruit's take on an microcontroller with a RFM69HCW packet radio transceiver plus built in USB and battery charging. Its an Adafruit Feather M0 with a VHF radio module cooked in!

Feather is the development platform from Adafruit, and like its namesake it is thin, light, and lets you fly! Adafruit designed Feather to be an open standard for portable microcontroller cores. Check out the other boards in the Feather family.

There are two versions: 433 MHz and 900 MHz. The 900 MHz version can be used for either 868 MHz or 915MHz transmission/reception - the exact radio frequency is determined when you load the software since it can be tuned around dynamically.

At the Feather M0's heart is an ATSAMD21G18 ARM Cortex M0 processor, clocked at 48 MHz and at 3.3 V logic, the same one used in the new Arduino Zero. This chip has a whopping 256 KB of FLASH (8x more than the Atmega328 or 32u4) and 32 KB of RAM (16x as much)! This chip comes with built in USB so it has USB-to-Serial program & debug capability built in with no need for an FTDI-like chip.

To make it easy to use for portable projects, Adafruit added a connector for 3.7 V Lithium polymer batteries and built in battery charging. You don't need a battery, it will run just fine straight from the micro USB connector. But, if you do have a battery, you can take it on the go, then plug in the USB to recharge. The Feather will automatically switch over to USB power when its available. The battery is tied thru a divider to an analog pin, so you can measure and monitor the battery voltage to detect when you need a recharge.

Technical details

  • Measures 2.0" x 0.9" x 0.3" (51 mm x 23 mm x 8 mm) without headers soldered in
  • Light as a (large?) feather - 5.8 grams
  • ATSAMD21G18 @ 48 MHz with 3.3 V logic/power
  • No EEPROM
  • 3.3 V regulator with 500 mA peak current outpu0t
  • USB native support, comes with USB bootloader and serial port debugging
  • You also get tons of pins - 20 GPIO pins
  • Hardware Serial, hardware I2C, hardware SPI support
  • 8 x PWM pins
  • 10 x analog inputs
  • 1 x analog output
  • Built in 100 mA lipoly charger with charging status indicator LED
  • Pin #13 red LED for general purpose blinking
  • Power/enable pin
  • 4 mounting holes
  • Reset button

The Feather M0 Radio uses the extra space left over to add an RFM69HCW 433 or 900 MHz radio module. These radios are not good for transmitting audio or video, but they do work quite well for small data packet transmission when you need more range than 2.4 GHz (BT, BLE, WiFi, ZigBee).

  • SX1231 based module with SPI interface
  • 433 MHz version: Uses the amateur or license-free ISM band (ITU "Europe" license-free ISM or ITU "American" amateur with limitations)
  • 900 MHz version: Uses the license-free ISM band ("European ISM" @ 868MHz or "American ISM" @ 915 MHz)
  • +13 to +20 dBm up to 100 mW Power Output Capability (power output selectable in software)
  • 50 mA (+13 dBm) to 150mA (+20 dBm) current draw for transmissions
  • Range of approx. 350 meters, depending on obstructions, frequency, antenna and power output
  • Create multipoint networks with individual node addresses
  • Encrypted packet engine with AES-128
  • Simple wire antenna or spot for uFL connector

Comes fully assembled and tested, with a USB bootloader. Includes some headers so you can solder it in and plug into a solderless breadboard. You will need to cut and solder on a small piece of wire (any solid or stranded core is fine) in order to create your antenna.

Tutorial

Purchase