Awesome-Embedded/README.md

270 lines
18 KiB
Markdown
Raw Normal View History

2017-09-24 09:23:36 +07:00
# Awesome-Embedded
2018-07-07 19:00:33 +07:00
2017-09-24 10:38:06 +07:00
A curated list of awesome embedded resource.
2017-09-24 09:25:15 +07:00
2017-10-13 13:56:56 +07:00
Table of content
2018-07-06 10:03:37 +07:00
* [Interview](#interview)
* [Embedded Software Skill](#embedded-software-skill)
* [Common](#common)
2018-07-06 09:31:26 +07:00
* [Microcontroller](#mcu-programming)
2018-07-07 19:00:33 +07:00
* [TM4C123](#tm4c123)
* [STM32](#stm32)
* [MSP430](#msp430)
* [MSP432](#msp432)
* [STM8](#stm8)
2018-07-06 10:03:37 +07:00
* [Raspberry](#raspberry)
* [Bealgebone](#beaglebone)
2018-07-06 11:00:43 +07:00
* [Assembly](#assembly)
2018-07-06 10:03:37 +07:00
* [Linux Programming](#linux-programming)
* [RTOS](#rtos)
2018-07-06 14:37:56 +07:00
* [AUTOSAR](#autosar)
2018-07-06 11:00:43 +07:00
* [OS](#os)
* [Compiler](#compiler)
* [Bootloader](#bootloader)
2018-07-06 14:43:11 +07:00
* [Makefile](#makefile)
2018-07-06 11:00:43 +07:00
* [Others](#ohers)
2018-07-06 10:03:37 +07:00
* [Tips & tricks](#tips-&-tricks)
* [FAQ - Embedded](#faq_embedded)
2017-10-13 13:56:56 +07:00
2017-09-24 09:25:15 +07:00
## Interview
* [Questions which are frequently asked in an interview.](https://github.com/Embedded-Systems-Guide/interview-questions)
2017-09-24 10:38:06 +07:00
> On the way to be a full-stack embedded software engineer.
2017-09-24 09:56:01 +07:00
## Embedded Software Skill
* [Skills/Knowledge required to become a champion Embedded Software Developer.](https://github.com/Embedded-Systems-Guide/embedded-software-skills)
2018-07-06 11:00:43 +07:00
* [How to be low-level programmer](https://github.com/gurugio/lowlevelprogramming-university)
2018-07-06 11:03:47 +07:00
* [Programmer Competency Matrix](http://sijinjoseph.com/programmer-competency-matrix/)
2017-09-24 09:56:01 +07:00
2017-09-24 13:51:12 +07:00
## Common
2017-09-25 10:47:52 +07:00
* [Integer size in C on 32-bit and 64-bit system](https://usrmisc.wordpress.com/2012/12/27/integer-sizes-in-c-on-32-bit-and-64-bit-linux/)
2017-10-13 13:56:56 +07:00
* [TeraTerm - TTL command reference](http://ttssh2.osdn.jp/manual/en/macro/command/index.html)
* [TeraTerm Scripts](http://processors.wiki.ti.com/index.php/Teraterm_Scripts)
2018-07-06 10:23:36 +07:00
* [Linker Command File Primer](http://processors.wiki.ti.com/index.php/Linker_Command_File_Primer)
2018-07-06 11:00:43 +07:00
* [The C build process](https://blog.feabhas.com/2012/06/the-c-build-process/)
* [Building Bare-Metal ARM Systems with GNU](https://www.embedded.com/design/mcus-processors-and-socs/4026111/Building-Bare-Metal-ARM-Systems-with-GNU-Part-9)
* [ELF Executable and Linkable Format](https://2wisebit.wordpress.com/2018/06/08/elf-executable-and-linkable-format/)
2018-07-06 11:28:33 +07:00
* [Toolchains](https://web.eecs.umich.edu/~prabal/teaching/resources/eecs373/toolchain-notes.pdf)
* [What is an application binary interface (ABI)?](https://stackoverflow.com/questions/2171177/what-is-an-application-binary-interface-abi)
2018-07-07 19:00:33 +07:00
* [ARM Cortex M4 Blink Example (Linker Script)](http://robotics.mcmanis.com/src/arm-blink/linker-script.html)
2018-07-06 11:28:33 +07:00
* [A Sample Linker Script](http://hertaville.com/a-sample-linker-script.html)
* [Linking and Loading](http://www.iecc.com/linker/linker01.html)
* [Embedded Software _ Getting started](http://www2.thu.edu.tw/~emtools/DOE_project/NCCU/embedded%20system/ESD_06_GettingStarted.pdf)
* [How to convert from an armlink scatter file to a GNU ld linker script](https://www.mayrhofer.eu.org/node/24)
* [Using the GNU Linker](https://www.math.utah.edu/docs/info/ld_3.html)
2017-09-25 10:47:52 +07:00
2018-07-06 09:28:33 +07:00
## MCU programming
2017-09-24 09:56:01 +07:00
2018-07-06 11:21:27 +07:00
### Bare-metal programming (Don't need MCU)
* [Simplest bare metal program for ARM](https://balau82.wordpress.com/2010/02/14/simplest-bare-metal-program-for-arm/) ([table of content](https://balau82.wordpress.com/arm-emulation/))
2018-07-06 10:23:36 +07:00
### MSP430
2018-07-07 19:00:33 +07:00
2017-09-26 22:41:42 +07:00
* [MSP430-GCC](http://www.simplyembedded.org/tutorials/setting-up-a-virtual-machine/)
2018-07-06 10:23:36 +07:00
### TM4C123
2018-07-07 19:00:33 +07:00
2018-07-06 10:23:36 +07:00
* [Analog to Digital Conversion, Data Acquisition and Control](http://users.ece.utexas.edu/~valvano/Volume1/E-Book/C14_ADCdataAcquisition.htm)
* [Embedded Systems - Shape The World](http://users.ece.utexas.edu/~valvano/Volume1/E-Book/)
* [HowTo: Develop on the TI Tiva LaunchPad using Linux](http://chrisrm.com/howto-develop-on-the-ti-tiva-launchpad-using-linux/)
2018-07-07 19:00:33 +07:00
* [Linux command line build system to generate binaries for TM4C123 (ARM Cortex M4)](https://github.com/pitankar/TM4C)
* [The complete tutorial for Stellaris LaunchPad development with GNU/Linux (I)](http://kernelhacks.blogspot.com/2012/11/the-complete-tutorial-for-stellaris.html)
2018-07-06 10:23:36 +07:00
* [Getting Started with the TI Stellaris LaunchPad on Linux](https://www.jann.cc/2012/12/11/getting_started_with_the_ti_stellaris_launchpad_on_linux.html)
* [Embedded Systems with TM4C123 @Valvano](http://users.ece.utexas.edu/~valvano/arm/)
2018-07-09 11:28:04 +07:00
* [Create FreeRTOS Demo Project using the GCC Compiler](http://shukra.cedt.iisc.ernet.in/edwiki/EmSys:Create_freertos_on_tm4c123_CCS_Project)
2018-07-09 14:51:37 +07:00
* [Serial bootloader on TM4C12x Microcontroller](http://www.ti.com/lit/an/spma074a/spma074a.pdf)
2018-07-09 15:14:35 +07:00
* [Tivaware bootloader](http://www.ti.com/lit/ug/spmu301d/spmu301d.pdf)
2018-07-06 10:23:36 +07:00
### MSP432
2018-07-09 14:51:37 +07:00
* [TBD](#)
2018-07-06 10:23:36 +07:00
### STM32
2018-07-07 19:00:33 +07:00
2018-07-06 10:23:36 +07:00
* [STM32 bootloader](http://ciesie.com/ks_stm32_bootloader.html)
2018-07-06 11:00:43 +07:00
* [Tests to program STM32 Nucleo in C with GCC ARM embedded toolchain and libopencm3](https://github.com/balau/nucleo_tests)
2018-07-07 19:00:33 +07:00
* [A demo project of FreeRTOS running on a STM32F4 Discovery board.](https://github.com/wangyeee/STM32F4-FreeRTOS)
2018-07-06 14:33:23 +07:00
* [DFU Bootloader for STM32 chips](https://github.com/devanlai/dapboot)
2018-07-08 16:16:39 +07:00
* [Customizable Bootloader for STM32 microcontrollers.](https://github.com/akospasztor/stm32-bootloader)
* [Lightweight USB device Stack for STM32 microcontrollers](https://github.com/dmitrystu/libusb_stm32)
* [STM32 programming with Embedded GNU Compiler](https://github.com/rowol/stm32_discovery_arm_gcc)
* [A tiny portable 3D graphics lib for micro controllers (Oled display)](https://github.com/avem-labs/ol3d)
2018-07-09 10:57:46 +07:00
* [Getting started with the STM32F4-Discovery board using the EmBitz IDE](https://github.com/RoanFourie/STM32F4-DISCO-EMBITZ-Blinky)
* [libopencm3 and FreeRTOS projects using the STM32F103C8T6 MCU](https://github.com/ve3wwg/stm32f103c8t6)
* [A template for builting STM23F0 ARM projects with GCC](https://github.com/szczys/stm32f0-discovery-basic-template)
* [Open source flash program for STM32 using the ST serial bootloader](https://sourceforge.net/projects/stm32flash/)
2018-07-06 10:23:36 +07:00
### STM8
2018-07-09 14:51:37 +07:00
* [TBD](#)
2018-07-06 09:59:38 +07:00
## Raspberry
* [ChibiOS/RT on the Raspberry Pi](https://www.stevebate.net/chibios-rpi/GettingStarted.html)
2018-07-07 19:00:33 +07:00
* [Raspberry Pi ARM based bare metal examples](https://github.com/dwelch67/raspberrypi)
* [Bare metal Raspberry Pi 3 tutorials](https://github.com/bztsrc/raspi3-tutorial)
2018-07-06 09:59:38 +07:00
* [Open Projects: Raspberry, Beaglebone BSP](https://devel.rtems.org/wiki/Developer/OpenProjects)
* [A Real-Time Operating System on the Raspberry Pi](http://www.pebblebay.com/raspberry-pi-embedded/)
* [A port of FreeRTOS to the raspberry pi](https://github.com/jameswalmsley/RaspberryPi-FreeRTOS)
* [FreeRTOS Sucessfully Ported](https://www.raspberrypi.org/forums/viewtopic.php?f=72&t=22423)
* [Exploring AArch64 assembler - Raspberry](https://thinkingeek.com/2016/10/08/exploring-aarch64-assembler-chapter1/)
* [A bootloader for the Raspberry Pi using the ethernet device](https://github.com/Nvreformat/Etherboot)
* [Bare Metal Raspberry Pi](https://taylorpetrick.com/blog/post/bare-metal-pi-setup)
2018-07-08 11:29:31 +07:00
* [Bare Metal Programming in C](http://www.valvers.com/open-software/raspberry-pi/step01-bare-metal-programming-in-cpt1/)
2018-07-06 09:59:38 +07:00
* [Baking Pi Operating Systems Development](https://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/os/)
* [Search for 'Raspberry' topic on Github](https://github.com/topics/raspberry-pi-3?l=c)
* [elinux: Raspberry Pi Programming](https://elinux.org/Raspberry_Pi_Programming) or [elinux: RPi Hub](https://elinux.org/RPi_Hub)
* [Stanford CS104e - An Experimental Course on Operating Systems](https://web.stanford.edu/class/cs140e/)
2018-07-06 10:23:36 +07:00
* [Computer Systems](http://cs107e.github.io/)
2018-07-06 14:33:23 +07:00
* [Build a Debian-based ARM64 system for Raspberry Pi 3](https://github.com/UMRnInside/RPi-arm64)
2018-07-07 19:00:33 +07:00
* [Learning operating system development using Linux kernel and Raspberry Pi](https://github.com/s-matyukevich/raspberry-pi-os)
* [A port of FreeRTOS to the raspberry pi 2B. With USB+Ethernet+TCP/IP.](https://github.com/Forty-Tw0/RaspberryPi-FreeRTOS)
2018-07-06 14:33:23 +07:00
* [64-bit Tiano Core UEFI for the Raspberry Pi 3](https://github.com/andreiw/RaspberryPiPkg)
* [CXCORE-RaspberryPi3-ubuntu-18.04-aarch64](https://github.com/chainsx/ubuntu64-rpi#cxcore-raspberrypi3-ubuntu-1804-aarch64--)
2018-07-07 19:00:33 +07:00
* [Sample source: Baremetal source code for Raspberry](https://github.com/LdB-ECM/Raspberry-Pi)
2018-07-08 11:29:31 +07:00
* [Sample source: NarcOS - A bare metal ultralight kernel for Raspberry Pi 3](https://github.com/forkachild/NarcOS)
* [Sample source: FreeRTOS v9.0.0 port for Raspberry Pi 1](https://github.com/leodido99/RaspberryPi1-FreeRTOSv9.0.0)
* [Sample source: A bare-metal experiments with the RaspberryPi](https://github.com/majorviraj/my-os)
* [「BareMetalで遊ぶ Raspberry Pi」のプログラムです。](https://github.com/jitomesky/RPi_Micon_C85book)
2018-07-08 16:16:39 +07:00
* [UEFI for RaspberryPi2 and RaspberryPi3 based on Linaro EDK2](https://github.com/ms-iot/RPi-UEFI)
* [ARM-episodes](https://github.com/invictus1306/ARM-episodes) & [ARM exploitation for IoT](https://quequero.org/2017/07/arm-exploitation-iot-episode-1/)
* [ARM shellcode and exploit development - BSidesMunich 2018](https://github.com/invictus1306/Workshop-BSidesMunich2018)
2018-07-09 00:21:43 +07:00
* [64 bit Bare Metal Programming on RPI-3](https://archive.fosdem.org/2017/schedule/event/programming_rpi3/attachments/slides/1475/export/events/attachments/programming_rpi3/slides/1475/bare_metal_rpi3.pdf)
* [Raspberry Pi 3 Bare Metal](https://adamransom.github.io/posts/raspberry-pi-bare-metal-part-1.html)
2018-07-06 09:59:38 +07:00
## Beaglebone
* [BeagleBone Black I2C References](https://datko.net/2013/11/03/bbb_i2c/)
* [Learning BeagleBone Python Programming](https://hub.packtpub.com/learning-beaglebone-python-programming/)
2018-07-07 19:00:33 +07:00
* [Simple implementation of an OS for the BeagleBoard C4 with ARMv7 A8 processor.](https://github.com/Oxydation/MinionOS)
* [Various projects that utilize low level hardware instructions to interface with leds, speaker output and joystick input.](https://github.com/travelln/beaglebone-projects)
2018-07-08 16:16:39 +07:00
* [Windows Embedded Compact BSP for TI's Beaglebone](https://github.com/dvescovi1/WECBeagleBone)
2018-07-09 00:21:43 +07:00
* [BBB-BareMetal](https://github.com/allexoll/BBB-BareMetal)- Works on the beaglebone black (bare metal)
* [Running a Baremetal Beaglebone Black](https://www.twosixlabs.com/running-a-baremetal-beaglebone-black-part-1/) & [Part 2](https://www.twosixlabs.com/running-a-baremetal-beaglebone-black-part-2/)
* [Bare Metal on the BeagleBone (Black and Green)](https://www.cs.sfu.ca/CourseCentral/433/bfraser/other/BareMetalGuide.pdf) & [link1](https://www.cs.sfu.ca/CourseCentral/433/bfraser/other/) + [Link2](https://www.cs.sfu.ca/CourseCentral/433/bfraser/weekly.html)
* [A tutorial on bare-metal [OS] development on the Texas Instruments BeagleBoard.](https://wiki.osdev.org/ARM_Beagleboard)
* [bare metal c project for beaglebone, ti sitara am335x](https://github.com/0xCA5A/kickstart/tree/master/beaglebone/bare_metal_hello_world)
* [Bare Metal Applications on OSD335x using U-Boot](https://octavosystems.com/app_notes/bare-metal-on-osd335x-using-u-boot/#_Toc382081430)
2017-09-24 13:51:12 +07:00
2017-09-24 09:56:01 +07:00
## Linux Programming
* [Writing device drivers in Linux](http://freesoftwaremagazine.com/articles/drivers_linux/)
2018-07-06 11:00:43 +07:00
* [YOLINUX Tutorials](http://www.yolinux.com/TUTORIALS/)
* [Linux driver programming](https://sites.google.com/site/embedded247/ddcourse)
* [Free training materials and conference presentations](https://bootlin.com/docs/)
2018-07-06 11:06:20 +07:00
* [eBook: Linux Drivers](https://sysplay.github.io/books/LinuxDrivers/book/index.html) or [Slides: Linux Drivers](https://sysplay.in/index.php?pagefile=linux_drivers)
2018-07-08 23:39:36 +07:00
* Community: [OpenEmbedded](http://www.openembedded.org/wiki/Main_Page),
2018-07-06 11:00:43 +07:00
## Assembly
* [GCC-Inline-Assembly-HOWTO](https://www.ibiblio.org/gferg/ldp/GCC-Inline-Assembly-HOWTO.html)
2018-07-06 11:28:33 +07:00
* [Assembly programming](https://courses.cs.washington.edu/courses/cse351/17sp/lectures/CSE351-L07-asm-I_17sp-ink.pdf)
2017-09-24 09:56:01 +07:00
2018-07-06 09:28:33 +07:00
## RTOS
2017-10-08 00:02:25 +07:00
* [ROS](http://www.ros.org/)
2018-07-06 10:23:36 +07:00
* [FreeRTOS](freertos.org)
* [FreeRTOS - Explaination](http://www.aosabook.org/en/freertos.html)
* [FreeRTOS API Reference Documentation](http://web.ist.utl.pt/~ist11993/FRTOS-API/index.html)
2018-07-06 09:28:33 +07:00
* [How to Write a Small RTOS](https://larrylisky.com/2012/07/14/how-to-create-a-small-rtos/)
* [RTOS From Scrach](https://github.com/RTOS-From-Scratch)
* [Writing a simple operating system from scratch](https://www.cs.bham.ac.uk/~exr/lectures/opsys/10_11/lectures/os-dev.pdf)
* [Free real-time operating system (RTOS) designed for deeply embedded applications](https://github.com/stateos/StateOS)
* [MPSoC FreeRTOS Development](http://www.wiki.xilinx.com/MPSoC+FreeRTOS+Development)
* [Atomthreads: Open Source RTOS](https://atomthreads.com/)
* [High performance motor control](https://github.com/madcowswe/ODrive)
* [MINIX3: Open source RTOS](http://www.minix3.org/)
2018-07-06 11:00:43 +07:00
* [30 Days make OS](https://github.com/yourtion/30dayMakeOS) --> [YOS](https://github.com/yourtion/YOS) @[Yannik](https://yannik520.github.io/)
2018-07-08 23:39:36 +07:00
* Community: [OSDEV.org](https://wiki.osdev.org/Main_Page), [reddit/osdev](https://www.reddit.com/r/osdev/)
2018-07-06 11:00:43 +07:00
* [Real-time System Group](https://www.cs.york.ac.uk/rts/)
2018-07-06 14:33:23 +07:00
* [object-oriented C++ RTOS for microcontrollers](https://github.com/DISTORTEC/distortos)
* [RT-Thread is an open source IoT operating system from China.](https://github.com/RT-Thread/rt-thread)
2018-07-07 19:00:33 +07:00
* [How to create an OS from scratch](https://github.com/cfenollosa/os-tutorial)
2018-07-07 18:45:06 +07:00
* [Sample Source: TetrOS is a small feature rich Tetris clone which is written in Assembly.](https://github.com/daniel-e/tetros)
* [Sample Source: RTOS for microcontrollers](https://github.com/jimtremblay/nOS)
* [Sample Source: A Powerful embedded RTOS for ARM Cortex M microcontrollers](https://github.com/StratifyLabs/StratifyOS)
* [Sample Source: An embedded operating system for ARM Cortex-M based microcontrollers](https://github.com/onkwon/yaos)
* [Sample Source: rnk is a RTOS targeting ARM architecture.](https://github.com/raphui/rnk)
* [Sample Source: RTOS-From-Scratch](https://github.com/RTOS-From-Scratch/RTOS-From-Scratch)
2018-07-08 11:29:31 +07:00
* [Sample Source: Embeded OS for PIC32MX270F256B](https://github.com/envzhu/kozos-pic)
2018-07-08 16:16:39 +07:00
* [How I ended up writing a new real-time kernel](https://dmitryfrank.com/articles/how_i_ended_up_writing_my_own_kernel)
* [Sample Source: TNeo - a well-formed and carefully tested preemptive real-time kernel for 16- and 32-bits MCUs](https://github.com/dimonomid/tneo)
* [yaos is an embedded operating system for Internet of Things(IoT) devices, specifically for a single-core processor without MMU virtualization.](https://github.com/onkwon/yaos)
2018-07-06 11:00:43 +07:00
2018-07-06 14:37:56 +07:00
## AUTOSAR
2018-07-08 16:16:39 +07:00
* [Sample Source: Trampoline is a static RTOS for small embedded systems.](https://github.com/TrampolineRTOS/trampoline) & [labs](http://www.irccyn.ec-nantes.fr/~bechenne/trampoline-labs/)
* [Sample source: An integration an example AUTOSAR project which every part in AUTOSAR (OS, RTE, BSW, MCAL) are collected from different open source.](https://github.com/leduynguyen/My_AUTOSAR_Project)
2018-07-06 14:37:56 +07:00
2018-07-06 11:00:43 +07:00
## OS
* [ucLinux](http://www.uclinux.org/): The Embedded Linux/Microcontroller project is a port of Linux to systems without a Memory Management Unit (MMU).
* [Tizen](https://www.elinux.org/Tizen)
2018-07-08 23:39:36 +07:00
* [Bootstrap yourself to write an OS from scratch. A book for self-learner.](https://github.com/tuhdo/os01)
* [Kernel 101 Lets write a Kernel](https://arjunsreedharan.org/post/82710718100/kernel-101-lets-write-a-kernel)
2018-07-06 11:00:43 +07:00
## Compiler
* [ARM Compiler - armasm User Guide](https://static.docs.arm.com/dui0801/i/DUI0801I_armasm_user_guide.pdf)
## Bootloader
* [Writing a boot loader in Assembly and C](https://www.codeproject.com/Articles/664165/Writing-a-boot-loader-in-Assembly-and-C-Part)
* [Writing a Bootloader Part 3](http://3zanders.co.uk/2017/10/18/writing-a-bootloader3/)
2018-07-08 16:16:39 +07:00
* [A bootloader for ARM Cortex-M based microcontrollers](https://github.com/onkwon/yaboot)
* [ARMv7M ELF loader ](https://github.com/martinribelotta/elfloader)
2018-07-08 23:39:36 +07:00
* [Writing a Bootloader Part 1](http://3zanders.co.uk/2017/10/13/writing-a-bootloader/)
2018-07-06 09:28:33 +07:00
2018-07-06 14:43:11 +07:00
## Makefile
* [Managing projects with GNU Make](http://uploads.mitechie.com/books/Managing_Projects_with_GNU_Make_Third_Edition.pdf)
* [GCC and Make](https://www3.ntu.edu.sg/home/ehchua/programming/cpp/gcc_make.html)
2018-07-09 14:01:40 +07:00
## Peripheral
### Memory Protection Unit
* [Building Hardware Components for Memory Protection of Applications on a Tiny Processor](https://carrv.github.io/2017/papers/oh-mpu-carrv2017.pdf)
* [KeyStone Architecture: Memory Protection Unit (MPU)](http://www.ti.com/lit/ug/sprugw5a/sprugw5a.pdf)
2018-07-06 09:28:33 +07:00
## Others
2018-07-06 10:23:36 +07:00
* [A practical approach to Kalman filter and how to implement it](http://blog.tkjelectronics.dk/2012/09/a-practical-approach-to-kalman-filter-and-how-to-implement-it/)
2018-07-06 11:00:43 +07:00
* [Embedded System programming](http://www.5square.in/): Diving into Syllabus for investigation.
* [ELC 2018 Presentations](https://elinux.org/ELC_2018_Presentations)
2018-07-07 19:00:33 +07:00
* [ARM Edition](https://sparkylinux.org/wiki/doku.php/sparky_arm): Sparky ARM Edition is a Sparky version created for a single board mini computer RaspberryPi.
2018-07-06 11:00:43 +07:00
* [The gem5 Simulator](https://developer.arm.com/research/research-enablement/system-modeling) is a well-known sophisticated simulator used for computer system research at both architecture and micro-architecture levels. Main page is [here](http://gem5.org/Main_Page).
* [LineageOS Android Distribution](https://github.com/LineageOS)
* [The NoCAN platform](http://omzlo.com/articles/the-nocan-platform)
2018-07-06 11:03:47 +07:00
* [Realtime OS on Embedded Systems](http://socialledge.com/sjsu/index.php/Realtime_OS_on_Embedded_Systems)
2018-07-07 19:00:33 +07:00
* [These projects were produced in the five weeks of ECE 4760 each year.](https://people.ece.cornell.edu/land/courses/ece4760/FinalProjects/)
2018-07-06 14:37:56 +07:00
* [Advanced fault backtrace library for ARM Cortex-M series MCU](https://github.com/armink/CmBacktrace)
2017-10-08 00:02:25 +07:00
2017-09-24 09:56:01 +07:00
## Tips & tricks
* [Awesome Cheat Sheets](https://github.com/mintisan/awesome-cheat-sheets/blob/master/README.md)
> Awesome Cheat Sheets for Developer Utility, like Git, Vim , Tmux, SublimeText, Markdown, Shell.
* [Vim Config for Reading Linux Kernel Source Code](https://github.com/mintisan/oh-my-vim)
2017-09-24 13:51:12 +07:00
2018-07-06 09:31:26 +07:00
## FAQ_Embedded
* [Boot section is removed (gcc, ld, ar, as)](https://www.embeddedrelated.com/showthread/lpc2000/47841-1.php)
2018-07-09 10:57:46 +07:00
* [What are .axf files?](https://stackoverflow.com/questions/17761328/what-are-axf-files)
2018-07-06 09:31:26 +07:00
2018-07-08 23:39:36 +07:00
## Looking for more lists like this?
2018-07-07 19:00:33 +07:00
2018-07-08 23:39:36 +07:00
* [A curated list of project-based tutorials in C](https://github.com/rby90/Project-Based-Tutorials-in-C)
* [Curated list of project-based tutorials](https://github.com/tuvtran/project-based-learning)
* [Curated list of awesome lists](https://github.com/sindresorhus/awesome)
* [A curated list of awesome Raspberry Pi tools, projects, images and resources](https://github.com/thibmaek/awesome-raspberry-pi)
2018-07-09 10:57:46 +07:00
* [Curated List of Self-Driving Cars and Autonomous Vehicles Resources](https://github.com/takeitallsource/awesome-autonomous-vehicles)
## BOOKs
2018-07-09 11:28:04 +07:00
* [Mastering the Raspberry Pi](http://mensshed-llandudno.co.uk/wp-content/uploads/Mastering%20the%20Raspberry%20Pi.pdf)