Holden Gemini Van - with Nixie Tacho

Show off your Megajolt installations, vehicles and action shots here!

Moderators: JeffC, rdoherty, stieg, brentp

Spockie-Tech
Posts: 152
Joined: Wed Jan 02, 2008 12:52 pm
Location: Melbourne, Australia

Holden Gemini Van - with Nixie Tacho

Post by Spockie-Tech »

Greetings Computer-Controlled-Spark-Fans :)

Here (finally) is the "Powered-by" entry for my daily-driver/parts-getter, an Australian 1979 TC Holden Gemini Panel-Van.

Gemini Vans are quite-rare, lots of Sedans and Hatches around, but the 'Van is a rarely-seen beast.

I have been helping a friend car-modder by installing Megajolts on quite a few of his cars (mainly engine-conversion HotRods and Street-Machines) for a couple of years now, but always forgot (or didnt have a camera handy) to take pictures to post here, so this is actually about my 5th Megajolt, but the first I can show you guys.

Its nothing wild, but sometime in the next 6-12 months, I should have my own long-term Project Car (A 265-Hemi with Triple-Webers in a Valiant Charger) on the road and will have something more impressive to show..

For now, its the little Gemini (in Mini-Cooper paint guise :) ) with an added Extra - The Nixie-Tube tacho running from the Megajolt !

I fitted the Megajolt to the Gemini after spending months suffering from a weird Intermittent fault in the Factory points ignition that would sometimes stop the car at idle, or make it very hard to start - I changed Coils, Points, Condensors, Point Plate Earth Lead, Spark Plug Leads, Plus, everything I could think of, and still happened.

So I got completely sick of the points ignition and fitted a Megajolt to it, Intermittent Problem solved ! Plus the many benefits of near-instant starting in any weather, much better idle, hugely improved throttle response (with more advance down low that then backs off in the mid-range), better mileage and so on. Nothing like a bit of modern tech to replace a 30yo mechanical switch hammering away.. :)

Then the Megajolt and one of my other Electronics Hobbies - Nixie Tubes - combined with some R&D/Testing for gadgetry I'm building for the Charger inspired me to add an "unusual" Tacho.

Following is a *huge* post I wrote to describe the Nixie Tach to people with a funky YouTube video I spliced together that covers it all pretty well, so I'll just pop a few pictures here. Watch the Video for all the juicy detail.

Questions ? Comments ? "You're Crazy !"'s ? :)

Enjoy.

Brett
Attachments
Gemini Rear 1_resize.jpg
Gemini Rear 1_resize.jpg (159.27 KiB) Viewed 48790 times
Gemini Side 1_resize.jpg
Gemini Side 1_resize.jpg (152.21 KiB) Viewed 48790 times
Gemini Front 4-mod1_resize.jpg
Gemini Front 4-mod1_resize.jpg (66.05 KiB) Viewed 48790 times

Spockie-Tech
Posts: 152
Joined: Wed Jan 02, 2008 12:52 pm
Location: Melbourne, Australia

Post by Spockie-Tech »

And some pics of Megajolt Install
Attachments
Blurry Coil Packs 1_resize.jpg
Blurry Coil Packs 1_resize.jpg (123.07 KiB) Viewed 48789 times
Coil Packs Closeup_resize.jpg
Coil Packs Closeup_resize.jpg (170.21 KiB) Viewed 48789 times
Spare Laser Cut Trigger Turbine Pattern Trigger Wheel
Spare Laser Cut Trigger Turbine Pattern Trigger Wheel
IMG_0635_resize.JPG (135.26 KiB) Viewed 48789 times

Spockie-Tech
Posts: 152
Joined: Wed Jan 02, 2008 12:52 pm
Location: Melbourne, Australia

Post by Spockie-Tech »

more pics of the sensor and Nixie Tach, sorry its a but blurry, the camera didnt like focussing on the glow at night ! Watch the video for better pictures
Attachments
Blurry Nixie Tach_resize.jpg
Blurry Nixie Tach_resize.jpg (104.8 KiB) Viewed 48786 times
VR Sensor_resize.jpg
VR Sensor_resize.jpg (112.11 KiB) Viewed 48788 times
The Nixie Tacho
The Nixie Tacho
Nixie Tach 1_resize.jpg (140.34 KiB) Viewed 48788 times
Last edited by Spockie-Tech on Mon Mar 29, 2010 1:35 am, edited 2 times in total.

Spockie-Tech
Posts: 152
Joined: Wed Jan 02, 2008 12:52 pm
Location: Melbourne, Australia

Post by Spockie-Tech »

and finally, the mega-post about the Megajolt Nixie Tacho, with a link to the youtube video !

(some of these comments about needing the Megajolt may seem obvious in this forum, but I'll be posting this blurb in a couple of other places, which is why it may refer to where it already is.. :) )
.....


Greetings Hardware Hackers..

I have been enjoying the warm orange glow of the nixie appreciation fancy for a few years now and have always wanted to do something other than make a clock or a piece of lab-test equipment with them. To get nixies off the private shelves at home and into public view. (A bit like Davids famous Nixie Watch).

So for the rev-retro-heads out there. Here is the Open-Source Megajolt-Nixie-Tach ! :) (tada ;) )

*** Funky Music Video of Install here ***

http://www.youtube.com/watch?v=nHiYCZkAq5o

This project has resulted in lots of questions about nixies from everyday (non tech heads) people as they notice this wacky contraption sitting on my dashboard looking like something that belongs in a De-Lorean glowing weirdly.

No doubt there have also been a few sadly shaken heads as I enthuse over a 50yo display technology - but I usually compare it to an appreciation of a fine old musical instrument with a unique warm sound that modern LED/LCD displays just don't have..

Some "Get it", but to many I probably sound like one of those old DJ's who (mistakenly) think you cant beat Vinyl & Gold Monster Speaker cables for sound or something, but who cares what they think ? The world is nuts, Everyone has to have a crazy passion for something :) (I'm sure all the nixie heads will be noddling "you-know" ingly :)

The device is just a simple engine-tach in its current form, but there is plenty of opportunity to make it display all sorts of things. It communicates with the Megajolt Ignition System and extracts *all* the status parameters ready for display. It can have other inputs, displays and functions easily added (peak Hold RPM, Logging etc), or it can just be used as it is for a funky tacho..

It currently requires the Megajolt Ignition System to feed it engine data, but Theres no reason it couldn't be easily modified to pickup data directly from an RPM sensor, Fuel Injection System or any other source. For more information on the Megajolt, go to www.autosportlabs.com or www.autosportlabs.org (for their forums).

If Nixies aren't your thing, but you want a way to read and display or act on data from a Megajolt, you can just build the Arduino and OLED/LCD control part, and ignore the Nixie code. The nixies are just another device on the I2C bus and the receive/extract/display code will work fine even if they arent there. You could use the Arduino to drive an RC Servo with an needle on it for example for digitally controlled analog gauges. The possibilites are endless..

--

Detailed Circuit diagrams or PCB artwork are not available (yet) since it is a prototype development unit and is hand-wired with a wiring pencil. If someone wants to build their own and is prepared to draw up a circuit diagram or pcb, I will assist with descriptions of the relevant circuit details (not *every wire*, but its not that complicated because its all bus-driven - sorry, no novice kits yet) to match the code (I2c, Serial connections etc).

Otherwise, wait a month or three until I have finalized more of the software and hardware functions and I will develop a pcb and schematic for it then.

If you don't want to wait for those details and can follow basic Microprocessor wiring and read the code then I'll help (Somewhat - I wont promise to hold your hand the whole way if you're very new at it)..

I can say the Arduino is *much* easier to use, code, program and wire-up, than most C or Assembly code PIC/AVR micro programming rigs I have considered before) - More like a Basic Stamp or a PicAxe in ease of use, but Faster and more flexible.. (In my opinion of course :) no flamewars please) - check their website out - www.arduino.cc).

You can program the pre-made Arduino board with a usb cable, free simple software and no special programmer needed.

Future plans include more display parameters option modes, , auto-scan-mode-change, hi/low level (of whatever parameter you like from the status string) Blinking alerts. Screen savers (I just love doing the 'Nixie Wave with a row of tubes - if you know what I mean :)

The software I have written is open-source, available for free to everyone. Use it, Read It, Modify it, Criticize It, Improve it, and share any improvements back with everyone please :)

The Megajolt Status String dis-assembly and decoding into all the seperate (appropriately named - Current_Advance, RevLimit Flags etc) parameter variables is already done in software for you, it just needs minor code tweaks to select whichever one you want to display. so feel free to dive in and fiddle with that if you wanted an Advance meter or a temp gauge or something instead of a Tach.

Or add even more Smart Nixie Boards to the Bus and have both ! You can run up to 200-something digits if you're feeling rich :) A Whole Nixie Dashboard is possible with this bus technique with just a few more wires and tubes if you want a big display. The Smart-Nixie sockets are also available in different types to drive just about any style of nixie you want, In-4,s In-18's, whatever...

The Buttons and Potentiometer on the control unit are wired in but have no code written for them yet .. Thats on the 'round-tuit list.

Heres a feature I want to put in there soon.. Sending Adjustments back into to the Megajolt's Ignition Advance Curve programming. Giving you a live advance knob on your dashboard for tuning the advance in unusual conditions - say on an extra hot day, and your tweaked-up-performance motor is pinging unhappily pulling under a load up a hill.. You can just dial back a few degrees of advance on-the-fly and make that nasty piston-pounding-pinging immediately vanish without having to pull out your laptop and reprogram the megajolt curve in a big block. Or if its a cool night, or you've just fed some premium fuel in and you want to try a bit more advance to see how it goes. Make the adjustments temporary - just for this drive, or permanent by writing them to the flash ram if you think your tweak is a good long-term improvement. Tune-as-you-drive. (eyes on the road - you do it by *feel* :). Sounds good, now I just need to get around to writing that bit of code :)

The ability to send commands and parameters back to the Megajolt are already written into the functions, I just have to do the user-interface (screens and button/knob control).

If this sounds like a must-have feature to anyone with a motor with a tendency to ping at odd times (as many rev heads know), feel free to either hack it in yourself (please share), or offer some form of inducements (not requests ;) to hurry up and get 'round-to-it !

If you cant induce me with temptations, then you'll just have to wait for me (or someone else) to do it, or shock-horror .... learn to do it for yourself (gasp) !!! .. Try it, its fun !

As long as you keep an unmodified copy of the original code handy, the worst you can do is turn your modified code into a crashing buggy spaz attack. If that happens, you just <sigh>, put the original saved code back in place (easy) and you're back to square 1 with a working tach while you figure out where your version of the code divided by Zero and Imploded the Arduino's Brain or something :)

Another possible thought is a light-level sensor on the Nixie Displays, detecting the outside (away from tubes) ambient light level, and modifying the smart sockets-PWM-Bightness parameter appropriately. As the night gets darker, the smart-nixies can be dimmed via software. If its a bright sunny midday, then return them to full brightness. (they need to be, to read in the sun unless you have them under a shady ledge).


... some more detailed descriptions on the various bits and options..

Quite a few of the components draw on the nifty gadgets and work done by others. The Boarduino is from www.adafruit.com - The OLED/LCD is driven by an I2C interface board from www.spikenzielabs.com and the I2C bus "SmartNixie" modules and the pre-built high voltage setup-up (5v->180v) miniature switchmode tube power supply are from http://www.tayloredge.com/storefront/index.html

If you just want the Nixie Display feature, You can leave the OLED/LCD out and connect only the smart-nixies to the I2C bus saving some cost and wiring. Not much wiring though, since the LCD and Nixies are both bus-driven, so there aren't 10 wires going to each tube like most designs. Just 4 wires in series to each unit - power, ground, data and clock, so adding the LCD or more digits (as many as you like) doesn't add much complexity, just some cost.

I found the OLED display on Ebay, I haven't seen them on many LCD suppliers websites, I think I got it from a chinese Ebay seller called "Sure Electronics" about a year ago, but I cant find them now, so might need to hunt for it.

You can use an ordinary 44780 controller type 2x20 LCD in its place if you want, but the OLED is much easier to read in Sunlight than any LCD I tried. I'll give a Futaba 4x20 VFD I have a try later :)

The controller can extract any parameter from the megajolt stream (as mentioned above), and has spare inputs for other pulse/analog/digital inputs (thanks to the sparing of i/o pins from using the I2C bus for the displays), so if you want to read/display any other parameter you like, voltage, turbo boost, mpg, or whatever, theres lots of room for expansion.

The existing tach/megajolt code will run on a mega168 powered Arduino (for Arduino newcomers, there are two models available, the older mega168 micro, and the newer mega328 powered board).

If you are going to expand and add more features, you might want to get the double-program-memory '328 arduino board, since the current code (with all the I2C and LCD Libraries, plus a lot of future-use code I put in there) takes up about 75% of the '168s space. The 328 will have more room to add features if you want.

I used the Boarduino variant of the Arduino - (there are many of Arduino clones) because it fitted the donut/prototype board and the case profile I wanted to use. You can use the standard Arduino with a prototype shield attached for permanent wiring or any other variant that runs Arduino code, whatever suits you.

You might find some odds and ends of code in there that don't quite seem to fit this function. I recycled some of the code starting from an earlier Arduino project (a RobotWars coin-op Controller), so if something looks superfluous or irrelevant in there, don't complain, fix it - :)

Likewise, if you find any bugs, or significant technique improvements, tell me.. nicely :)

My state-machine programming skills are years old and a little rusty, so it might look a bit weird to experienced multi-tasking coders, but it all worked first time, so they cant be *too* bad.. There was only one small bug - to do with long-to-int conversions that made the display numbers spaz out - and flicker the (currently unused) blue led tube backlights rather funkily when I reached 3276. Rpm.

When it first did that on a test run, I wondered if the (to be added) Flux Capacitor had triggered with all the blue flashing lights ! (we use metric down here in Oz, you can keep your 88mph ;)

Experienced Programmers will likely notice the significance of that rpm number to do with the bug, Non-coders ignore it, its a binary joke :)

I was a bit worried about the reputedly short-lived and fragile In-4 tubes in an automotive environment. I had heard of Cathodes touching each other and sticking in bumpy applications, 0 cathodes evaporating and short In-4 life (compared to other nixies with Mercury gas added instead of pure Neon).

But so far, the NixieTach has been bumping along in my 30yo Gemini Panel Van (which hardly has the ride of a Limo), sitting free on the dash and sometimes rattling against the windscreen for over 2 months with hundreds of kilometers driven every week without a hiccup so far.

I sometimes move the unit and and out of my workshop for code tweaks, so there was no point mounting it properly. Besides I figured In-4s are cheap enough to be replaceable if one dies, wheres as the more-liked models of nixie are pricey units to risk testing in a rough auto environment until a cheaper one has paved the way, Also, it looks very "Back-to-The-Future" sitting on the dash like that :)

The I2C bus is running at 100Khz which provides for the potential for thousands of display updates per second (with code optimisation - it probably wouldn't go that fast, as it is at the moment), but theres no point in running that fast any. There is a software limiter/timer in there that holds the updates down to around 25 (IIRC) per second, which is plenty fast enough. Any faster and it just gets jittery.

In fact, I had to put a rather convoluted averaging & delta-limiter routines in to stop the last 2 digits being a blur of fluctuation.

Did you ever wonder why most digital tachos usually only read to the nearest 100rpm ? - Internal Combustion Engines don't hold that steady at any RPM, so there's usually no point in more precision and its difficult to do. But I didn't want to have 2 wasted nixie tubes just displaying "00" all the time, and I was sure I could get better accuracy - I could see there was only about a 10-20 rpm fluctuation on the OLED/LCD display, but even that was enough to blur the last 2 digits into an unreadable flicker..

So I fiddled around a fair bit with first averaging the RPM readings from the Megajolt, then running them through the weird bit of code I call a "delta filter".

Basically, it stores the last few rpm readings and checks the current reading against the last one to see if it has gone up (+) or down (-).

(follow closely here guys - this bit is hard to figure out by reading the code) ;)

If it has gone down *this* reading, and the the *last* reading had gone *up* from *the one before* that, then-*if* the current delta *doesnt* exceed the pre-programmed threshold amount (currently 25), then it considers the current up/down direction reversal change *by a small rpm amount* to be noise, and ignores it, continuing to display the last rpm reading.

else...
If the current delta-rpm (change) is in the opposite direction from the last time, and *exceeds* the threshold level (say, it last went up 10rpm, but this time has gone down by >25), then it updates with the new value.

--block2
If it has gone *up* this time, then the next block of opposite logic applies.

and..
If it goes up or down by even *1* rpm, *and* the direction is the *same* as it was last time (indicating a constant increase or decrease, not noise jitter), then it displays even that one rpm change and updates the currently displayed value memory.

Got all that ? Phew :)

I tried several techniques of software filtering before I hit upon this one that seems to do the best job of stabilizing the displayed rpm, whilst still leaving it responsive and snappy (as a simpler long-period averaging function wouldn't have). I have seen Digital Tachos with 1-per-second update time which is near-useless to me, and besides looks boring to watch as the readout jumps between wide readings once a second. With this code, my tach can update RPM readings 25 (or more) times a second and still be stable to read at a constant RPM. Looks much better !

This function also allows you to read the RPM down to an accuracy of 10-20 rpm, 5-10x better than your average 100rpm minimum-step Digital Tacho. This should be useful when one gets installed in my triple-Weber-carburetted Hemi for accurate carb tuning and RPM balancing.

If you can see a better, cleaner, simpler way of simplifying that untidy big blob of if-then logic and implement the same delta-filter in some easier-to-understand code, please show me :)

The currently not-operating blue tube-backlights are controlled by the Auxillary output channel of the Smart-Nixies. All that is needed to activate them is to set the high-bit of the value you send them to be displayed. 88mph or 9999 Rpm anyone ? Maybe a shift-light, rev-limit warning (The megajolts Rev-Limit Status bit could trigger this) or perhaps a speed limit warning if you add a speed sensor ? Refer to the Smart Nixie documents for more detail. I'll get around to this soon :)

I think thats about all the bits of the code I should explain right now. No doubt if you haven't worked with I2C before, bits of the SmartNixie/LCD driver code might look confusing, but trust me, they work, if you don't understand it, dont worry, just use the I/O routines as is, and fiddle with the other bits :) If the comments tabs and things are all over the place, sorry, it seems my several text editors dont agree on how long a <tab> is so different programs display the formatting differently.

Well, that was a long ramble. A bit like the video.. I meant to just snap a few pics a few months when I got it going, but the video got a bit out of hand, like this blurb :)

As I said, I'm not building them for anyone, but if someone else wants to build one, or make them for others, feel free.

I hope you enjoyed watching and reading about my Nixie Tach !

regards

Brett Paulin
Last edited by Spockie-Tech on Mon Mar 29, 2010 3:08 am, edited 13 times in total.

Spockie-Tech
Posts: 152
Joined: Wed Jan 02, 2008 12:52 pm
Location: Melbourne, Australia

Post by Spockie-Tech »

and finally, the Arduino Code to drive it all - you can use this as is, or rip-out the Megajolt receive/decode bit for use in your own projects if you want.. :)
Attachments
NixieTacho (KarrKontrol) v.1.10.pde.txt
Arduino Nixie Tach Code
(28.89 KiB) Downloaded 3127 times

BRUCEROE
Posts: 96
Joined: Wed Mar 03, 2010 10:00 pm

Holden Gemini Van - with Nixie Tacho

Post by BRUCEROE »

The Nixie tube tach is cool. I built one in 1969 when Fairchild came out with a decade counter/latch/decoder chip set. The problem is high voltage for the tubes. I generated an audio frequency 180 volt pulse, which the eye sees as continuous. A pulse width modulation ckt gave me variable brightness, never tried a photocell auto control. It was just a frequency counter, with 0.3 second count interval giving 50 rpm resolution for a V8 (0.4 sec for a 6).

The knob to vary advance is described by me under OPERATION/TUNING AID here. I used plus or minus 12 degrees, seems to be a reasonable range, works well on my engine so far. Just a 5K pot into the AUX input, and a few numbers into the timing modification/correction chart does it.

Spockie-Tech
Posts: 152
Joined: Wed Jan 02, 2008 12:52 pm
Location: Melbourne, Australia

Post by Spockie-Tech »

1969 ? Wow, Thats when I was born :) Vintage !

The high voltage for the tubes is easy these days. TaylorEdge Electronics (the makers of the SmartNixie modules) make a very cheap (About $10) tiny little switchmode power supply module the size of your thumb that takes anything from 5v-15v in and puts 150v-200v out (controlled by a resistor or pot). Plug and Play tube power supply !

As for the Aux Tuning Knob, I'll go read your thread, but off the top of my head, doesn't the Aux input apply across the whole timing range ? My plan is to have the controller adjust only the current in-use advance cell, since it already knows which cell is in use from the data stream and can mod it and send it back.

That way if you dial in or out a few degrees at high-load, low rpm or whatever , it doesnt affect the entire table, messing up your idle and other cells, only the current load/rpm point.

brentp
Site Admin
Posts: 6274
Joined: Wed Jan 24, 2007 6:36 am

Post by brentp »

This is fantastic- thank you for sharing this. I *love* Nixie tubes- they are retro-gorgeous. Probably related to my fascination of 1950's computer technology. :) I promptly tweeted this too :)

Wow! Thanks again!
Brent Picasso
CEO and Founder, Autosport Labs
Facebook | Twitter

NITROPIXIE
Posts: 704
Joined: Sun Sep 07, 2008 1:54 pm
Location: Fareham, GB

Post by NITROPIXIE »

Hey Brett

Awesome bit of kit there. Those Nixie's are retro cool. If you don't mind i would like to ask you a couple of questions about how you integrated your display system with the megajolt.

What i would like to know is did you connect the display system through the RJ11 connector (as if the megajolt was connecting to a computer but is instead connected to the display pic and it reads off the information/data the megajolt would of provided)?? Or did you use the pic to piggy back off information from between the EDIS and megajolt (pip and saw lines).

I would like to produce a display showing live rpm, map and advance values and just wondered which way you have tackled this?? A basic block diagram would be excellent if you would be so kind to divulge your secrets.

Ryan
1310 A-series Mini, lightened and built myself. V4 board and loving it

Rasputin22 - The Mini Forum
Rasputin22 - MK1 Golf Forum

Megajolt repair for the UK available

BRUCEROE
Posts: 96
Joined: Wed Mar 03, 2010 10:00 pm

Post by BRUCEROE »

Yes my + or - advance knob does shift the entire map. But turning it back restores everything, since the map wasn't changed. The idea is to find areas needing adjustment, then go back & update them later. Seems like, when I try adjusting one map point, the engine immediately slides off that spot to an adjacent spot, and the benefit of the change is obscured. Moving the whole map continues to keep the engine on the change, even if it moves a bit. When the areas & magnitude of change are found, go back & generate a smooth advance map, then try it all again. Bruce Roe

Spockie-Tech
Posts: 152
Joined: Wed Jan 02, 2008 12:52 pm
Location: Melbourne, Australia

Post by Spockie-Tech »

Thats a good point.. It would be difficult to do just one point.

I can think of a few software ideas that would allow whatever point that was moved to to be adjusted as long as you were holding the button down or something like that, but for simplicity, a single knob attached to the already existing hardware cant be beaten :)

Spockie-Tech
Posts: 152
Joined: Wed Jan 02, 2008 12:52 pm
Location: Melbourne, Australia

Post by Spockie-Tech »

NITROPIXIE wrote: If you don't mind i would like to ask you a couple of questions about how you integrated your display system with the megajolt.
What i would like to know is did you connect the display system through the RJ11 connector
I would like to produce a display showing live rpm, map and advance values and just wondered which way you have tackled this??
A basic block diagram would be excellent if you would be so kind to divulge your secrets.
Hi Ryan,

No problem, No Secrets here, I'm happy to share the design..

Yes, the Arduino Micro attaches to the RJ11 port on the 'jolt, and "pretends" to be a serial/rs232 attached computer (well, it IS a computer, just a little one). It has a couple of transistors to shift the voltage levels since the 'duinos RS232 is at 0-5v levels, whilst the 'jolts is at +/-12v. a transistor with some resistors and a diode on the input side pull the megajolts output down to 0-5v fot the arduino to read, and the megajolt seems happy reading a 0-5v output from the Arduino. Max232 chips are pretty tolerant on what they read as a valid signal voltage wise.

You could use a MAX232 chip on the 'duino to give it full-spec RS232 voltages, or you could bypass the Max chip in the jolt so the 'duino and the jolt talk back and forward to each other at 5v, but this way you dont need to modify the jolt and you can still plug a computer in without changes. The Rs232 receive level shifting transistor circuit is very simple. I can draw it for you, or there are heaps out there on the net of how to pull full-volt-rs232 down to arduino compatible levels.

It uses the commands specified in the Megajolt API to "ask" for the status string (sends an "S") - then waits for and then interprets and displays the bits of the status string returned from the jolt. There a little bit of math to convert the two-byte high/low microsecond timer count returned by the jolt into a displayable rpm, then the previously discussed filtering code to stabilise the display.

Live RPM, Map, Advance would be easy-as. If you look at the big line of digits on the bottom of the Oled display in the video, you will see they are already there, just not seperated out and nicely displayed. The current advance is the first (leftmost) two digits of the string. You can see it changing when I drive.. mostly between 20-35 degrees advance. Modifying the software to put it on the nixies or a more prominent placement on the OLED is simple. The Map is further along the status string, and possibly a 0-FF value (have to read the code or API spec).

The basic block diagram is easy

[EDIS]---->[Megajolt]<----RS232-serial---->[Arduino]----{I2CBus}----OLED/LCD
...................................................................................\---------SmartNixies

Does the code make any sense to you ? (Start at the {Main Loop} part, and ignore all the pre-defines and subroutines unless you need to look at them, anything with a // in front it is just a comment, and not part of the program...

The basic core is simple,

Code: Select all

void loop&#40;&#41;			
&#123;	
		nixie_update_time = 20;             //  was 50ms ;
		query_megajolt_status&#40;&#41;;
		if &#40;megajolt_status==3&#41;             // if timeout, just try again for now
			&#123;megajolt_status=0;&#125;
		rpm = megajolt_rpm_word;
		rpm = averaging &#40;rpm&#41;;
		update_nixie_tach&#40;&#41;;
	              analogWrite &#40;nixie_bargraph, &#40;megajolt_rpm_word/20&#41;&#41;;

&#125;  // End of Main Loop
//&#125;
Look for the LCDsetadd (set address on screen), and LCDDispNumb (displaynumber) functions to see where the LCD screen is updated. They just need to be moved/changed to display different parameters, or if you want the display on the nixies, then the update_nixie_tach function is where you modify.

Or if code isnt your thing and you go to the touble of building one, I'll do some basic code changes for you..

NITROPIXIE
Posts: 704
Joined: Sun Sep 07, 2008 1:54 pm
Location: Fareham, GB

Post by NITROPIXIE »

Brett

Cheers for the help. I don't think i can see the full code you have posted up. It only seems to show the last bit of it. I always wondered if something like this was possible but i didn't quite have the knowledge 'how to' but i do have the knowledge to understand and how to put it together.

I do have an Electronics Foundation Degree under my belt and i have done some programming before so I should be upto speed with it quite quickly, plus if i have any problems i can go and see my old tutors. I have also found a supplier here in the UK and the prices seem very reasonable in deed. I really think i will invest in one but research is first.

The RS232 on both the V3 and V4 only use a 5V power supply so i don't quite understand the need for the extra components???? for connecting to the 'duinos.

I guess i had better go and look for some shiney shiney displays :D
1310 A-series Mini, lightened and built myself. V4 board and loving it

Rasputin22 - The Mini Forum
Rasputin22 - MK1 Golf Forum

Megajolt repair for the UK available

Spockie-Tech
Posts: 152
Joined: Wed Jan 02, 2008 12:52 pm
Location: Melbourne, Australia

Post by Spockie-Tech »

Hi Ryan,

The full code is listed in an attachment in an earlir post - up a few posts - Nixie Tach KarrKontrol v0.1/pde.txt (or something like that), the bit in the above {code} window is just an extract of the core functions. download the attachment, and if you are going to load it in the arduino editor/programmer software, remove the .txt and leave the file extension as .pde (the standard Arduino extension). I put the .txt in there so standard text editors wouldnt barf at it.

The Megajolt does only have a 5v power supply, but it also has a MAX232 chip, which has a little internal charge-pump that with the aid of external capacitors allow it to change the 5v supply into the full +/-12v swing for RS232 comms.. You can bypass this chip if you want, or just add a transistor to the Arduino input (which doesnt have a MAX232 by default) to limit the incoming voltage swing down the 5v.

Shiney Nixies, or Shiny OLED/LCD Displays ? If you're just going to use the OLED/LCD part, look around on ebay for "Futaba VFD". They're quite nifty looking in a car, but you need to make sure you get one that runs the hd44780 style controller chip (most, but not all do). If you want Nixies, John Taylor at tayloredge.com has a supply of various types at quite reasonable prices to suit the smartsockets he sells.

Good to see someone else is interested in building one ! :)

regards

Brett

Spockie-Tech
Posts: 152
Joined: Wed Jan 02, 2008 12:52 pm
Location: Melbourne, Australia

Post by Spockie-Tech »

Woot, The Nixie-Tach got a mention on www.hackaday.com -
http://hackaday.com/2010/03/30/nixie-tachometer/

That would explain the 1000+ views this thread has had in the last few days ! :)

Good plug for the Megajolt as a nice side benefit, hey Brent ?

Post Reply