Embedded Programming and Design

Noodleface

A Mod Real Quick
37,961
14,508
I know this is the Game, Web, Software Development forum, but I figured this could go in here as well. I'd like to dedicate this thread to those of us that do embedded designs. We can use this thread to discuss projects, ask questions, and generally bullshit about stuff.

So we're using a RaspPi model B for a project we're doing, anyone used one of these in an embedded system? It's going to send/receive large amounts of data wirelessly as well as some encoding stuff.
 

Noodleface

A Mod Real Quick
37,961
14,508
Sorry, just got the RaspPi's in today, been fooling with them.

We are making a K9 Wireless Communication System for the state police. Basically a wireless video/audio stream to the officer featuring the dogs POV as well as environmental noise. On top of that, the officer will be able to issue commands through both voice and buttons (possibly key-tones, not sure). Additional things will be GPS monitoring, remote shock collar, and remote treating.

We're done with the initial design and starting the coding this week while the electrical engineers do their thing. I will add pics and updates as they happen in case anyone is interested.
 

Gauss_sl

shitlord
59
0
Do you have a faculty adviser for this? I think I saw the old thread, and it seemed a little ambitious for a senior design type project. Would definitely be interested to hear how it's going along from time to time.
 

Noodleface

A Mod Real Quick
37,961
14,508
Do you have a faculty adviser for this? I think I saw the old thread, and it seemed a little ambitious for a senior design type project. Would definitely be interested to hear how it's going along from time to time.
Yeah we have an advisor as well as a customer who advises us.
 

BrutulTM

Good, bad, I'm the guy with the gun.
<Silver Donator>
14,441
2,223
I was just reading about the raspberry pi boards the other day. They should be perfect for what you're doing. What did you figure out for the radio link?

Also, are your hardware guys even doing anything if you're just using an off the shelf computer?
 

Noodleface

A Mod Real Quick
37,961
14,508
I was just reading about the raspberry pi boards the other day. They should be perfect for what you're doing. What did you figure out for the radio link?

Also, are your hardware guys even doing anything if you're just using an off the shelf computer?
The radio is going to be a bit weird, the hardware guys have some scheme they're going to use - possibly dual-band.

We're using a raspberry pi for processing and everything. They need to make a whole bunch of circuits for different things. They need to make the circuit for the transceiver units, GPS unit, tazer unit, treat collar, etc. The majority of the work on this project is indeed the programming, but the hardware guys definitely have a good amount of work as well. The good thing is the electrical engineers had to take a bunch of programming classes with the computer engineers, so there is always that too. I think our project is probably the largest of all senior design projects.
 

Noodleface

A Mod Real Quick
37,961
14,508
Short update. It has begun.

We got the RPi's in, SD cards have the OS ready to rock. We have almost every component except for one (bought from Alibaba.. coming from China
frown.png
). I'll try to update this with progress as we go and allow people to ask questions. If anyone wants to share any of their own projects feel free (I don't want to just talk to myself). I'll include pictures, etc.

I also write firmware for a very large cloud/IT/server company, so if there are questions related to that feel free as well.
 

Noodleface

A Mod Real Quick
37,961
14,508
A real update, for once.

Not really sure what my other teammates are doing but I went ahead and got started working on getting the GPS going. First thing I had to do was solder the pins onto the breakout board. We're using an Adafruit Ultimate GPS Breakout Board for this. Essentially it's a serial GPS that allows you to change some settings and get a little more fancy than most simpler serial GPS IC's. Anyways, I had never soldered anything like this before, so I was scared.. but since I have soldered electronics before it was a piece of cake. Once I got the pins soldered on, I threw it on a breadboard and wired it up. I didn't use the TX pin at all, I simply wired the Vin, Ground, and Rx pins to the RPi's 5v Pin, Ground Pin, and one of the serial UART pins. After wrestling with getting Screen installed, I was able to see GPS data output serially.

The next part was writing the code to not only take this data but also parse it into something human readable. In our case we're really only interested in the GPGGA string. It outputs 5 or so different strings but they aren't related to location which is what we're really after. We get this long string and I ended up parsing out the latitude, longitude, and altitude from that. I wrapped it in a main file and that was that. Here's some pics anyways of the before and after(I'll upload pics of the Rpi after if anyone is interested):

rrr_img_14145.png
rrr_img_14146.png


rrr_img_14145.png


rrr_img_14146.png
 

Gauss_sl

shitlord
59
0
Are you having at least weekly meetings with your team? If there's one thing I learned from my team-based senior design project, it's that even guys with good credentials can be serious slackasses. Then again, I was one of those slackasses; I had a whole semester to design/build/test a circuit with 3 ICs and some mechanical transduction and finished soldering the final board the night before the demonstration to our sponsor company. Anyway, keep up the good work!
 

Noodleface

A Mod Real Quick
37,961
14,508
We have weekly meetings but right now everyone is being slackasses. It seems to be a common issue among every single team too haha.
 

BrutulTM

Good, bad, I'm the guy with the gun.
<Silver Donator>
14,441
2,223
I had a 4 person team, two of which were a couple that lived together and they decided to break up in the middle of the senior project. Needless to say, they were useless for most of the project and me and the other guy had to do almost everything and even the other guy more or less failed at his job (writing the code for the embedded processor) although not for lack of trying. The girl from the couple did get her shit together and build and test our modem during the last week or so of the project but the dumped guy never did anything. The morning of the senior project fair I was in the shower and it hit me that I had scaled the mapping software incorrectly and I almost fell over dead but then I thought, you know, this isn't a real fucking product, no one will ever catch this...and I was right. To this day it is in my buddy's closet and if you tried to use it, the maps would be scaled wrong and I don't give a shit.

This thread brings back memories. I wrote almost the same program you did to parse the GPS serial output. Of course mine was in C++ running under DOS since it was 1998 lol.
 

Noodleface

A Mod Real Quick
37,961
14,508
Just got the camera working.. absolute pain in the ass. Had to send commands to reset it and take pictures, then read in the data to a file. Had to do some other things to. Inexplicably when I Was connecting the Rx line of the camera it would power down the RPi, Not sure what was going on.

rrr_img_18805.jpg


rrr_img_18805.jpg


rrr_img_18805.jpg
 

Noodleface

A Mod Real Quick
37,961
14,508
Thread got no love so haven't updated. Project is completed:

1x RPI (Officer side) has an android phone attached. User can send voice commands to the dog or certain functions (tazer, buzzer, etc). Phone displays video (slow, pictures not streaming video) as well as GPS information of the dog.

1x RPI(dog side). Has a camera, xbee pro, adafruit GPS, headphone out to the dog, tazer, buzzer (loud ringing to stop dog), treat compartment (opened by officer), microphone. Continually takes pictures and sends them back, receives voice commands as they are sent and plays them, outputs GPS signal always, accepts collar functions from phone.

I did all of the embedded work. We're making some videos later today and I'll post them on youtube if anyone is interested.

It was said that this project probably wouldn't have been finished, and generally I would've agreed but I went seriously hardcore and took over all embedded development. It was a pain in my ass and I never want to do it again
smile.png


smile.png
 

Gauss_sl

shitlord
59
0
Nice, props for actually following through. I was skeptical, but it seems like you have implemented many things that you proposed.
 

Noodleface

A Mod Real Quick
37,961
14,508
Everything embedded + software related works. Electrical guys couldn't get their shit together and their two circuits (taser, treat collar) couldn't integrate with the board. They waited too long and had too little work, no real excuse. In the end I just said fuck it and made sure my stuff worked. Hopefully I'll have video soon so people can see it.
 

Lenaldo

Golden Knight of the Realm
324
108
Impressive work for a senior design project. I think one of the things you are suppose to learn is that in every projeceam there are people who won't pull their weight. My design team had 5 people... 2 of us did all the work.
 

Noodleface

A Mod Real Quick
37,961
14,508
Impressive work for a senior design project. I think one of the things you are suppose to learn is that in every projeceam there are people who won't pull their weight. My design team had 5 people... 2 of us did all the work.
Yep, definitely was the lesson learned. Two of us did literally everything.