Nathaniel,

First of all, thank you very much for all the work you have put into the 
BeagleBone and provided to the community through your Github repository. I 
am working on a robotics project using a BeagleBone Black and have 
thoroughly enjoyed using it as a hardware platform. Recently, I've been 
working towards getting a rotary encoder reading up and running using your 
eQEP method, but, being inexperienced with Linux kernel compilation, have 
run into a problem I can't seem to solve. I've made it through most of 
Derek Molloy's tutorial and patched it with your eqep script, but haven't 
figured out how to deploy the image to SD card. Instead of install_image.sh 
in the linux-dev/tools directory, all I have is install_kernel.sh. Having 
configured the system.sh MMC variable for my SD card (/dev/sdd), I run the 
script, it asks the "are you 100% sure" question, I enter "y", then it 
unmounts, displays the partitions on the card, and the script finishes 
without copying anything onto the card. Any advice or input would be 
greatly appreciated! I admit I don't really know what I'm doing, but I've 
searched and searched for an answer and haven't found one yet. 

Thanks,
Willie

On Thursday, July 25, 2013 2:38:29 AM UTC-5, Teknoman117 wrote:
>
> Its just a work in progress, but here's what I have now that its midnight. 
>  Tomorrow I'll through together some documentation, test it further, and 
> put together an API.  Essentially in its current form its a couple of 
> device tree overlays, a kernel patch (been using Robert's linux-dev 
> am33x-v3.8 kernel) which puts in the driver, and there is an example of 
> polling the position attribute.  I'll put some docs together tomorrow, I'm 
> tired.
>
> https://github.com/Teknoman117/beaglebot/tree/master/encoders
>
> Nathaniel Lewis
> CTO at E1FTW Games
> 3rd year Undergraduate, Computer Science and Engineering
> Project Manager for the Robotics Society at UC Merced
> Undergraduate Lab Technician Intern at MESA Labs
> (925) 961 7578
> [email protected] <javascript:>
>
> On Jul 24, 2013, at 12:18 PM, Nathaniel Lewis 
> <[email protected]<javascript:>> 
> wrote:
>
> I've actually put together a kernel driver for the eQEP hardware that 
> presents a poll able sysfs interface.  It plugs beautifully into the device 
> tree, and supports absolute and relative modes.  Relative resets the 
> counter and notifies a polling program based on a provided period, which 
> drives the eQEP unit timer.  I'm posting all my code to my blog and to 
> github today.
>
> - Nathaniel Lewis
>
> On Wednesday, July 24, 2013, tbh wrote:
>
>> My overall goal is like the title says: I need to read a quad encoder 
>> count, and I have a beaglebone black.  Eventually, I'll be using c++.  Any 
>> help on how to proceed or links on things I should read are appreciated.
>>
>> I've seen 3 ways of reading an encoder on the beaglebone: (1)polling 
>> GPIO 
>> pins<http://bwgz57.wordpress.com/2012/04/11/beaglebone-with-a-rotary-encoder/>,
>>  
>> (2)using interrupts in a kernel driver, and (3)using the eQEP built in to 
>> the hardware of the beaglebone SOC.  I'm interested in (3) because it seems 
>> to me that it would be the most efficient. However, it seems like most 
>> people are using (2), and I can't find a whole lot on how to do (3). 
>>
>> Here's what I have found so far in case it's useful to anyone else.
>> - the TRM for the bealgebone 
>> SOC<http://www.ti.com/lit/ug/spruh73h/spruh73h.pdf>. 
>> Section 15.4 is where the eQEP is documented.
>> - A thread 
>> here<https://groups.google.com/forum/embed/?place=forum/beagleboard&showsearch=true&showpopout=true&showtabs=true&hideforumtitle=true&parenturl=http%3A%2F%2Fbeagleboard.org%2FCommunity%2FForums#!searchin/beagleboard/quadrature/beagleboard/GzRSJYjs60M/Vs67S0SRon4J>apparently
>>  about enhancing an already working eQEP driver.
>> - A thread from the TI Community asking about linux drivers for 
>> eQEP<http://e2e.ti.com/support/arm/sitara_arm/f/791/t/276433.aspx>
>> .
>> - A wiki page from a TI presentation about using eQEP with one of their 
>> dev 
>> boards<http://processors.wiki.ti.com/index.php/Omapl137_linux_eqep_driver>
>> .
>> - Two threads with the same original post, and slightly different 
>> responses. They are a bit over my head. 
>> thread1<http://comments.gmane.org/gmane.linux.kernel.input/21481> 
>> thread2 <http://en.it-usenet.org/thread/18798/20687/>
>> - A reference in some comments on a blog 
>> post<http://bwgz57.wordpress.com/2012/04/11/beaglebone-with-a-rotary-encoder/>that
>>  they got an eQEP driver working to read a quad encoder (but without 
>> any explanation).
>>
>> I know people are working on the problem of making (3) easy to use. Is 
>> there some other link on how to do it that is eluding me?  
>>
>> If there's not, in the meantime, I'm interested in device drivers, and I 
>> think it's practical information, so I'd like to learn as much about them 
>> as I can. Perhaps I'll even get to the point where I can help the ongoing 
>> eQEP effort.  I'm rather inexperienced in driver writing, though. I've been 
>> wading through the linux device drivers book<http://lwn.net/Kernel/LDD3/>, 
>> so I guess that's a start. However, I've never recompiled my own kernel, 
>> which it looks like I'll probably have to do, and I've never even 
>> cross-compiled. Could somebody help me out with a place to start?
>>
>> In the meantime, I'll be looking at method (2). Thanks in advance.
>>
>> -- 
>> For more options, visit http://beagleboard.org/discuss
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "BeagleBoard" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>> For more options, visit https://groups.google.com/groups/opt_out.
>>  
>>  
>>
>
>

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to