Replies: 3 comments 1 reply
-
Sounds a bit like where I was four or five years ago. I'll answer the questions
Yep, I also like seeing how the sausage is made. I would guess that it was this You seem to be interested in possible career options, so it's probably worth
Oh yeah, massively rewarding. You've probably already heard something along
The main reason I started this project was that I had fairly recently switched I had been casually programming for maybe a couple years before that point,
I guess I'll write what steps I more-or-less went through, though I want to Anycase, I started out with just trying to figure out how some tiny bit of wheel For the most part actually writing the modules was not a huge issue, luckily At some point I thought I had a good enough overview of how the wheel functions At some point this thing started gaining a small amount of users and I got some I realize this may sound like climbing up a tree ass first, and I'm sure for For what it's worth, a lot of this is applicable to more than just drivers, but if
Good book, I think I remember reading the chapter on USB drivers. Turned out to not I unfortunately don't really have a good list of reading material or anything
Excellent attitude. If you have any follow-up questions, feel free to ask. I went a bit long with these open-ended questions but I promise I'll try to be more concise in the future. |
Beta Was this translation helpful? Give feedback.
-
Sorry for the late reply, these weeks were and will be quite busy!
I suppose this is a Master's degree, right?
Oh yes, probably heard something like this many times so far in different forms, but only recently it really started to click, as if I now have the tools to really get what it means;
When I read this I just thought that it's cool that it all starts like this for almost everyone;
This is kinda what still scares me a bit, at this stage. The investigation tasks. Because at the beginning you're not sure where you're going and if it's worth it. But I managed to perform this kind of tasks (generally speaking) and I was very happy every time I succeeded. Yet I still have trouble to start such tasks; That aside, I first heard about Wireshark from a CTF team in my university when they held a little seminar, I thought it was a tool for watching data transfers in a network, but I guess that also applies for peripherals;
I wouldn't think that of you! At the end, people learn the most by doing, and references are meant to support this trial and error process. |
Beta Was this translation helpful? Give feedback.
-
Yeah, though I started with the group I work at just before I got my Bachelor's.
Yeah, there's a guide for doing USB captures with Wireshark over at https://wiki.wireshark.org/CaptureSetup/USB. There are also actual hardware capture cards for doing the same thing, though the cost seems to dramatically go up with USB transfer speeds. Don't really know what if any drawbacks a software capture has over hardware, but at least in my case Wireshark turned out to work just fine.
Yep, spun up a Windows virtual machine and looked at the USB traffic with Wireshark on the Linux side. I did also try running Wireshark within the Windows VM, but that had some issues that I can't really remember the details of right now. That was a while ago though, things might work better these days.
I would guess that pretty much anyone you speak to shares at least some of those concerns, they're really rather universal. I've been mulling over what I want to write for about half an hour, but I guess you should just try to enjoy programming without worrying too much about the final result. I know it's a bit of a nothingburger, 'lol just do better', but you get better with practice, and you get practice by doing things. If thinking about big picture stuff paralyses you, you don't get any practice. Bit of a vicious cycle. |
Beta Was this translation helpful? Give feedback.
-
A little backstory
I've grown tired of Windows over the last years and some months ago I wanted to make the permanent switch to the FOSS and libre world, starting from linux; obviously that led to some minor inconveniences when it came to adapt some workflows to linux, like gaming.
So i had a T300 lying around and wanted to get it to work on my linux system, and this was the first repo I was redirected to;
Now, I've been going through a phase of my life where I wasn't really sure what kind of skills to build to find a future occupation that I would like enough.
Only recently I decided that among other options, programming skills were the ones I would focus on for a while, because all in all I've enjoyed the coding I did so far and it's also a relevant skill at this time in history.
But saying I wanted to do programming is still to general, since there's multiple subfields to consider;
So far,
In both cases though, I didn't like the fact I was using tools that, through heavy abstraction, hide what happens under the hood, and lately I've slowly been craving to learn about how computers work and write programs that run at a low level;
Coming across repos like this one started to kinda fascinate me, when in the past I would have just run away at the sight of something difficult to understand. Not that that went completely away, but I'm fighting it, because it's rewarding afterwards.
A challenge to take on
I have a T-LCM set of pedals that seem to work fine when plugged through RJ cable to the wheelbase but are not recognized by programs like InputRemapper (so also games, according to other owner) when connected via USB.
I suppose there's no kernel module that handles this device. So I thought, why shouldn't I try to solve this problem?
Question time
So as mentioned in issue #101 , I wanted to ask @Kimplul a couple of questions that might be of interest of people wanting to get started building low level programming skills;
Notes on 2)
I found various resources online, one of which the free book Linux Device Drivers, not sure if that was a reference for your development as well 😄 .
Beta Was this translation helpful? Give feedback.
All reactions