Giter VIP home page Giter VIP logo

muscribble's Introduction

µScribble

An hardware USB Scribble Strip that supports the Mackie Control Protocol.

µScribble in action

Introduction

µScribble is an USB Midi gadget designed to be a companion to inexpensive faderboxes without displays. It should be compatible with any DAW that supports control surfaces. I've personally used it with Apple Logic Pro and Ableton Live.

The hardware itself is very simple an d based around an STM32F4 evaluation board, sometimes known as "blackpill", while the displays are the SPI variant of the ubiquitous SSD1306 OLED screens.

The software is implemented using the unicore-mx fork of libopencm3 as it has a slighlty better support for the stm32 target platform. It should be relatively easy to port the application code to any microcontroller of choice.

Hardware design files

The hardware is designed using the KiCad EDA

Software

The firmware depends on the arm-none-eabi-gcc toolchain, and to compile it it's sufficient to invoke

make

As a convenience, if you have the STLink tools installed, you can flash the firmware to the device using the st-flash command with

make flash

muscribble's People

Contributors

biappi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

muscribble's Issues

Build errors inside unicore?

I'm trying to flash this firmware onto a cheapo stm32f4 (weact brand? Not sure if it matters) but I'm getting stuck on the build step. I've been stumbling through getting all the dependencies squared away, but it seems like unicore-mx has some weird syntax errors. I've tried to debug it, but I'm pretty unfamiliar.

➜  muScribble git:(master) ✗ make flash
make -C unicore-mx TARGETS=stm32/f4 FP_FLAGS="-mfloat-abi=soft"
  GENHDR  include/unicore-mx/sam/3x/irq.json
  GENHDR  include/unicore-mx/sam/4l/irq.json
  GENHDR  include/unicore-mx/sam/3s/irq.json
  GENHDR  include/unicore-mx/sam/3a/irq.json
  GENHDR  include/unicore-mx/sam/3u/irq.json
  GENHDR  include/unicore-mx/sam/3n/irq.json
  GENHDR  include/unicore-mx/lpc17xx/irq.json
  GENHDR  include/unicore-mx/lpc13xx/irq.json
  GENHDR  include/unicore-mx/lpc43xx/m0/irq.json
  GENHDR  include/unicore-mx/lpc43xx/m4/irq.json
  GENHDR  include/unicore-mx/stm32/f4/irq.json
  GENHDR  include/unicore-mx/stm32/f3/irq.json
  GENHDR  include/unicore-mx/stm32/l4/irq.json
  GENHDR  include/unicore-mx/stm32/f2/irq.json
  GENHDR  include/unicore-mx/stm32/l0/irq.json
  GENHDR  include/unicore-mx/stm32/f0/irq.json
  GENHDR  include/unicore-mx/stm32/f7/irq.json
  GENHDR  include/unicore-mx/stm32/l1/irq.json
  GENHDR  include/unicore-mx/stm32/f1/irq.json
  GENHDR  include/unicore-mx/nrf/51/irq.json
  GENHDR  include/unicore-mx/nrf/52/irq.json
  GENHDR  include/unicore-mx/lm3s/irq.json
  GENHDR  include/unicore-mx/efm32/gg/irq.json
  GENHDR  include/unicore-mx/efm32/g/irq.json
  GENHDR  include/unicore-mx/efm32/lg/irq.json
  GENHDR  include/unicore-mx/efm32/tg/irq.json
  GENHDR  include/unicore-mx/vf6xx/irq.json
  BUILD   lib/stm32/f4
/bin/sh: -c: line 0: unexpected EOF while looking for matching `"'
/bin/sh: -c: line 1: syntax error: unexpected end of file
make[1]: *** [Makefile:70: lib/stm32/f4] Error 2
make: *** [Makefile:47: unicore-mx/lib/libucmx_stm32f4.a] Error 2

Any idea what's going wrong here?

Edit: For the record, I also tried building in ubuntu running inside parallels. Similar errors, but slightly different messages. I'm not sure if the fact that it's apple silicon/arm would matter since they're syntax errors. I don't currently have an intel machine to try it on.

Edit: just had the thought that it could be a line ending thing maybe? I'll try windows if I can get parallels working.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.