• Stars
    star
    154
  • Rank 241,567 (Top 5 %)
  • Language
    C
  • License
    Other
  • Created over 5 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

stm32f072 dev board with arduino nano alike pinout

OtterPill

OtterPill is a 3$ STM32F072 devboard featuring USB 2.0 full-speed, a DFU Bootloader, a USB-PD Phy and Arduino nano alike pinout and size.

Changelog V1.2: BOM cost reduction by ~40%, PCB can be fully populated by JLCSMT, more efficient buck converter (PCB gets less warm at 20V), GND-hook for probing, Reset-Pin exposed as pad, power pads for 20V/5A

How do I get an OtterPill?

Via tindie (if sold out DM via Twitter, I might have a few left ;))

Building, Flashing and Frameworks

Via Makefile and DFU (C, C++)

Or you can generate a basic firmware, with HAL init and Makefile, with CubeMX. The binary can then be build with make and flashed with dfu-utils. To enter DFU mode, press and hold the Button while plugging in power.

$ make
$ dfu-util -a 0 -s 0x08000000:leave -D build/firmware.bin

Via Arduino

You can build and flash the firmware via Arduino as described here.

Via PlatformIO

https://gist.github.com/ansemjo/ab1c12f7c78abb140f7272501aff2a55 Thank you ansemjo :3

Via Nodate (้‡Ž็‚น) (C++, Ada)

https://github.com/MayaPosch/Nodate

Rust

Thank you @jamesmunns! :3

https://github.com/jamesmunns/OtterPill-rs

Schematic

HW v1.2/OtterPill.pdf

Pinout

Pinout by SarahhhhFoster :)

Examples and projects

Blink example firmware

Blink/

STM workshop based on OtterPill

https://github.com/Jana-Marie/hackerhotel-stm-workshop

USB-PD example firmware

This is a working USB-PD example using ChibiOS, a new voltage can be requested by pressing the Button.

https://github.com/Jana-Marie/USB-PD-Firmware

IBM dials retrofit

https://github.com/Jana-Marie/IBM-dials-retrofit

Shields and addons

Most Arduino shields should be compatible.

USB-to-CAN-adapter

Todo for HW v1.3

  • Replace U1 with ESDU5V0H4
  • Add a TVS Diode to VBUS (e.g. SJD12A22L01) -> Added series resistor to reduce ringing
  • Remove R8, R9
  • Redraw the FUSB302B Symbol -> forgot why, works great
  • Consider switching to STUSB4500 (Easier PD requesting, same price) -> FUSB works great, no need to change
  • Add VBUS ADC

Special thanks

@jamesmunns for creating the Rust examples.

@MayaPosch for creating the Nodate framework and adding the OtterPill.

@ansemjo for creating a PlatformIO configuration.

@SarahhhhFoster for creating the awesome pinout diagram.

Images

Rev 1.2

License

Copyright Jana Marie Hemsing 2023.

This source describes Open Hardware and is licensed under the CERN-OHL-S v2.

You may redistribute and modify this source and make products using it under the terms of the CERN-OHL-S v2 (https://ohwr.org/cern_ohl_s_v2.txt).

This source is distributed WITHOUT ANY EXPRESS OR IMPLIED WARRANTY, INCLUDING OF MERCHANTABILITY, SATISFACTORY QUALITY AND FITNESS FOR A PARTICULAR PURPOSE. Please see the CERN-OHL-S v2 for applicable conditions.

Source location: https://github.com/Jana-Marie/OtterPill

As per CERN-OHL-S v2 section 4, should You produce hardware based on this source, You must where practicable maintain the Source Location visible on the external case of the Gizmo or other products you make using this source.

More Repositories

1

Otter-Iron

A TS100 USB-PD replacement PCB.
C
482
star
2

Otter-Iron-PRO

USB-PD soldering station for JBC C245 handles.
C
262
star
3

EF-S-Adapter

Hard- and Firmware to control different EF and EF-S lenses
C
104
star
4

LAEMP-Panel

LAEMP-Panel is a Zigbee controllable (e.g. philips hue) RGBY + W spot.
C++
99
star
5

anotter-sensor-hub

Anotter OSHW environment sensor hub, focussed on Sensirion SEN055/SEN05x sensors, featuring a prometheus-exporter.
C++
87
star
6

OtterScreenAdapter

DisplayPort to Ipad 3/4 panel adapter
HTML
62
star
7

USB-LED-Otter

Tiny USB to adressable LED adapter. Fits in your USB port :3
C
62
star
8

temperature-logger

Anotter USB temperature logger that can record up to four channels with thermocouple or NTCs connected via CDC directly or SCPI to USB.
C
58
star
9

PD-Injector

USB-PD Power/Data Splitter
OpenSCAD
47
star
10

OtterCam-s3

Open source 1080p60Hz USB & IP camera based on Sochip s3 and OS05A10/OS05A20 (general MIPI CSI IP camera interface).
OpenSCAD
46
star
11

Enlightened-Otter

Enlighted-Otter is an Open-Source and OSHW work-light for hacker/maker events like the chaos communication congress, which can be screwed onto a club mate bottle.
C
34
star
12

lab-balance

https://twitter.com/_Jana_Marie/status/1270040286710968321
C
34
star
13

transpOtterNG

Next Generation of TranspOtter.
OpenSCAD
34
star
14

electrostatic-adhesion-plate

Electrostatic adhesion plate
33
star
15

USB-PD-Firmware

USB-PD firmware for the stm32f072 - forked from https://git.clayhobbs.com/pd-buddy/pd-buddy-firmware
C
29
star
16

LAEMP-Prism

The Lร„MP-Prism is an aesthetically pleasing and colorful effect lamp that can be used in your home.
C++
29
star
17

hoverboard-breakout

Hoverboard breakout board.
28
star
18

CH330_Hardware

CH330 breakout board
24
star
19

stm32g4xx_usb_cdc

STM32G474 USB CDC example implementation, combined with Jan Breuer's SCPI parser library v2
C
20
star
20

otterlinear-keyboard

Just a smol ortholinear keyboard desgined by an otter for otters.
C
19
star
21

philphoc-luma

Zigbee/Hue to WS2812 or similar addressable LED bridge.
C
16
star
22

stm32f072-USB-PD

stm32f072 USB-PD standalone firmware
C
14
star
23

hackerhotel-stm-workshop

Files and notes for the "STM32 for Arduino Users" workshop at HackerHotel 2020
C
12
star
24

IBM-dials-retrofit

Retrofit your IBM Dials with USB now!
C
12
star
25

MiniBee

Some smol Zigbee endpoint to integrate addressable LEDs (e.g. SK6812, WS2812) into existing smart lighting systems (e.g. Philips Hue).
10
star
26

JEGGER_s-link

https://twitter.com/_Jana_Marie/status/1245725762642206728
10
star
27

USB-PD-Firmware-FreeRTOS

FreeRTOS based USB-PD DRP firmware for the stmf072
C
9
star
28

KiCAD-libs

Otter's KiCAD-libs
Tcl
9
star
29

USB-I2C-BRIDGE

CP2112 based USB I2C bridge
9
star
30

hlcc

hormone level conversion calculator written in Rust
Rust
9
star
31

OtterControlNG

Next generation of OtterControl.
HTML
8
star
32

Ottersauger

Ottersauger & Otterfilter files
7
star
33

otter-printer

It prints Otter!
C
7
star
34

haj-coaster

https://chaos.social/@janamarie/110827692538153298
C
7
star
35

MP2300-Tools

My collection of tools I've written for the graphtec MP2300 plotter. Demo:
Python
6
star
36

STM32-HAL-I2C-Peripheral-Library

C
6
star
37

analog-toolkit

A smol and simple STM32G431 based Analog to USB toolkit.
C
6
star
38

OtterPill-CAN-Adapter

CAN-adapter for the OtterPill running candleLight firmware.
5
star
39

trainlog

simple position and movement tracker/logger.
C++
5
star
40

citation-needed

Source-files for [citation needed] stickers.
5
star
41

mini-motor-controller

A controller for miniature stepper motors
5
star
42

LOL-Display-Frame-Diffusor

This files create a Frame and Diffusor for the LOL-Display
OpenSCAD
4
star
43

Schlieren-Videography-with-Moir-Effekt

Used to capture Schlieren
Processing
4
star
44

JlinkBreakout

Segger Jlink to Tag-Connect and SWD adapter
4
star
45

USB-UART-BRIDGE

USB-UART-BRIDGE & ESP programmer featuring tag-connect
4
star
46

haj.gf

Sources for https://haj.gf
HTML
4
star
47

Mini-TDR

C
4
star
48

OtterStepMini

OtterStepMini is a user friendly, up to 48V 10A stepper-motor-driver with USB-CDC and USB-PD for desktop-applications.
4
star
49

miniscan

An easy and clean 35mm film illuminator for camera based scanning.
OpenSCAD
3
star
50

Rainbow-Space-Invader

OpenSCAD
3
star
51

Teebeutel-Image-Sensor-Expansion

Teebeutel, it beutels tee!
3
star
52

18650-interlude

A very simple board to measure the current from a 18650 battery cell for power profiling.
3
star
53

pure-chaos

An accidental collage of an unknown number of images shot at 37c3 in Hamburg.
3
star
54

HCS-12SS59T-HW

Otter
2
star
55

zepto

Python
2
star
56

OtterControlNG-FW

C
2
star
57

tesla-midiplayer

Automatic midi file splitter
Python
2
star
58

OpenCNCmill

Lets create an open CNC mill, to make our own pcbยดs and more!
OpenSCAD
2
star
59

GoLTGen

Game of Life (alike) Texture Generator
TypeScript
2
star
60

type-c-recessed

A simple (for now power only) back-mounted USB Type-C receptacle for beautiful boards~
2
star
61

diyiji

Open source slanted desktop audio-monitor stand
OpenSCAD
2
star
62

OPS

OPS - The Otter Power Supply
C
1
star
63

MINIMIX

Minimal audio mixer
1
star
64

L-System

L-System in Python
Python
1
star
65

Progeny-Vision-DX-Python

Progeny Vision DX Python scripts
Python
1
star
66

shitty-mlcc-xy-stage

This experiment aims to develop a mechanical super resolution stage for the OpenIRV project.
1
star
67

LED-Polyhedron

OpenSCAD
1
star
68

WhiteboardOtterBot

Whiteboard screenshot bot for Telegram
Python
1
star
69

LOL-Display-Langtons-Ant

This code create Lanngtons ant on the LOL-Display. Note: if the ant leaves one side of the display, it will jump in on the other.
Arduino
1
star