% USB tutorials and articles @string{USBIF = {{USB Implementers Forum, Inc.}}} @string{MSFT = {{Microsoft Corporation}}} @string{STM = {{ST Microelectronics}}} @online{usb-nutshell, title = {USB in a NutShell}, author = {Craig Peacock}, url = {https://www.beyondlogic.org/usbnutshell}, urldate = {2018-05-12} } @online{usb-made-simple, title = {USB Made Simple}, author = {{MQP Electronics Ltd.}}, url = {http://www.usbmadesimple.co.uk/}, year = {2008}, urldate = {2018-05-12} } @online{tty-usb-acm, title = {What is the difference between /dev/ttyUSB and /dev/ttyACM?}, author = {Samuel Tardieu}, url = {https://rfc1149.net/blog/2013/03/05/what-is-the-difference-between-devttyusbx-and-devttyacmx/}, year = {2013}, urldate = {2018-05-12} } @online{usb-tscsi, title = {Mass Storage FAQ}, author = {Jan Axelson}, url = {http://janaxelson.com/mass_storage_faq.htm}, year = {2013}, urldate = {2018-05-12} } @online{usb-tscsi-wtf, title = {Discussion in a USB storage driver development mailing list (site defunct, available via Archive.org)}, url = {https://lists.one-eyed-alien.net/pipermail/usb-storage/2004-September/000795.html}, year = {2004}, urldate = {2018-05-12} } @online{usb-function, title = {Windows 2000 Professional Resource Kit / USB Functions}, author = MSFT, url = {https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-2000-server/cc939102(v%3dtechnet.10)}, year = {2008}, urldate = {2018-05-12} } @techreport{usb-class-list, title = {USB Class Codes}, author = USBIF, url = {http://www.usb.org/developers/defined_class}, year = {2016}, urldate = {2018-05-12} } % USB specification @techreport{usbif-spec, title = {Universal Serial Bus Specification}, author = USBIF, url = {http://www.usb.org/developers/docs/usb20_docs/}, year = {2000}, urldate = {2018-05-12} } @techreport{usbif-msco, title = {USB Mass Storage Class, Specification Overview}, author = USBIF, url = {http://www.usb.org/developers/docs/devclass_docs/Mass_Storage_Specification_Overview_v1.4_2-19-2010.pdf}, year = {2010}, urldate = {2018-05-12} } @techreport{usbif-bot, title = {USB Mass Storage Class, Bulk-Only Transport}, author = USBIF, url = {http://www.usb.org/developers/docs/devclass_docs/usbmassbulk_10.pdf}, year = {1999}, urldate = {2018-05-12} } @techreport{usbif-dfu, title = {USB Device Class Specification for Device Firmware Upgrade}, author = USBIF, url = {http://www.usb.org/developers/docs/devclass_docs/DFU_1.1.pdf}, year = {2004}, urldate = {2018-05-17} } @online{dfu-util, title = {dfu-util}, author = {{Harald Welte and Stefan Schmidt and Tormod Volden}}, url = {http://dfu-util.sourceforge.net/}, year = {2016}, urldate = {2018-05-17} } @techreport{usbif-cdc, title = {Class definitions for Communication Devices 1.2}, author = USBIF, url = {http://www.usb.org/developers/docs/devclass_docs/CDC1.2_WMC1.1_012011.zip}, year = {2010}, urldate = {2018-05-12} } @techreport{usbif-iad, title = {USB Interface Association Descriptor, Device Class Code and Use Model}, author = USBIF, url = {http://www.usb.org/developers/docs/whitepapers/iadclasscode_r10.pdf}, year = {2003}, urldate = {2018-05-12} } % Virtual FS @online{ms-fat, title = {How FAT Works}, author = MSFT, url = {https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2003/cc776720(v=ws.10)}, year = {2009}, urldate = {2018-05-12} } @online{os-support-table, title = {Comparison of File Systems: OS Support}, author = {{Wikipedia contributors}}, url = {https://en.wikipedia.org/wiki/Comparison_of_file_systems#OS_support}, urldate = {2018-05-12} } @online{daplink, title = {Arm Mbed DAPLink}, author = {{ARM Limited}}, url = {https://github.com/ARMmbed/DAPLink}, year = {2018}, urldate = {2018-05-12} } @online{fat16-brainy, title = {FAT16 Structure Information}, author = {Jack Dobiash}, url = {http://home.teleport.com/~brainy/fat16.htm}, year = {1999}, urldate = {2018-05-12} } @online{fat16-maverick, title = {FAT16 File System}, author = {{LKT Software}}, url = {http://www.maverick-os.dk/FileSystemFormats/FAT16_FileSystem.html}, year = {1999}, urldate = {2018-05-12} } @online{fat16-phobos, title = {A tutorial on the FAT file system}, author = {Bob Eager}, url = {http://www.tavi.co.uk/phobos/fat.html}, year = {2017}, urldate = {2018-05-12} } @online{fat-lfn, author = {vinDaci}, title = {Long Filename Specification}, year = {1998}, url = {http://home.teleport.com/~brainy/lfn.htm}, urldate = {2018-05-12} } @techreport{fat-whitepaper, author = MSFT, title = {FAT: General Overview of On-Disk Format}, url = {https://staff.washington.edu/dittrich/misc/fatgen103.pdf}, year = {2000}, urldate = {2018-05-12} } % FreeRTOS @online{freertos-ports-list, title = {FreeRTOS Ports}, author = {{Real Time Engineers Ltd.}}, url = {https://www.freertos.org/a00090.html}, urldate = {2018-05-12} } @online{freertos-task-switching, title = {How FreeRTOS Works: FreeRTOS Implementation}, author = {{Real Time Engineers Ltd.}}, url = {https://www.freertos.org/implementation/main.html}, urldate = {2018-05-12} } @online{freertos-stackov, title = {FreeRTOS Stack Usage and Stack Overflow Checking}, author = {{Real Time Engineers Ltd.}}, url = {https://www.freertos.org/Stacks-and-stack-overflow-checking.html}, urldate = {2018-05-12} } @book{freertos-book, title = {Mastering the FreeRTOS™ Real Time Kernel}, subtitle = {A Hands-On Tutorial Guide}, author = {Richard Barry}, publisher= {Real Time Engineers Ltd.}, url = {https://www.freertos.org/Documentation/161204_Mastering_the_FreeRTOS_Real_Time_Kernel-A_Hands-On_Tutorial_Guide.pdf}, year = {2016}, urldate = {2018-05-12} } @manual{freertos-rm, title = {The FreeRTOS™ Reference Manual}, publisher= {Real Time Engineers Ltd.}, url = {https://www.freertos.org/Documentation/FreeRTOS_Reference_Manual_V10.0.0.pdf}, year = {2018}, urldate = {2018-05-12} } % STM32 @online{stm-vcom, author = STM, title = {STSW-STM32102: STM32 Virtual COM Port Driver}, url = {http://www.st.com/en/development-tools/stsw-stm32102.html}, urldate = {2018-05-17} } @techreport{stm-timer-coockbook, author = STM, title = {AN4776: General-purpose timer cookbook}, year = {2017}, url = {http://www.st.com/resource/en/application_note/dm00236305.pdf}, urldate = {2018-05-12} } @techreport{stm-tsc-training, author = STM, title = {STM32L4 training: Touch Sensing Controller}, year = {2017}, url = {http://www.st.com/resource/en/product_training/stm32l4_peripheral_touchsense.pdf}, urldate = {2018-05-12} } % (couldnt find a proper link) @techreport{stm-tsc-ppt, author = STM, title = {Touch Sensing Controller (TSC) presentation}, year = {2015}, url = {https://wenku.baidu.com/view/8472044a6137ee06eef9180c.html?re=view}, urldate = {2018-05-12} } @techreport{stm-tsc-an1, author = STM, title = {AN4299: Guidelines to improve conducted noise robustness on STM32F0 Series, STM32F3 Series, STM32L0 Series and STM32L4 Series touch sensing applications}, year = {2018}, url = {http://www.st.com/resource/en/application_note/dm00085385.pdf}, urldate = {2018-05-12} } @techreport{stm-tsc-an2, author = STM, title = {AN4310: Sampling capacitor selection guide for MCU based touch sensing applications}, year = {2015}, url = {http://www.st.com/resource/en/application_note/dm00087593.pdf}, urldate = {2018-05-12} } @techreport{stm-tsc-an3, author = STM, title = {AN4312: Guidelines for designing touch sensing applications with surface sensors}, year = {2017}, url = {http://www.st.com/resource/en/application_note/dm00087990.pdf}, urldate = {2018-05-12} } @techreport{stm-tsc-an4, author = STM, title = {AN4316: Tuning a STMTouch-based application}, year = {2015}, url = {http://www.st.com/resource/en/application_note/dm00088471.pdf}, urldate = {2018-05-12} } @techreport{sd-spec, author = {{SD Group}}, title = {SD Specifications, Part 1: Physical Layer Simplified Specification}, year = {2010}, url = {https://www.cs.utexas.edu/~simon/395t_os/resources/Part_1_Physical_Layer_Simplified_Specification_Ver_3.01_Final_100518.pdf}, urldate = {2018-05-13} } % other articles @article{all-about-dds, title={All about direct digital synthesis}, author={Murphy, Eva and Slattery, Colm}, series={Ask The Application Engineer}, volume={33}, url={http://www.analog.com/media/en/analog-dialogue/volume-38/number-3/articles/all-about-direct-digital-synthesis.pdf}, year={2004} } @techreport{understanding-i2c, author = {Jonathan Valdez, Jared Becker}, title = {Understanding the I2C Bus}, year = {2015}, url = {http://www.ti.com/lit/an/slva704/slva704.pdf}, urldate = {2018-05-12}, organization = {Texas Instruments} } @manual{i2c-spec, title = {I2C-bus specification and user manual}, author = {{NXP Semiconductors}}, url = {https://www.nxp.com/docs/en/user-guide/UM10204.pdf}, year = {2014}, urldate = {2018-05-12} } @manual{nrf-manual, title = {nRF24L01+ Single Chip 2.4GHz Transceiver Product Specification v1.0}, author = {{Nordic Semiconductor}}, url = {http://www.nordicsemi.com/eng/content/download/2726/34069/file/nRF24L01P_Product_Specification_1_0.pdf}, year = {2008}, urldate = {2018-05-12} } @manual{semtech-manual, title = {SX1276/77/78/79 datasheet}, author = {{Semtech Corporation}}, url = {https://www.semtech.com/uploads/documents/DS_SX1276-7-8-9_W_APP_V5.pdf}, year = {2016}, urldate = {2018-05-12} } @manual{f072-rm, title = {RM0091: STM32F0x1/STM32F0x2/STM32F0x8 reference manual}, author = STM, url = {http://www.st.com/resource/en/reference_manual/dm00031936.pdf}, year = {2017}, urldate = {2018-05-12} } @manual{f072-ds, title = {STM32F072x8/STM32F072xB datasheet}, author = STM, url = {http://www.st.com/resource/en/datasheet/stm32f072c8.pdf}, year = {2017}, urldate = {2018-05-12} } @manual{f103-rm, title = {RM0008: STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx reference manual}, author = STM, url = {http://www.st.com/resource/en/reference_manual/cd00171190.pdf}, year = {2009}, urldate = {2018-05-12} } @manual{f103-ds, title = {STM32F103x8/STM32F103xB datasheet}, author = STM, url = {http://www.st.com/resource/en/datasheet/CD00161566.pdf}, year = {2015}, urldate = {2018-05-12} } @online{pidcodes, title = {pid.codes, a registry of USB PID codes for open source hardware projects}, url = {http://pid.codes/}, urldate = {2018-05-12} } @online{eev-gpio-pu, author = {{EEVblog Electronics Community Forum}}, title = {Driving the 1K5 USB pull-up resistor on D+}, url = {https://www.eevblog.com/forum/projects/driving-the-1k5-usb-pull-up-resistor-on-d/}, urldate = {2018-05-12} } @online{disco-f072, author = STM, title = {Discovery kit with STM32F072RB MCU}, url = {http://www.st.com/en/evaluation-tools/32f072bdiscovery.html}, urldate = {2018-05-16} } @online{cubemx, author = STM, title = {STM32Cube initialization code generator}, url = {http://www.st.com/en/development-tools/stm32cubemx.html}, urldate = {2018-05-18} } % Figure sources @online{buspirate-product-page, author = {{Seeed Technology Co.,Ltd.}}, title = {Bus Pirate v4}, url = {https://www.seeedstudio.com/Bus-Pirate-v4-p-740.html}, urldate = {2018-05-12} } @online{buspirate, author = {Ian Lesnet}, title = {Bus Pirate}, url = {http://dangerousprototypes.com/docs/Bus_Pirate}, urldate = {2018-05-20} } @online{nidevice1, author = {{National Instruments}}, title = {I²C/SPI Interface Device}, url = {https://www.ni.com/en-gb/shop/select/i2c-spi-interface-device}, urldate = {2018-05-12} } @online{nidevice2, author = {{National Instruments}}, title = {USB-6008}, url = {http://www.ni.com/en-gb/support/model.usb-6008.html}, urldate = {2018-05-12} } @online{tphasedevice, author = {{Total Phase, Inc.}}, title = {USB-6008 product page}, url = {https://www.totalphase.com/products/aardvark-i2cspi/}, urldate = {2018-05-12} } @online{arduinodtr, author = {{NKC Electronics}}, title = {Retrofitting AutoReset feature into an old Arduino serial board}, url = {https://playground.arduino.cc/Learning/AutoResetRetrofit}, urldate = {2018-05-13} } @online{tinyframerepo, author = {Hruška, Ondřej}, title = {TinyFrame, a library for building and parsing data frames for serial interfaces}, url = {https://github.com/MightyPork/TinyFrame}, urldate = {2018-05-13} } @online{matlabpy, author = {{The MathWorks, Inc.}}, title = {Using MATLAB with Python}, url = {https://www.mathworks.com/solutions/matlab-and-python.html}, urldate = {2018-05-13} } @online{numpyscipy, author = {{SciPy developers}}, title = {SciPy.org}, url = {https://www.scipy.org/}, urldate = {2018-05-13} } @techreport{ow-datasheet, author = {{Dallas Semiconductor}}, title = {DS18S20 High Precision 1-Wire Digital Thermometer}, url = {https://datasheets.maximintegrated.com/en/ds/DS18S20.pdf}, urldate = {2018-05-13} } @techreport{ow-appnote, author = {{Dallas Semiconductor}}, title = {AN162: Interfacing the DS18X20/DS1822 1-Wire Temperature Sensor in a Micro-controller Environment}, url = {https://www.maximintegrated.com/en/app-notes/index.mvp/id/162}, urldate = {2018-05-13} } @techreport{ow-uart, author = {{Dallas Semiconductor}}, title = {AN214: Using a UART to Implement a 1-Wire Bus Master}, url = {https://www.maximintegrated.com/en/app-notes/index.mvp/id/214}, urldate = {2018-05-13} } @techreport{neopixel-ds, author = {{Worldsemi}}, title = {WS2812B datasheet}, url = {www.world-semi.com/DownLoadFile/108}, urldate = {2018-05-13} } @techreport{adc-sar, author = {{Maxim Integrated}}, title = {AN1080: Understanding SAR ADCs: Their Architecture and Comparison with Other ADCs}, year = {2001}, url = {https://pdfserv.maximintegrated.com/en/an/AN1080.pdf}, urldate = {2018-05-13} } @techreport{fcap-twotypes, author = {{SiTime Corporation}}, title = {AN10033: Frequency Measurement Guidelines for Oscillators}, url = {https://www.sitime.com/api/gated/AN10033-Frequency-Measurement-Guidelines-for-Oscillators.pdf}, urldate = {2018-05-13} } @inproceedings{fcap-increasing, author = {Paul Boven}, booktitle = {Proceedings of the 50. VHF meeting in Weinheim}, title = {Increasing the resolution of reciprocal frequency counters}, url = {https://www.febo.com/pipermail/time-nuts/attachments/20071201/e7833af5/attachment.pdf}, urldate = {2018-05-13} } @ARTICLE{floatpaper, journal={IEEE Std 754-2008}, title={IEEE Standard for Floating-Point Arithmetic}, year={2008}, pages={1-70}, keywords={IEEE standards;floating point arithmetic;programming;IEEE standard;arithmetic formats;computer programming;decimal floating-point arithmetic;754-2008;NaN;arithmetic;binary;computer;decimal;exponent;floating-point;format;interchange;number;rounding;significand;subnormal}, doi={10.1109/IEEESTD.2008.4610935} } @online{piheader, author = {{Raspberry Pi Foundation}}, title = {GPIO - Raspberry Pi Documentation}, url = {https://www.raspberrypi.org/documentation/usage/gpio/README.md}, urldate = {2018-05-19} } @online{piheaderxyz, author = {Phil Howard}, title = {Raspberry Pi GPIO Pinout interactive diagram}, url = {https://pinout.xyz/}, urldate = {2018-05-19} } @online{gex-gh, title = {GEX USB GPIO platform source code repository}, author = {Ondřej Hruška}, url = {https://github.com/gexpander}, year = {2018}, urldate = {2018-05-21} }