News for hackers. Stuff that matters.
Re:Linux Kernel Module Programming Guide by Topgamer7 on Monday August 23, 2021 @09:04PM (#28284016)
I wrote some low level code to turn an Arduino into a USB audio device and bit banged audio from a couple pins. Basically no experience in hardware stuff. But to be clear, getting good at programming is definitely a year+ kinda thing, of full time focus.
Re:Linux Kernel Module Programming Guide by XzAeRosho on Monday August 23, 2021 @09:10PM (#28284048)
Expanding on this reply, you can think of Kernel Modules as Windows drivers. Most of the time they are meant to be used as an interface on which you can communicate from the OS with an underlying device more easily .
Re:Linux Kernel Module Programming Guide by SilverRed on Monday August 23, 2021 @09:16PM (#28284072)
And usually they are paired with a user space tool for even easier interaction. Ideally the driver should expose literally every function and possible action and then the userspace tool has the job of simplifying that down and not supporting very unusual or complicated setups.

You could think of the userspace side as the gui you get with gpu drivers which interacts with a separate kernel space side

Re:Linux Kernel Module Programming Guide by Unklejoe on Monday August 23, 2021 @09:16PM (#28284071)
How did you end up doing USB with the Arduino? Was it bit banged as well (VUSB)? Is this code available anywhere?
Re:Linux Kernel Module Programming Guide by Topgamer7 on Tuesday August 24, 2021 @12:15PM (#28290836)
The newer arduino's come with a pretty powerful IC for the usb interface. So I reflashed that using LUFA. To be clear the audio quality was awful, but could certainly hear what was playing. Here is the repo for it. I did it as a self directed class in university. Treat it like I had no idea what I was doing trying to understand lower level programming! https://github.com/ElementalWarrior/ArduinoAudio (This was in C, not part of the Arduino ecosystem with the IDE)
Re:Linux Kernel Module Programming Guide by the_only_law on Tuesday August 24, 2021 @02:58AM (#28285856)
Interfaced with an FTDI chip maybe?