Here are prototype projects for the F4 and F7 discovery boards.
We will be adding to these as the class progresses.
Here are prototype projects for the F4 and F7 discovery boards.
We will be adding to these as the class progresses.
174 A – First Assignment – The most basic studio tasks
Due 10/24/17 (Tuesday 4th week)
Email Jordan and I when you are finished.
I have edited this document to put preferred methods of installation on the top. Also note that openocd 0.10 is required to program STM32F7 family chips.
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install --HEAD openocd
source [find interface/stlink-v2.cfg]
to
source [find interface/stlink-v2-1.cfg]
You will be able to connect to openocd with “telnet localhost 4444”. Windows users may need to enable the Telnet Client
export PATH=$PATH:/Applications/GNU\ MCU\ Eclipse/OpenOCD/0.10.0-3-20170826-1813-dev/bin
;C:\Program Files\GNU MCU Eclipse\OpenOCD\0.10.0-3-20170826-1813-dev/bin
openocd -s "C:\Program Files\GNU MCU Eclipse\OpenOCD\0.10.0-3-20170826-1813-dev\scripts" -f "board\stm32f4discovery.cfg"
macOS
openocd -s /Applications/GNU\ MCU\ Eclipse/OpenOCD/0.10.0-3-20170826-1813-dev/scripts -f stm32f4discovery.cfg
Here are files to test your OpenOCD connection with.
Use “telnet localhost 3333” to connect to openocd
reset halt
reset run
You may get this message when first starting your debug session. If you do, read the notes on https://stackoverflow.com/questions/38994596/reason-7-target-needs-reset-unreliable-debugging-setup
I tried the second suggestion – using the version of OpenOCD from http://www.freddiechopin.info (under Download) – this worked well for me.
Follow the guide on Camine Noviello’s blog https://www.carminenoviello.com/2014/12/28/setting-gcceclipse-toolchain-stm32nucleo-part-1/ from the text “When finished, you can launch the C:\STM32Toolchain\eclipse\eclipse.exe executable”
Skip the part about STLink and stop before “Flash the binary on the STM32Nucleo”
Now follow the blog entry on configuring OpenOCD https://www.carminenoviello.com/2015/01/07/setting-gcceclipse-toolchain-stm32nucleo-part-2/
weekly topics
books
required
1) bruce and jenny bartlett – practical recording techniques
optional
2) tape op magazine www.tapeop.com
3) bob katz – mastering audio
class requirements
office hours
tuesday, thursday 3:30pm – 5:00pm
instructor – tom erbe – tre@music.ucsd.edu
ta – devansh zurale – dzurale@ucsd.edu
this year we will be learning to program music software in a number of contexts. PD/Max externals, computer applications, or embedded processors. to do this we could cover 5 topics.
••••likely schedule
••••texts – software – hardware
all of these texts are suggested, but not required. however, all of these books will help you solve programming problems or give you signal processing ideas
PD is required for PD external programming
JUCE API from www.juce.com
For ARM programming obtain either an STM32F4Discovery Board or an STM32F7Discovery. The F4 board is slightly slower and has only sound out, but should be sufficient for this class. The F7 board has a touch display and sound in and out (though not simultaneously)
STM32F407G-DISC1 $21.70
STM32F746G-DISCO $56.25
As of this year there is a much simpler ARM board available. The Electrosmith Daisy Seed. It is $27.95, but I suggest either the POD, PETAL or PATCH, as they come with easy to use knobs and jacks (the POD is least expensive at $84).
•••••my office hours
9 – 5 tuesday and thursday
•••••class requirements
3 projects of increasing complexity…. one is a final project. students will be required to use their final project in a piece or for research.
****class notes
all class keynotes and examples will be on the class canvas and synthnotes.ucsd.edu
here’s an example of using clone to make a partitioned, low latency (256 sample) convolution..
Some abstractions for everyone to play with: max-reverb