显示标签为“LFS LINUX”的博文。显示所有博文
显示标签为“LFS LINUX”的博文。显示所有博文

2011年8月10日星期三

AMCC 1.0 release

I am happy to announce that AMCC 1.0 is coming, have fun!
AMCC github









/*
* AMCC (Anders Ma Copter Control)
* (www.andersma.net)
*/


General Information
===================

AMCC is an utility for copter development.
With AMCC you can monitor copter's sensors data, you can use sensors data
to develop flight control algorithm. In the future, you can use AMCC to
config and operate copter.

Licensing
=========

AMCC is released under BSD license.

Requirements
============

To compile AMCC, you must install following packages:

* libgtk2.0-dev
* libgtkglext1-dev
* freeglut3-dev
* lib3ds-dev
* libxml2-dev

HOW-TO
============

To use AMCC to monitor/control copter, copter must support AMCC protocol, How?

1) Copter MCU software must contain following code and linked with src/packet.c:

#include "packet.h"

char buffer[50];
packet_t p;

p.type = ANALOG_DATA_RESPONSE;
p.raw.analog_data.channel_number = 6;
p.raw.analog_data.value[0] = accx; /* accelerometer X axes data got from ADC */
p.raw.analog_data.value[1] = accy; /* accelerometer Y axes data got from ADC */
p.raw.analog_data.value[2] = accz; /* accelerometer Z axes data got from ADC */
p.raw.analog_data.value[3] = gyrox; /* gyroscope X axes data got from ADC */
p.raw.analog_data.value[4] = gyroy; /* gyroscope Y axes data got from ADC */
p.raw.analog_data.value[5] = gyroz; /* gyroscope Z axes data got from ADC */

packet_encode(&p);
memcpy(buffer, &p.data, p.data_length);
txd_buffer[p.data_length] = 0;
printf("%s", buffer); /* output data over serial port */

2)connecting PC with copter as below:

[PC] ---serial line----- [Copter]

3) #./amcc -d /dev/SERIALDEV -s SPEED
(replace SERIALDEV and SPEED according your environment, default is ttyUSB0, 57600)

4) Click menuitem "Monitor->Start", if copter is sending sensors data, AMCC will draw Acc & Gyro voltage graph and render 3D copter.



2011年6月16日星期四

LFS 纪念

今天已经成功将LFS Linux放到了U盘。从5月初下载源码包,到今天也一个多月了。断断续续的在复制粘贴着命令,初步统计为此计划耗时应该在20小时左右。20小时的工作,我分散到了一个月做,不是我有耐力,而是有用一个poor/short记忆力,总想不起来此事。:-(

目前LFS Linux进入Shell大概需要20s,速度有些慢,主要时间是花在从U盘拷贝 kernel到RAM。后续还需要多多折腾。

我所使用的是LFS 6.8 http://www.linuxfromscratch.org/lfs/downloads/stable/LFS-BOOK-6.8-HTML.tar.bz2 只要从头到尾做,基本可以确定会顺利启动属于你自己的Linux。期间唯一遇到的问题是Kernel无法挂载ROOT文件系统,主要是没包含NVidia的SATA驱动,去Menuconig打*瞬间解决。出于对GRUB的恐惧,没有在机器大硬盘折腾GRUB,只在grub.cfg加个选项,用原有硬盘GRUB启动我的LFS Linux。

为了制作U盘版本,首先fdisk new a primary partition which is bootable,然后将GRUB放到U盘中。大致命令如下:

#
#sudo mount /dev/sdb1 /mnt
#sudo grub-install --root-directory=/mnt /dev/sdb
#sudo grub
grub>find /boot/grub/stage1
(hd1, 0)
grub>root (hd1)
grub>setup (hd1)
#

而后干了一个比较SB的事情,去Windows下玩了这个U盘,U盘还有另一个无用分区,我在Windows下点选删除此分区,结果整个U盘的分区都被删除了,U盘变成砖头!我晕!!!!!

无奈去Linux下重新fdisk建立分区,还好我之前fdisk建立分区的尺寸是+2G,我这次也用同一参数,找回了之前的分区,数据索性还在。只是我不得不承认我很贱,为何去Windows里面折腾带有Ext3的U盘!

Windows在分区这块太过傲慢,插个自己不认识的U盘,就问你是否需要格式化,一副当带头大哥的嘴脸!Windows何时能放下傲慢?拥抱非FAT/NTFS分区?