Custom Digital Dashboard Project
Moderators: JeffC, rdoherty, stieg, brentp
-
- Posts: 43
- Joined: Tue Apr 30, 2013 10:35 am
Will the waterproof option be a retro-fittable case for the existing RCP? I'm currently using a Tupperware box...
Sprinting an ADR Sport 2
www.endurancelay.co.uk
www.endurancelay.co.uk
Pictures
Pics.
- Attachments
-
- That's funny, this doesn't look so bad after all.
- IMG_20140308_114631.jpg (54.32 KiB) Viewed 14802 times
-
- IMG_20140308_100749.jpg (45.02 KiB) Viewed 14802 times
-
- Possible mounting location for RCP. Not crazy about this.
- IMG_20140308_100943.jpg (55.64 KiB) Viewed 14802 times
Progress on Circuitry
Working on the circuit board. Using the small radioshack perfboard, which fit neatly into the back cover and RCP housing and have convenient mounting holes.
One thing I've learned is that while solid core wire is best for traces, inter-board wiring should be stranded. Solid core wire is relatively stiff, and when you have a bunch of them, you create a mechanical spring that is *really* stiff, and difficult to fold out of the way. So I get to buy some stranded wire in multiple colors as well Yea!
There's two 16-pin dip chips on the board. One is for the MAX232E serial interface. The other is a shift register I added in order to avoid pairing the LEDs. I was worried about excessive per-pin current draw. I also like the idea of the LEDs being separate. And I've just always wanted to build something with a shift register.
I'm still using the arduino uno for testing, hence the long leads. I'm planning to run with the Nano rather than the teensy eventually, because it's (1) 5V and (2) has mounting holes. The teensy will be a better fit for the other screen, since that uses 3.3v logic.
That's all for now.
One thing I've learned is that while solid core wire is best for traces, inter-board wiring should be stranded. Solid core wire is relatively stiff, and when you have a bunch of them, you create a mechanical spring that is *really* stiff, and difficult to fold out of the way. So I get to buy some stranded wire in multiple colors as well Yea!
There's two 16-pin dip chips on the board. One is for the MAX232E serial interface. The other is a shift register I added in order to avoid pairing the LEDs. I was worried about excessive per-pin current draw. I also like the idea of the LEDs being separate. And I've just always wanted to build something with a shift register.
I'm still using the arduino uno for testing, hence the long leads. I'm planning to run with the Nano rather than the teensy eventually, because it's (1) 5V and (2) has mounting holes. The teensy will be a better fit for the other screen, since that uses 3.3v logic.
That's all for now.
- Attachments
-
- Lights on, but mounted in housing.
- IMG_20140311_233115.jpg (71 KiB) Viewed 14800 times
-
- Testing the circuit board.
- IMG_20140311_225105.jpg (77.6 KiB) Viewed 14800 times
Yes, and no. I have code that can parse and store all the samples in a given record. I've determined which sample channel corresponds to the first freq input (index 2). Except that periodically the RPM goes to 0 and I haven't figured out why. RCP is definitely sending a 0. I'm not sure how you tell which samples are present in a given record, and the number of samples per record seems to vary. (hint: always sending the same number of samples would sure make things a lot simpler).brentp wrote:Awesome! are you able to read the serial protocol yet? still need to document that for you :-/
I haven't attempted to work out what the other channel mappings. Given some test equipment, access to the source code, and enough time, I could work it out. It's not a priority until I get the screen hooked up. While you're in a documenting mood, also document the configuration protocol. Having to configure from windows is a PITA.
I attempted to desolder the strip header from the LCD, and replace it with stranded wire. Now, the LCD doesn't work. It powers on but doesn't respond to data. I've checked all the connections 10 times. He's dead, Jim. I'm not sure whether it's due to ESD, leakage from my soldering iron, or just careless handling. I'm probably guilty of all three.
So, I've ordered 3 more . But they're 3-5 days away, so I won't be having a big, glorious, moment of truth this weekend.
On the other hand, I got the shift lights and the serial link finished. I added a handy switch to disconnect the TX and RX pins, so I can still reprogram over USB.
[edit: here's a link to the video] http://www.youtube.com/watch?v=8or6Yhbk ... e=youtu.be
So, I've ordered 3 more . But they're 3-5 days away, so I won't be having a big, glorious, moment of truth this weekend.
On the other hand, I got the shift lights and the serial link finished. I added a handy switch to disconnect the TX and RX pins, so I can still reprogram over USB.
[edit: here's a link to the video] http://www.youtube.com/watch?v=8or6Yhbk ... e=youtu.be
On Hardware vs. Software
Edit: After re-reading this, even I was like "ugh, TL;DR". I've moved it to http://pastebin.com/MkibN5Kv . Long story short: It's hard but I'm enjoying the challenge.
IT'S ALIVE!!! (again)
I got my new (character) LCDs on Monday. I've been hacking up a storm.
Computer PCB CAD tools often have a layer called the "rat's nest" which shows component connections running all over everywhere. This hardware literally IS a rat's nest despite my best efforts at keeping it all sorted.
I wanted to be able to build the board up incrementally, and having little room inside the enclosure to work with, I chose a small board. And ran out of room on the board. I had to improvise some last-minute additions. Also, the wiring connecting the Nano, LCD, and logic board turned out to be bulkier than I expected. It juuuussst barely fits in the enclosure. It's gonna work, at least until vibration breaks one of my sketchy solder joints.
I'll test with this for now. In the mean time, I'm in the process of converting this design into something I can have made into a PCB (more on that in another post).
[/b]
Computer PCB CAD tools often have a layer called the "rat's nest" which shows component connections running all over everywhere. This hardware literally IS a rat's nest despite my best efforts at keeping it all sorted.
I wanted to be able to build the board up incrementally, and having little room inside the enclosure to work with, I chose a small board. And ran out of room on the board. I had to improvise some last-minute additions. Also, the wiring connecting the Nano, LCD, and logic board turned out to be bulkier than I expected. It juuuussst barely fits in the enclosure. It's gonna work, at least until vibration breaks one of my sketchy solder joints.
I'll test with this for now. In the mean time, I'm in the process of converting this design into something I can have made into a PCB (more on that in another post).
[/b]
- Attachments
-
- Next I connected the power leads on all three components. Gee, it's starting to come together.
- dashboard-pics3.jpg (60.09 KiB) Viewed 14725 times
IT'S ALIVE!!! (again)
I got my new (character) LCDs on Monday. I've been hacking up a storm.
Computer PCB CAD tools often have a layer called the "rat's nest" which shows component connections running all over everywhere. This hardware literally IS a rat's nest despite my best efforts at keeping it all sorted.
I wanted to be able to build the board up incrementally, and having little room inside the enclosure to work with, I chose a small board. And ran out of room on the board. I had to improvise some last-minute additions. Also, the wiring connecting the Nano, LCD, and logic board turned out to be bulkier than I expected. It juuuussst barely fits in the enclosure. It's gonna work, at least until vibration breaks one of my sketchy solder joints.
I'll test with this for now. In the mean time, I'm in the process of converting this design into something I can have made into a PCB (more on that in another post).
Computer PCB CAD tools often have a layer called the "rat's nest" which shows component connections running all over everywhere. This hardware literally IS a rat's nest despite my best efforts at keeping it all sorted.
I wanted to be able to build the board up incrementally, and having little room inside the enclosure to work with, I chose a small board. And ran out of room on the board. I had to improvise some last-minute additions. Also, the wiring connecting the Nano, LCD, and logic board turned out to be bulkier than I expected. It juuuussst barely fits in the enclosure. It's gonna work, at least until vibration breaks one of my sketchy solder joints.
I'll test with this for now. In the mean time, I'm in the process of converting this design into something I can have made into a PCB (more on that in another post).
- Attachments
-
- Next I connected the power leads on all three components. Gee, it's starting to come together.
- dashboard-pics3.jpg (60.09 KiB) Viewed 14725 times
-
- First, connect the Nano to the LCD. I had to guess at the lead length. Measuring is for sissys.
- dashboard-pics2.jpg (49.33 KiB) Viewed 14725 times
-
- Hacking fuel: pork lover's sandwich. Get up brown ale.
- dashboard-pics1.jpg (43.93 KiB) Viewed 14725 times
IT'S ALIVE!!! (again) (contd.)
Moar pics!
These images don't capture all the mistakes, frustrations, burns from accidentally touching the soldering iron while trying to grab approximately 20 things with one hand. The times that I broke off wires and had to re-solder them.
Anyways, the wiring of Rev 1 is nearly done. Just a few connectors and what not, and it's a working device. The rest is just software -- but that's easy, right?
These images don't capture all the mistakes, frustrations, burns from accidentally touching the soldering iron while trying to grab approximately 20 things with one hand. The times that I broke off wires and had to re-solder them.
Anyways, the wiring of Rev 1 is nearly done. Just a few connectors and what not, and it's a working device. The rest is just software -- but that's easy, right?
- Attachments
-
- OMG! OMG! OMG!
- dashboard-pics5.jpg (48.17 KiB) Viewed 14724 times
-
- Everything is connected. Finally. That's odd, it all seems to be working.
- dashboard-pics4.jpg (55.27 KiB) Viewed 14724 times
IT'S ALIVE!!! (again) (contd.)
http://youtu.be/Y6mnFdxkJAo <-- Proving that I really can read the RCP serial stream (kinda).
http://youtu.be/5P9W1R12sD4 <-- Full demo, using a computer.
http://youtu.be/urQfgNi39Gk <-- Same thing, but electronics are mounted in the housing![/i]
http://youtu.be/5P9W1R12sD4 <-- Full demo, using a computer.
http://youtu.be/urQfgNi39Gk <-- Same thing, but electronics are mounted in the housing![/i]
Spoke Too Soon
Had another race last weekend. This time a LeMons race. None other than Brent himself turned up, and we had a good chat about the nerdiest of things. We also discussed future collaborations.
3D Printing, Revisited
I gave my CAD files to a friend of mine who also races, and he ran the prints on an industrial 3D printer. The difference is quite stunning. This printer can also print support material, so it allows much more design freedom. I can, for example, merge the mounting brackets with the rear cover.
Electronics, Revisited
The electronics did work, but they didn't fit in the enclosure. It turns out all the jumper wires take up too much space. So, I tore it apart and started over. This time, I soldered the Nano to the board. The board will solder to the LCD. It'll all be one unit (excepting the LEDs, which'll still be on a separate board connected by jumper wires, but seven wires shouldn't be too bulky).
Want to upload pics of all this, but iPhoto keeps blowing the 256k file size.
Epiphanies
I realized two things, in the course of all this.
The first is that, I never needed the shift register. ATmega328s have 14 digital pins. Take off two for serial, you're left with 12. I took a closer look at the LCD datasheet, and it turns out it only needs 6 pins, rather than the 7 I'd been assigning. One of the pins can be left tied to ground. Boom. No shift register.
The second is that could have done all this with a bare ATmega328. I never needed the Nano. This would actually save quite a bit of room on the PCB, even with the external 16mhz crystal (needed if you want full-speed serial. If I could down-clock serial to 56700, I wouldn't even need the crystal). Would have saved some room on the PCB at the expense of making reprogramming more difficult. But I could live with that.
Shipping Woes
The graphic LCD I ordered is in Brazil for some reason. It's been 30 days, and I have this feeling the LCD isn't going to show up until I don't need it. Which is fine, I guess. I'm still working on the character LCD version. I honestly thought I'd have that working by now.
I've got pics of all this, but too lazy to scale them down to fit vBulliten's lame file size restriction (256k).
3D Printing, Revisited
I gave my CAD files to a friend of mine who also races, and he ran the prints on an industrial 3D printer. The difference is quite stunning. This printer can also print support material, so it allows much more design freedom. I can, for example, merge the mounting brackets with the rear cover.
Electronics, Revisited
The electronics did work, but they didn't fit in the enclosure. It turns out all the jumper wires take up too much space. So, I tore it apart and started over. This time, I soldered the Nano to the board. The board will solder to the LCD. It'll all be one unit (excepting the LEDs, which'll still be on a separate board connected by jumper wires, but seven wires shouldn't be too bulky).
Want to upload pics of all this, but iPhoto keeps blowing the 256k file size.
Epiphanies
I realized two things, in the course of all this.
The first is that, I never needed the shift register. ATmega328s have 14 digital pins. Take off two for serial, you're left with 12. I took a closer look at the LCD datasheet, and it turns out it only needs 6 pins, rather than the 7 I'd been assigning. One of the pins can be left tied to ground. Boom. No shift register.
The second is that could have done all this with a bare ATmega328. I never needed the Nano. This would actually save quite a bit of room on the PCB, even with the external 16mhz crystal (needed if you want full-speed serial. If I could down-clock serial to 56700, I wouldn't even need the crystal). Would have saved some room on the PCB at the expense of making reprogramming more difficult. But I could live with that.
Shipping Woes
The graphic LCD I ordered is in Brazil for some reason. It's been 30 days, and I have this feeling the LCD isn't going to show up until I don't need it. Which is fine, I guess. I'm still working on the character LCD version. I honestly thought I'd have that working by now.
I've got pics of all this, but too lazy to scale them down to fit vBulliten's lame file size restriction (256k).
Stalled, for the moment
Just too busy right now to make progress. Another race last weekend. Taxes. Also, too rainy to risk installing any of the hardware. Not complaining about that -- we're facing a serious water shortage in California, so rain is really welcome.
In the mean time, look at this puppy.
In the mean time, look at this puppy.
- Attachments
-
- puppy.jpg (26.54 KiB) Viewed 14615 times