Community
cancel
Showing results for 
Search instead for 
Did you mean: 
RElli7
New Contributor I
941 Views

Creating Help Infrastructure for Learners

The Yacto Linux distribution we have does not have man pages and other help capabilities for Linus.

- This makes sense for the embedded community, familiar with Linux.

- This is difficult for another targeted user that has the device to learn.

I tend to fall into the second category, and have an idea that I need help to implement.

Make use of the SDcard slot on the Arduino board useable as a mass storage device with a dedicated partition for (not shared with the PC like the 800 mb we have)

a) /usr/share/man and

b) /usr/share/doc

or whatever is the correct standard

Create an opkg installer package to load the appropriate data into these directories, ideally keep out bloat from unused things

Setup the proper sym links to make man pages work as in in normal Linux.

This way the regular distribution in not compromised by learners can get a solid help infrastructure, ideally the man pages and/of help documents could be kept up to date using git, but I don't know if that is feasible.

I would do this, but the specifics are out of my depth. I am willing to learn, but not sure where to start.

Regards, Irakandjii

PS I would like to mount multiple 4 gig partitions, but I have no idea how to even get started.

for example:

8 gig SDcard that becomes ... ???

800 mB, shared device,

3.2 gB partion1 = /usr/share/man, /usr/share/doc

4.0 gB partion2 = /home/me

3 Replies
GGera4
New Contributor I
73 Views

Hi Irakandjii,

I am falling in the first category and I am trying to use edison with Yocto for education. I am exploring another approach than yours, using a linux live distribution adapted to schools : http://primtux.fr/ PrimTux | La nouvelle distribution éducative basée sur Debian. Built by teachers unfortunately with an interface in french only but you may find english equivalents... The idea is to start with an existing computer booting on a linux live distribution adapted to children and displayaing all advantages of a standard linux distribution then use it to connect to the Edison on the Yocto distribution through ssh. It is possible to add a partition on the USB Key to carry Arduino IDE and any other add-on you may want to add.

In such approach you can use existing computers with any OS (without teaching it or uninstalling it) and get the same homogenous environment for all students; on top of it you need less Edisons than students. You can create as many logins as needed on the Edison (not too many of course) and you can affect pins to groups or individuals, you can use any programming language available on the Edison and be comfortable using linux user friendly developping tools then push and test code on the Edison.

I don't know if that helps but may bring new tracks for you.

Best.

RElli7
New Contributor I
73 Views

Hi Gerald

Thank you for the response, but I suspect most folks already have multiple environments connected to the Edison all of which have access to both Linux and Windows help (PDF's google etc).

The proposed idea is to make the Edison a self contained tool suitable for learning. I would think the need is even greater if you are to support multiple logins.

Ideally users would power it on, wirelessly SSH into it (iPad, Surface Pro etc,) and then have all they need to compile simple c++ programs, learn the command line, simple system tasks like install a real time clock device etc. In the case of more complex programs they would still use Eclipse or another IDE on a desktop.

By way of example:

Sorting out how to use ls "--color=tty" and the associated alias "alias ls='ls --color=tty' should be straight forward.

  • On the Edison, there is no man page for "ls" and the -h option is almost useless. (try it )
  • So a student must use an alternate machine or text in order to find out how to set the 'ls" options.
  • Why not just implement the man page? Which is normally an integral part of UNIX and its derivatives (Linux) anyway.

The microSD card slot, which was once required to load the system, now sits idle but is ideally suited for low use, large data like documentation. Why not make use of it?

I believe the SD card is actually a USB device, I just cannot figure out how to make it work as needed. It does show up in the /media directory and I can "ls" the files in it, but they seem to be installation files. Caution prevents me from playing with them. I also cannot use all of the capacity on the card, mine is a 32 gB card (old one), it would be nice to make use of it. I dunno what for ... but nice none the less.

I suspect if I can sort out how to get access to the SD cards partitions, I just need the man pager, the page data from an "appropriate distro", and some sym links. And then the hard part, scrub and maintain the data to ensure it is accurate for the Edison. ... but I am guessing.

GGera4
New Contributor I
73 Views

Hi Irakandjii,

 

I think that everything you need to compile and execute programs is inside. I have compiled mraa and upm and I am testing an mq135 module to introduce in the iupm lib. If you want to use command line and compile code it is possible.

I agree with you without man and info if you are not familiar with linux things are not easy but from what I have tested the command options are quite the same from my debian (some options are missing sometimes) and what I usually do is man command on my linux then check with command --help or command -h to check my options. Iused it for example for i2cdetect or i2cdump. The point is that there is few space on the Edison even if you add a micro-SD and it might not be the best idea to introduce "dead space" with man or info ressources that you can acces on your host, that's why I give to all my users a linux machine to access the Edison they have got the man and the info utilities without occupying space on the Edison .

Anyway to do what you intend to do I should try to copy on the microSD all the man files from Yocto or another linux distribution then insert the SD in the Arduino breakout and make a link from the SD to to /usr/share/man (that does not exist on the Edison).

For me the SD has appeared as

 

/dev/mmcblk1p1 mounted on /media/sdcard when I inserted the micro-sd

If you want to act on partition parted will do the job for you, it can be installed with opkg.

 

Good luck

 

Reply