Git Product home page Git Product logo

embsys's Introduction

EMBSYS

This repository stores my lectures and labs on GNU/Linux for embedded systems with some reminders in system programming.

Lectures

Lectures are separated in several parts:

  • Introduction : licenses, POSIX, opensource vs free software, ...
  • Linux System Programming : processus, pthread, signals, mutex, IPC, ...
  • Kernel architectures and Linux module programming
  • Bus and communication devices : PCI, I2C, RS232, ...
  • Memory and file system
  • Embedded systems tools and compilation steps : busybox, buildroot, yocto, uboot

Labs

Several exercises are available :

  • GNU/Linux System Programming
  • Embedded system with RPI3
  • Usefool Tools (autotools, docker, git, ...)

embsys's People

Contributors

alexandrecourjaud avatar matthix7 avatar pblottiere avatar simall avatar supercelll avatar yoannguguen avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

embsys's Issues

rpi3 qemu Chroot exec format error in docker

binfmt-support doit être installé sur l'hôte avec la commande
sudo apt-get install binfmt-support

il faut aussi faire
update-binfmts --enable qemu-arm
avant de faire le
chroot . bin/busybox ash

Partie 2 - erreur question 1

La question devrait plutôt être: "À quoi sert l'option --privileged lors du lancement d'un nouveau conteneur Docker?".

rpi3 flash_uboot

Il y a deux problèmes lors de ce TP:

---- > Dans la documentation(https://components101.com/microcontrollers/raspberry-pi-3-pinout-features-datasheet) de la RPI3, les ports TX et RX sont spécifiés sur les ports GPIO 14 & 15. Il faut les inverser sinon rien ne marche.

----- > Lorsqu'on allume gtkterm qu'on spécifie le bon baudrate et le bon port pour lire les données de l'adaptateur USB/TTL, l'erreur " Le device /dev/ttyUSBX est vérouillé." peut apparaître. Pour le régler, il suffit de taper la commande : "fuser -k /dev/ttyUSBX" , puis de relancer nos manipulations, tout devrait marcher correctement après ça.
MAIS ATTENTION : fuser tue tout processus actif sur le périphérique spécifié, cette commande peut donc être un peu radical.

Segmentation fault miniserver tp autotools

Ubuntu 18.04 LTS

./src/miniserver/miniserver 
Server is listening...
*** buffer overflow detected ***: ./src/miniserver/miniserver terminated
Aborted (core dumped)
 ./client 192.168.43.250:5000 "hello"

shm_reader

TP3
exercice 2

Juste après la question 6

"Placez vous maintenant dans le répertoire 2_sysprog_part2/src/shm_reader"
De quel répertoire s'agit-il ?
il n'existe pas dans le projet

qemu.md - erreur lors du lancement du docker avec --add-cap=SYS_ADMIN

J'ai eu une erreur lors du lancement du docker via la commande docker run -it --cap-add=SYS_ADMIN pblottiere/embsys-rpi3-buildroot /bin/bash : les droits d'accès ne m'ont pas été accordés.
Cela est probablement du au fait que j'ai du lancer mon docker en mode sudo.

Pour régler ce problème, il est donc possible de lancer la commande docker run -it --privileged pblottiere/embsys-rpi3-buildroot /bin/bash qui permet de bypasser ce problème, mais donne plus d'accès sur la machine.

Il est probablement possible de régler ce problème en accordant les droits sur docker via la commande useradd -g docker $USER ou en modifiant directement le fichier /etc/group.

Problème I2C - fichier bme280.md

Pour le fichier bme280.md / partie sur l'I2C :

Il faudrait rajouter le support I2C sur l'image uBoot de la partie précédente intitulée flash_uboot.

New paths since the last change in folder's names

You've changed names of some folders (mostly in the labs, with "1_sysprog_part1" becoming "sysprog_part1" for example) so that the path inside your labs in .pdf files (as an indication for some questions) are different from the actuals ones.

Code in the slides

It is hard to read. Maybe the font should be bigger. Also avoid using the pink color on syntax highlight.
Thanks :)

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.