Hi all,
an while ago i started a topic about making an digidash with leds etc.
because i'm now started with it but i regred of going any further with it i deleted both topics..
I now want to build something what is easier to build....
Soow i was thinking of using an 5" LCD graphical and the same overlay trick..
the LCD can be blue white or black white....
because i want to do it the ron champion i way i post this one to talk about what we all want??
because i think that the dashboard is an important thing but we also want to safe a bit of money (locost idea, some pints in the pub, high on man
hours..)
i thought that you all helped me an bit with telling your thoughts
ok
i have desinged here something..
also i want you to think about TouchScreen
and wich size should the module become??
if nececarry lateron i can send programmed chips arround the world // laser cut overlays for not much amount..
OK LETS START!!..
p.d. what drives me is the simple fact that i cant find not one module that has all my needs.. and displays what i want....
also it is allot of fun if you can make your car more of your self by putting your own bitmaps etc.. on the thing..
the digidash 2 for example costs 500pounds?? pff for that money we can make 5 units..
[Edited on 1/4/06 by tks]
[Edited on 5/4/06 by tks]
Display - Speed, RPM, Water temperature, oil pressure, fuel level and gear indicator if it's a bike engine.
Warning Lights - Indicators, full beam, fog, charge, handbrake warning light, oil pressure and neutral if it's a bike engine.
A big shift light.
LCD approx 4" x 3" with the warning lights across the bottom and the shift light a big wide red one full width across the top or a row of
progressive lights along the top.
Just my ideal dash anyway.
Hope that helps,
Pat...
now search for an lcd..
with driver and i make an dash for you..
i think we need 240x128 pixxels.
Tks
Touchscreen - YES please. Nice idea - i like it a lot.
In terms of size - i have a sony ericcson P800 mobile that i use in the cradle in the car. I find the screen too small and busy - it is difficult to
use the touchscreen on the move (private roads only) with fingers, only really possible with the plastic probe they supply. The screen is only 65 x
45mm. I would say 80 x 60 ish minimum. It would be worth doing research of the existing dash units to compare.
I would guess your dash will be less busy and the touch areas larger.
Digidash is more like £700, so as you say you have some scope here. I would guess the lap timing facilities etc are not what everyone wants but std
dash displays and warning lights will be good (so no other lights required - perhaps a few user definable ones will be good - ie reverse light warning
etc).
Allen Bradley do some good touch screen colour displays, obviously at a cost but worth a look (industrial PLC).
Some neat graphics would be well smart - fuel level, warning displays (oil pressure, temperature etc). Even a welcome screen on start up that you can
add pics to.
Im free wheeling here but you may be on to something.
Keep up the good work - i could be interested in a fully working one when you get that far especially if you are talking about £100 ish.
ok
i'm thinking about thise one..
Link To The LCD with/without touchscreen..
you need pdf vieuwer..
Tks
as an Start i think this will be the functions..
Data
- Speed
- Rpm
- WaterTemp
- OilTemp
- OilPressure
- Fuelmeter
- GearIndicator (speed/rpm calculated)
Leds
- Shift Leds
- Hazzard
- Fog
- Left Turn
- Right Turn
- Main Beam/HighBeam
- Oil Pressure
- Battery
allot of leds we could eliminatie with an message onscreen...
but for racing use it could be .. ok
also i was thinking of simple extra outputs/inputs etc..also for RS-232 output of the data in that way it is an open system..
also with the rs-232 function we can update the firmware..easy..
TKS
i now am trying to figure out.. if i use buttons..or only one encoder etc..
[Edited on 15/6/05 by tks]
hi,
I like the idear I also have PCB layoutes and bords made up that ues a pic have usb and a host of other stuff on bord that make a good prosesor main
bord that can be mounted on to the main bord witch would supply signal condidtioning.
However I think to main of the systems out there are very porly designed from the point of lay outs. and the use of screan real estate. As cool as
couler scheans and touch screans are thay dont realy have a place in a project like this.
look at it like this you can proses and disply much more information than any driver can ever proses. It is about displaying what is inportant at any
one point. and displying that information in the best way posible. i.e. a grapg or gage can be be read very quickly and gives a good indication rate
of change ,roufg level where as a number takes much longer to read but give an absolot value, but does not give a good indication of rate of
change.
any way ther is lots to think about if you whnat to develop it as an open pproject can I sugest you set up a wiki so other can contrbute.
blake
ok, but offcourse we could
try to make kits for different settups..
i also have thoughts about using an encoder with integrated button..thats also easy...
with in an couple of days i recieve an order for the displays...
in the mean time i have already designed the overlay..
any one ideas?
maybe we can use your boards???
is it an USB to rs232 solution or pure USB??
Tks
Rescued attachment dashidea.JPG
hi it is purly usb as that leaves the pins for the rs232 free for rs232 however the bords I have bring the rs232 to a pin header with the debugging
stuff.
the bord is 42mm by 45mm and is all surface mount.
blake
sow you have pure usb...
pff it differs allot from RS-232
i always worked with RS-232..because of the simplicity...
well will need one board to try an bit with it how much do they costs??
Tks
forget to mention wich USB chip do you use?? and where you planning to use 16F877a?? or 18 series??
think 16F877a is enough..
[Edited on 17/6/05 by tks]
I made a dash for my old lotus elan kit about 13 years ago, used a 240x128 pixel graphics display & a single board computer with a 1MHz 6502 on.
It was programmed using PASCAL for the BBC computer (did my own mini OS to intercept graphics vectors etc.). It did rpm bargraph update on 10Hz
refresh & updated mph at 2Hz - so shows what could be done with stone age technology...
Obviously technology has come on LOTs, That old thing worked fine (& I believe it still does!) but there were one or two issues with the display.
I used an ntc on the -Vee LCD bias to keep contrast right as temperature varied - again worked great. There was a reduction in contrast at high
temperatures. At low temperatures the contrast was fantastic, but the speed was VERY slow eg about 10s for a dark pixel to go light. So winter
mornings tended to be an 88mph experience....
I used battery backed RAM to save odometer & trip data - (OK it was an RTC chip) You need triple redundancy in this data with voting/fixing on
powerup.
Finally, there was the question: intelligent dash - what can I do that's flash that's not in (eg) a BMW? The only thing I could come up with
was little numbers indicating ON THE TACHO BARGRAPH what revs I would be doing in each of the 5 gears. This was fairly cool and is an alternative to a
gear indicator display.
Bob C
PS - you know this will take 4 or 5 times as long as you think it's going to don't you.....
it will depend all on
how your programmins skills where / are..
and in wich language you make it etc..
but rpm and speed is easy..
also temps are easy... and pressure.
the difficult would be interfacing with the display but this also cant be very very difficult.. now a days..
TKs
tk yes rs232 is very simple however by using a 18 seres you get usb on chip the reason rs232 is not used because you still need the external level
shifter. hence the rs232 is brout to a pin header so a external device can be pluged in. the bord is quite small all the bits are surface mount and
the origonal project thay where built for has usb drives developed for it. you can also do incircuit programing.
meaning that you dod not need to pree program chips.
we should get a wiki up and runing maby as part of this sight. then we can post up scemaics and other infromation. i.e. source code and schimatics
then any one can build the dashes.
blake
Have you guys seen the Dash7 unit yet? Its been discussed on this forum before if you'd like to do a search. Tor Antle the designer post on the
sevens forum alot and is quite aproachable. Check out
http://home.c2i.net/toratlel/Dash7.htm Its almost exactly the same thing you guys are already considering.
A number of people have pursued this idea and a number of units are operational, instaled and were being used last time I looked. I considered this
path myself, but a number of the components wern't automotive temperature rated. I live in Canada where those extreams are very common. A small
obsticle the just required a bit of research.
CH
its no what i had in mind..
i wanted a digidash clone..and with clone i mean..with the same functions..
see the uploaded pic above...
lights for indicators....
an complete solution..
also my personal opinion is that i don't like the old gauge style...
tks
Let's talk about money..
i have an enquery every display
Will cost 200 euro's (black white) with TP
Sow we have:
- Laser cut parts 20euro each
- Display 200euro
- Pic cpu 10euro(not programmed)
- Leds 10euro
(can be expensive if very bright/special leds are used)
- print 10euro (hand made)
- resistors 5euro
- etc. 6euro
Total 261euro! soow it will be some 180pounds this is including touch panel!
The display stats are above (pdf link)
Is it cheap for an complete dash??
or to cheap? incomplete?
de touchpanel is made that it works with your vingers....
the program i'm gonna write will be like cellphone style (nokia etc.) that idea..
offcourse every thing is adjustable in it
- Like pulses per km/h / pulses per mp/h
etc..sow an devider is built in..
- Scale of rev meter
- Maybe some styles??
- RS-232 output enabled / disabled??
- Temp sensor used or universal one..
etc.
Tks
Offcourse the more people will subscribe the more i order the more discount i get.
but have no idea right now how much it would be..
The only thing we have to mention is that it don't comes in an case (the dash) its sort of an overlay system..but offcourse we locost builders
make ar own one from ally..??
Well guys you should all motivate me!
hi,
why the touch screan?
I can not think of any feature it would add other than bloat. you say can say is is for seting the system up but why not conect it to a pc for that?
and as for drivig the driver is never going to have the time to touch the screan coupled with the in car vibration macking it hard to be acurate.
if you whant the driver to be abol to itract wit the dash look at a number of studys done by NASA and others witc sufest interfaces witche enable you
too keep you hnds on the controls. i.e. serting weal mounted ala f1
i dunno.. wy would you need to set settings while you are driveing..??
its just for small things..
an pc is also allot of hassle? some times you don't have it by hand (during SVA) etc..
i only was thinking of some menu's for race/track use..
or normal use..your mobile phone is also very clear while driveing..
if touchpanel will work is just an matter of programming...
(small buttons but many area will work same etc.)
dunno..the display isn't needed to be touched / buttoned because its big enough to display all what you want to see and if an error etc occurs
then it will popup with an message or an check button etc..
sow my idea was that while driving it isn't neccecary..
but while configuring it should be reliable clear and offcourse fast..
think about an pc hassle..??
wy not alla mobile phone..vast easy..
what we want more??
Tks
I assume by mobile phone, you mean a smartphone, not your typical sony erricson, as i find it hard to see how you can connect a phone to control such
a device, using a software applet running on java (what with the signals that need to be sent to the digidash and recieved), and to only have limited
memory on the mobile...
If you think a laptop is too big, how about controlling it on the road using a PDA (for track use a laptop would be used) as they now have access to
larger memory, such as 2gb.
I would steer clear of mobile phones.
Cheers
I have looked at this a number of times and would like to build one, but so far the software hasent been released on the site.I emailed the builder to
be put on the mailing list but havent heard anything for months.
Paul.
quote:
Originally posted by madman280
Have you guys seen the Dash7 unit yet? Check out
http://home.c2i.net/toratlel/Dash7.htm Its almost exactly the same thing you guys are already considering.
A number of people have pursued this idea and a number of units are operational, instaled and were being used last time I looked.
tks - 23/6/05 at 02:32 PMconfusing allarround//
drop digidash 7 i want to say with that that'i'm not going to build something like that..and it makes confusing over here..
also with mobile phone like control
i don't mean you need it..i just want to say with that that the menu's will be like that..(with two/3 buttons max..)
offcourse i can consider making an datalogger...its simple anyway..and mem chips are cheap..
i think that 1 sample an second would be far enough??
but offcourse it would be user eligable..
Tks
also i'm thinking of an lock system...
(you have to enter an pin code to be able to start car etc..)
RickyKay - 24/6/05 at 06:17 AMAl this sounds really good let me know when you have a finished product i will be very interested in buying one..
tks - 24/6/05 at 06:37 PMDoes any one
Already have the confidence that i can order an display for them?
i need to know it?
also the laser overlay can i order multiple times?
if not then i order both 1 time and give an demo when finished
Tks
i also need your advice...what is preferable? using some general temp sensors? (sow you need to buy these to work all? this way uses etb they have the sensors with the kit?)
or just an lead for temp sensing? its an bit difficulter because the system needs values then to calculate his formula...
offcourse i can make an kind of small tuning wizzard in the system.. it will ask you 5 values @ 5 temps (sow it can make his own temp formula)
but dunno what we all prefer??
it could be also a hassle to mount other temp sensors in the existing system right?
ceebmoj - 24/6/05 at 10:23 PMhi,
for the instruments why not suport 3 or 4 comon standard instruuments i.e. and ranges i.e. 0-5v 0-12v mA ranges and others youcan then also have a function to build a scalig system using a say a 6th order polynomial system or the like.
as you are thinking of using a PIC if you use a DS PIC you can use the free PIC dev tools to make up youer poly representations. and the DS is well soted to handleing evry thing You need and could do some nice graphics if that is what you like.
you could also ues the DS for some nice real time vibration analasis i.e. you could ues the same PCB for testing the prop shaft and balencing it. a total seporat proect I know but one worth the hasle.
blake
tks - 25/6/05 at 12:30 AMwhat is an DS pic??
planning tu use the 16F877a or an 18F series..?
TKs
ceebmoj - 26/6/05 at 08:22 PMDS PIC is a new range of micros oferd by microchip. you can think of them like a PIC but with a lot of signal prosesing stuff tacked on. with alows much more complex maths to be cared out. thay are a nice device with some good power to them. as the ds core is designed for signal prosesing and hence repeated arithmatic i.e. filtering that can be used as nice display drivesr as well as handeling the other stuff you whant to do.
have a look at the microchip web sight. thay also have some free voice recognitaion and nois cancellation librys for download.
blake
tks - 27/6/05 at 04:54 PMWill think about it then....
Ok, ordered a display!
Now what do we think about the layout??
if you can print the pdf attached you will see the display layout on scale 1:1
please tell me your thoughts..??
Tks
[Edited on 28/6/05 by tks]
ceebmoj - 28/6/05 at 07:59 PMhi,
what are you going to wright the firm where in c, asembely or other?
blake
tks - 28/6/05 at 08:04 PMDepending on the needings,
but like always i start with Basic.
Today i have ordered/confirmed the first display kit..
when it arrives i will have an better look at how to do it....
(protocol etc.)
Tks
p.d. i have changed the overlay! sow downloading is an must!
will quote price / order for 10 pieces..
[Edited on 28/6/05 by tks]
ceebmoj - 29/6/05 at 06:45 AMhi,
I was not awhere that ther was a basic compiler would you mind posting a link to it.
blake
DarrenW - 29/6/05 at 09:02 AMLayout looks good. I cant see the final sizes but a good idea may be to make it small enough for steering wheel mounting (after SVA of course).
Would it be easy to program in an ignition immobiliser - possibly password protected?? Something that will cut a signal to a relay for either low tension ignition circuit and / or fuel pump relay.
A couple of spare warning lights would be good. The BEC guys could use one for 'N'. Plus a spare for when you get the datalogger developed to show it is recording (im aiming high here for you!!!!, nothing wrong with being future proof).
alfasudsprint - 29/6/05 at 01:30 PMTKS,
pdf file not downloading...
alfasudsprint - 29/6/05 at 01:58 PMTKS,
sorry, puter problem! ok now, and liked the layout dso far.
Tim
tks - 30/6/05 at 07:17 PMWell,
Display is untherway sow lets wait and see where i can come up with?
Tks
[Edited on 30/6/05 by tks]
tks - 4/8/05 at 12:19 PMDisplay arrived
Touch screen version!
very very bright (black / white)
and very beautifull
will post some pics soon..!
No can the fun began!
Walter
James - 4/8/05 at 03:34 PMGlad to hear it's progressing well.
Looking forward to seeing the final results!
Cheers,
James
tks - 4/8/05 at 06:11 PMI'm not an really good camera man, and because of its Huge brightness (to be able to see it in the sun)
you have to zoom allot to see the pic. and then the light doesn't enter in the camera.
Here some pics..
This shot is taken from a bigger pic...
Want more?
see my pic section (foto archive)
Regards,
Tks
Rescued attachment DisplayZoom.JPG
tks - 10/10/05 at 08:13 PMHere is the first proto type of my dash..
does any one have a great idea's or is any one more skilled with paint as me?
with paint i can make images wich will be shown on the display!(black white paint mode)
upload all your ideas and the winner's idea will be going in production!
Tks
the flexibility is enormous... i can do every thing sow its more difficulter that we now have an clean sheet and i have no idea where to start...
i liked the idea of an rpm bar? but an horizontal one would be somewhat to simple...with the flash in the upper corner(you enter settings while not driveing)
[Edited on 10/10/05 by tks]
Rescued attachment Display beta version.JPG
tks - 10/10/05 at 08:38 PMOk,
i need to have an idea of wich sensors i'm dealing with. because i don't want to build it the simple way and say you need this, that sensors etc. (wich for us is an pain in the .... )
i want to make it flexible.
as from now on the following is needed to let the complete thing work!
- high beam live cable (just an extra connection to one of the bulb leads)
- temp sensor wire, temp sensor should NTC or PTC to GROUND (or just connect one end to GROUND)
- oil pressure! should switch to ground if no pressure is readed!
- Neutral should switch to ground if in Neutral
- Speed pickup: I use the front ABS sensor from my Sierra hub. but in fact every way should work.
- Rpm coil pickup, or better MCU corrected coil output (like my injection VFR has) it reads the same freq as on one coil any way)
- if voltage rises below 0,7volts it will trigger the pwm timer.
- left dirrecion life feed from the left direction bulb.
- right dirrecion life feed from the right
(if both are present Hazzard led wil be lit)
Im mobilizer is easy to build in..cutting of fuel pump etc. witht the touch screen we can do allot of tricks!
also i was thinking of an accedident switch....
(just an bulb in an housing behind the rad) when the bulb brakes (and the spiral)
you now its time to shut down the engine!
Tks
tks - 10/10/05 at 08:43 PMDownloading.....
Dale - 10/10/05 at 09:43 PMI am assuming that the rpm graph you are showing is typical curved graph. What if you made it vertical but as it goes up the horizontal shows level increases as well. This way there is no vectoring to get a curve.
It may actually not be any easier, just a thought.
Dale
tks - 10/10/05 at 09:49 PMi have thought about it..
but the problem is... how i can we read then the difference between 6 and 12000rpm???
maybe i just should split it up in mayne horizontal ones? in fact its that!
go up wards and draw an new horizontal line.. then when we reach the corner we just switch to an very small width but we increase line high enormous...
think we have got the solution!
Soon newer pic!
Tks
MikeRJ - 12/10/05 at 12:46 PMquote:
Originally posted by ceebmoj
as you are thinking of using a PIC if you use a DS PIC you can use the free PIC dev tools to make up youer poly representations. and the DS is well soted to handleing evry thing You need and could do some nice graphics if that is what you like.
I know this is a bit old now, but the "free" part of the Microchip C compiler is GCC based. The bit you get when you pay for it is the optimiser, and believe me you need it! The GCC port seems to have been designed to output some fairly horrible code..
SDCC now works with most PIC16x and PIC18x, though still not exactly commerical quality.
As someone who loves using PIC's (and I use them everyday) it pains me to say it, but if you use one of the AVR devices you get a very useable GCC port in the shape of WinAVR. The AVR's are also significantly faster than the PIC's for the same clock speed.
tks - 12/10/05 at 08:12 PMlol i only use an pic device, and when running @ 20Mhz we can do everything we want. In fact its only generating the data and sends them to the display
(I2c or SPI or RS232) and the display the shows that info.
Sow we don't need avr for nothing. also avr is an difficult language because they are sow much commands, that saying thats the reason wy its faster.
Tks
MikeRJ - 12/10/05 at 11:11 PMquote:
Originally posted by tks
Sow we don't need avr for nothing. also avr is an difficult language because they are sow much commands, that saying thats the reason wy its faster.
Tks
If you are programming in C, then obviously there is very little difference. The AVR does have a larger instruction set than the PIC if you are using assembly, but it's actually not hard to pick up. I personaly prefer PIC's, having used them most for the last 10 years or so, but I have just finished a project with a Mega128 and I have to say I was impressed with the speed.
However, the only reason I suggested the AVR was in terms of a good, free C compiler which is sadly lacking for the PIC. I use the HiTech compilers for 16F and 18F in work, and it's very good, but the $800 price tag is out of reach for all but the wealthiest amateur/hobbiest.
[Edited on 12/10/05 by MikeRJ]
tks - 13/10/05 at 12:49 PMbut lets keep this one to the point..
whe are not binded to Avr? we don't need performance....
20Hz rpm and 2hz speed is enough..
what we also could make guys....
GUYS??!!???
Is 2 bars 1 for speed and 1 for rpm??
Tks
Northy - 13/10/05 at 01:11 PMTks,
This is looking good. If you need any help just let me know.
Gav - 13/10/05 at 03:59 PMhow about G sensors?
tks - 13/10/05 at 07:37 PMthey are easy to communicate with...
when i searched for them i found ones..
but the limit it could messure was 1G..
soww it wasn't much. while saying that.
an porsche 911 GT (i thought it was this model) while braking pulls 1G
but have no idea about an locost.
another thing is thats almost 1 year ago sow maybe there are newer ones..
Tks
tks - 28/11/05 at 12:55 PMi need the help of some electronic/ computer programmers who are willing to help..
I'm a bit stuck with the LCD display, and don't know wich technique to use to interface with it.
Instead that it has an programming language its more like an command crusher.....
Need to know how to recieve RS-232 data with it. I know it can send it...
LINK to the MANUAL
To help the only thing needed is downloading from the site the Toolkit in it it comes with an compiler and an realtime display to test your program!
if we can make this together to a succes we can come to an very good alternative for the expensive dashes arround!
sow we can save some hundreths of pounds.. and spent them on better things.. like tyres/engine etc.
Tks
[Edited on 28/11/05 by tks]
Gav - 28/11/05 at 07:42 PMwhats the link to the sdk?
edit: http://www.electronicassembly.de/eng/dbl/dbl.htm#Software
[Edited on 28/11/05 by Gav]
tks - 28/11/05 at 07:57 PMthe link to the SDK is:
SDK LCD screen...
what i need to know is how can i excute an macro using RS232 or simple
how can i recieve RS232 data in de module...
for example my micro sends the actual RPM the display then executes the adecuate makro for displaying that rpm..
or i remotely choose directly the makro it needs to display..
thas basicly the problem i have....
how can i put the external parameters in the board....
it should be an easy one..
Tks
Gav - 28/11/05 at 08:16 PMOK ive had a look at the manual and the emulator, what is it you need help with?
it sound like your not sure about talking to the device via RS-232?
I'd be happy to help you write the basic protocol functionality, im not too hot on assembly although im well versed in C/C++
Gav - 28/11/05 at 08:38 PMok basically to execute a macro it looks like all you have to do is send:
11 04 1B 4D 4E 01 2C
being
11 = frame packet start
04 = length of the data
1B = escape
4D = M
4E = N
01 = index of the macro you want to execute
2C = checksum
tks - 28/11/05 at 09:43 PMsow in fact what i program a big part of it at least is basicly all serial commands!!
pff i oversaw it and thought it where all compiler commands!
in other words.. the compilers commands are the same as the serial commands!
well it makes things realy really clear..
what do you think of the display anyway?
will test the command in VB....
you will hear!
tks
p.s. did you saw any thing from how to recieve something from the device?RS232 settings?
p.s.2 did you read something about that to start you need to set the device in small protocol is there a command for?
Gav - 28/11/05 at 10:23 PMYeah so basically you just sending the bytes down the serial line the same as you would write them in their IDE but wrapped in the frame packet.
as for enabling/disabling the protocol on page 8 their is a paragrah on how to do this, which just look like a jumper setting.
i think your wanting to get events out of it, ie the user pressed an area that is defined as a button etc?
this is on page 8 also, it seems what you do is request the send buffer which it will then send you the event data in a frame packet
perhaps you could poll this data every couple of hundered milliseconds?
edit: yeah the actuall screen seems quite nice will be interesting to see what you can get out of it, although im not too impressed with their macro thingies, perhaps coz ive not looked to deeply into it.
[Edited on 28/11/05 by Gav]
tks - 28/11/05 at 10:56 PMthe problem is what do you expect from it.....
i thought it could also calculate....
but what i now basicly gonna do is just send the complete strings from the microcontroller to the display...
sow in stead of making an FuelUP makro where the fuel variable is lifted up and is displayed i just send the complete display command to the screen!
When i started the program i hoped that i would find an recieve command wich will place some value in some variable but this is much much easier and better..
Well in fact the complete menu's! are programmed in the screen...also you can desing your very own buttons checkboxes etc. etc.
Its now clear, the only thing i don't like is that i need to that checksum! altough i can do the MOD function....
also the terminal wich comes with the compiler does most of the dirt jobs and thats not handy full if it isn't told to you..
i still cant send/recieve from the display with the windows terminal..
question of time it will be i hope...
tks - 28/11/05 at 11:10 PMmy idea is do download an comport spy!
with suchs a program i know if the terminal sends settings to the display or not!
atleast i can see data!
i'm still thinking that the SDK terminal sends some crucial data to the display..
because hyper terminal doesn't show nothing....while in the SDK terminal every time i reset it recieves an message.
It only displays it when i put it in SmallProtokoll mode Shift + F8.
lets see what the spy does..
Tks
p.s. do you know a good/free one?
Gav - 28/11/05 at 11:13 PMI dont know what i posted will be exactly right, just a guess in the right direction i hope
perhaps if you gonna have a display, lets say your current speed and is ringed by a box for example it looks like you can create a macro for the screen area then just draw over the area inside the box to update the value.
The SDK, presumably if i had a loop back cable and 2 serial ports i could set the emulator listening on one and fire the commands down the other?
if i can get hold of a couple of USB->rs232 (this laptop dosnt have any serial ports) converters ill have a play and see what i can do, perhaps you could send me the macros youve got already and i can see what i can do?
[Edited on 28/11/05 by Gav]
Gav - 28/11/05 at 11:16 PMquote:
Originally posted by tks
p.s. do you know a good/free one?
http://www.sysinternals.com/Utilities/Portmon.html
althoguh i think this just shows strings not binary, ive not tested it myself so dont know if you can switvh between the two
tks - 28/11/05 at 11:28 PMin fact i aint gonna use macro's!
i only use it at the beginning for the basic display settup...
i'm just goona send the commands dedicated to the display
to set the new speed value
and the new water temp / fuel value...
the only thing wich needs some more thingking is how i'm gonna make an RPM bar..... and also an fast one.....
the microcontroller wich i'm gonna use will be able to do 56K serial data at TOP speed...
i would like to do it more with 11K9..its an proven speed for the micro....
the question is wich refresh rate i will get...
For the RPM....
Tks
download an Com port spyer from...
here
i think you will need an real example of the board to be able to see some real port data...
if you play with the eDip240-7 demo program..you can see allot of pos.
Gav - 28/11/05 at 11:33 PMi would of thought 56k would be plenty enough, i mean if you were going to be setting each and every pixel in a bitmask that would be a total of what? a little over 4k?
tks - 28/11/05 at 11:39 PMnow i know!
The bloody program ask constantly for data! it does just that! offcourse when i typ something it sends it (after an return)
sow in fact the display doesn't is DOMINANT anyway it alsways listens...
and just behaves like an totally slave...
pff what a dump fool...
sow even if you program the SDK to output data..you need to ask the display for the send buffer...
pff totaly other things that i'm working daily.....
Gav - 28/11/05 at 11:46 PMquote:
Originally posted by tks
sow even if you program the SDK to output data..you need to ask the display for the send buffer...
Yes!
although remember you wil have to verify the check sum and length then respond with a ACK or NAK
tks - 29/11/05 at 12:02 AMprety f*** complicated...
just respond with ACK
This is some data wich i fetched in the recieve buffer...
106 1B2D 1B56 4145 6520 4944 3250 3034 ..-.V.EA eDIP240
372D 5620 2E31 2034 6552 2E76 2042 5054 -7 V1.4 Rev.B TP
012B 4157 544C 5245 5301 6863 6572 7275 +.WALTER.Schreur
060E 0011 0611 0011 0611 0011 0611 0011 ................
This is the Write buffer(sended to the Display)
12 01 53 66 12 01 53 66 12 01 53 66 12 01 53 66 ..Sf..Sf..Sf..Sf
12 01 53 66 12 01 53 66 12 01 53 66 12 01 53 66 ..Sf..Sf..Sf..Sf
it does this very very fast...sow i think .. means display send me the data from the buffer! Sf will mean ACK!???
on the boot of the program in the display it sends his version to the terminal...
Can you translate it an bit?
I'm not so good with Hex/Binary/DEC/ACII mix.....
wy isn't the thing ASCII based! would be much easyer for me....
i red something about ASCII mode but have no idea...
will need to capture the data from the terminal when i set it on ASCII and look if it sends some different chip out...
tks - 29/11/05 at 12:06 AMthe send command is only usefull
to be executed one time OR! by the serial MASTER chip because else the display will fill his own buffer....
although would be smart enough to program a space in for the incoming commands i guess..
think i'm getting the clue out of this thing..
In fact its an bit strange communication.
because you do this:
>WHATS YOUR NAME
<ACK
DISPLAY PLACES BOND in his MIND
>TELL ME WHAT YOU HAVE IN MIND
<ACK
<BOND
>ACK
incl. ACK's
Gav - 29/11/05 at 09:29 AMim gonna try finding a couple of USB serial converters today, im pretty sure the emulator will listen on a port and act the same as the real display.
i think this is pretty easy, although what i dont understand yet is what the data is that it sends back when a button is pressed for example. im sure i can find out oncei start playing around with it.
tks - 29/11/05 at 12:48 PMagain you are faster with it as i'm..
on the emulator you can set it / give it an comport..
and an speed..
it then opens that port and listens to it.
It should be the way for me to program the MCU for the display, i will test it then using the comport and that function.
The only thing i don't know is how can i set the display to ASCII mode because it much easier for me to send #MG etc.
instead of $11 etc..
Hope you soon play with it and tell me your findings...
Tks
Gav - 29/11/05 at 02:21 PMquote:
Originally posted by tks
The only thing i don't know is how can i set the display to ASCII mode because it much easier for me to send #MG etc.
instead of $11 etc..
Tks
This should be relativly easy, for example in delphi(my prefered language) i would do something like this to send a basic string:
code:
procedure sendStr(
str : string;
xPos : byte;
yPos : byte);
var
Buffer : array[0..66] of byte;
i : integer;
chk : integer;
begin
try
Buffer[0] := $11; // DC1
inc(chk, Buffer[0]); // increment the checksum
Buffer[1] := Length(str); // len
inc(chk, Buffer[1]);
Buffer[2] := chr('#' ; // escape
inc(chk, Buffer[2]);
Buffer[3] := chr('Z' ; // Text ouput command
inc(chk, Buffer[3]) ;
Buffer[4] := xPos ; // X postion
inc(chk, Buffer[4]) ;
Buffer[5] := yPos ; // y postion
inc(chk, Buffer[5]) ;
//
// strip each letter and put it into the send buffer
//
for i := 0 to Length(str) -1 do
begin
Buffer[6 + (i)] := chr(str[(i+1)]) ;
inc(chk, chr(str)) ;
end;
Buffer[6 + i] := 0; // append the end of string byte
inc(chk, Buffer[6+i]) ;
Buffer[7 + i] := chk mod 256;
//
// send the buffer using your preferred serial comm method
// and check for ACK/NAK
//
except
// do something with the exception
end;
end;
if you look at page 17 of the manual it also tells you the difference between ASCII and binary mode, their dosnt seem to be a way to tell it, its in one or the other, so i presume that it will recognise which mode you are using because of the comma seperating the parameters.
[Edited on 29/11/05 by Gav]
[Edited on 29/11/05 by Gav]
DorsetStrider - 29/11/05 at 02:57 PMIs it too late to make a request for something I'd love to see on there?
I would love a dash with an external air temp display and black ice warning light.
tks - 29/11/05 at 06:52 PMwe are just started with the display....
interfacing..... sow no problem at all...
Tks
GAV i use visualbasic!
could you extract what the display was sending theother day?
the strange thing is that the terminal opens the port but when i press Shift F8
then at that point my monitor starts recieving the data!
Sow i pressume it is because the display sended the "GIVE ME THE DATA IN MIND" command right?
sow sending 2 dots means? Give me data
and Sf means ACK?
will make an VB prog...
Did you have the compiler running with this small Delphi prog?
Gav - 29/11/05 at 07:40 PMI know you use VB
The above procedure was just an example of how to send the commands using the binary method, it would be very easy to transfer this to VB.
I have not yet been able to hook up the serial leads because i need a pair of USB to RS232 converters and PC world wanted me to pay £40 each! so i didnt get any.
ok Sf is not ACK or NAK, ACK and NAK are standard comms Acknowledge and Negative Acknowledge and are the number 6 and 21 respectively or 06 and 15 in hex.
ASCII characters are in the range of 33 to 255 as numbers any thing below 33 is known as a control character like line feed and carriage return are 10 and 13
the DC1 and DC2 are also standard coms signal numbers.
once i get a couple of coms converters ill be able to help more
[Edited on 29/11/05 by Gav]
tks - 29/11/05 at 08:27 PMsow in fact it recieves 06 => ACK and then 11 00 11 wich means 00bytes in memory.
Then the pc asks again for data with 12 01 53 66 funy 12 + 1 + 53 = 66 sow i think its the checksum??
and then we will recieve again an 06 nad then 11 00 11 not?
Tks
tks - 29/11/05 at 08:41 PMif is end HEX(12) out of the port it says that i sended HEX(52) or so....
mhh almost got it..
Tks
Gav - 29/11/05 at 08:52 PMyep pretty much so it would be like this
code:
> 11 00 11 // psudo text command
< 06 // response OK
> 12 01 53 66 // get buffer command
< 06 // response ok
< 11 00 11 // response of the get buffer
> 06 // keep it happy by sending ACK
if you have a look on page 16 of the manual, this will give you the format of the returning data, ie the code of the keypads pressed.
also if yuo look further down it says their is a pin you could use as an interupt for when data is available, it might be better to use this rathre than polling the device for data, if your making your own circuit board.
[Edited on 29/11/05 by Gav]
tks - 29/11/05 at 09:12 PMWhen i do this:
MSComm1.Output = Hex(11)
On my monitor it says i have sended the letter B??
when i send "#" it says 23 in my monitor...
sow loooks like an translating problem?
Tks
Gav - 29/11/05 at 09:23 PMahh no i think youve mixed it up a little
ie
MSComm1.Output = Hex(11)
this is wrong what your saying here is convert the decimal number 11 to hex then send it, however the number 11 is in hex anyway (DC1)
so 11 hex = 17 decimal
might be better if you create some constants so its easy to remeber what number means what
ie (if my VB memory is correct )
Public Enum EdipCommands
DC1 = &H11
DC2 = &H12
End Enum
Public Enum EdipConstants
ESC = chr('#'
etc...
End Enum
it think the chr command returns the binary number for the character passed into it?
tks - 29/11/05 at 09:39 PMi think i have got it!
''Chr(6) ==> 06
''Chr(0) ==> 00
''Chr(17) ==> 11
the value after ==> is the value wich gives the port monitor..
sow now its just a question of sending!
we will see..
Tks
It works!
Finaly i recieve 06 (ACK)
pff what an job is this..
ok we are there.. now is MCU time...
[Edited on 29/11/05 by tks]
MikeRJ - 29/11/05 at 09:43 PMquote:
Originally posted by Gav
it think the chr command returns the binary number for the character passed into it?
The CHR() function returns a string with the the ASCII character of the number you put in it. e.g.
debug.Print CHR(31) would print '1'
The ASC() function returns the ASCII value of a character e.g.
debug.Print ASC("1" ) would print '31'
[Edited on 29/11/05 by MikeRJ]
Gav - 29/11/05 at 09:51 PMah yeah thanks Mike, ASC() it is,
been a while since ive done vb
tks - 29/11/05 at 09:56 PMsee post above
It works!
Finaly i recieve 06 (ACK)
pff what an job is this..
ok we are there.. now is MCU time...
Now i'm making the pic prog..
Gav - 29/11/05 at 10:01 PMid be interested if you wanted to share the details of the pic programming side as its something ive never done.
will you do doing it in C or assembler?
tks - 29/11/05 at 10:06 PMI use an basic to assembler compiler for it.
It makes life allot easier!
i have learnd it all my self.
also the knowledge of the electronics asside of it.
in fact i studied Mechanicl Engineer for 4 years.
But i have always earned more money with Computers/Programming programs
and hobbied more with electronics..
look at my movi! from the electronic gearbox i made!
its in the other topic!
Tks
[Edited on 29/11/05 by tks]
tks - 30/11/05 at 12:03 AMCan you explain to me this?
Clear display and draw a line from 0,0 to 239,127
<DC1> len ESC D L ESC G D 0 0 239 127 bcc >
$11 $0A $1B $44 $4C $1B $47 $44 $00 $00 $EF $7F $DA
$DA = bcc = 218 how did he calculate this?
i know the key factor is MOD 256
its 38 difference... is this an error in the PDF? page 8.
bcc= 1 byte = sum of all bytes including <DC1> and len, modulo 256
sow in my example 12 mod 256? ==>$EB
==> 235!
i did this: 256/12 = 21,xx 256-21 = 235
Tks
Gav - 30/11/05 at 09:23 AMThe sum of the bytes is $2DA so the modulus division (remainder) of this will leave the $DA part.
$2DA / 256 = 2.852
so were interesed in the remainder part
presumable you can get the float part?
so
.852*256 = 218.11 so then just round this value to get the 218
tks - 30/11/05 at 11:17 PMHow the hell i'm gonna make this working?
pff the sum of the bytes can you clear that part for me?
i want to send ESC D L BOND
i think i need to invent the ASCII mode it should be allot easier isn't it?
Tks
Gav - 30/11/05 at 11:32 PMThe checksum is the sum(addition) of all the previous bytes ie
$11+$0A+$1B+$44+$4C+$1B+$47+$44+$00+$00 $EF+$7F = $2DA
so the checksum is $2DA mod 256 = $DA
from what i can gather ASCII mode still requires you to wrap your commands in the packet frame, which would include the checksum
tks - 30/11/05 at 11:59 PMbut if that would be the case then the ASCII mode has no sense right?
because to calculate the bcc you will need to convert it to DEC values any way..
and if it would need HEX then it would only be an small step.....
tks - 1/12/05 at 12:14 AMi think the best thing i can do is make an module wichwill translate it
i want to send 1S to the module and he needs to make up the right $ order incl checksum!
one becomes crazy man with this stuff!
Tks
Gav - 1/12/05 at 09:20 AMHow would i do it?
i would use the binary mode as its not hard and has more relevance to my experience.
If i have understood the macro stuff correctly i would create a macro for each screen then just update the values, ie speed, oil pressure etc by drawing in the places where i want them to go
For the comms I would create a function that passed a block of bytes would generate the checksum. This function would then be used by other functions to create specific outputs ie writing the speed to X,Y pixels on the screen.
if its help you figure it out i could create a visual basic module with some functions.
only problem is i wont be able to test it myself with the emulator
[Edited on 1/12/05 by Gav]
Gav - 1/12/05 at 09:39 AMI've actually been looking into leaning how to use PICs and electronics and i found this: http://www.picant.com/p2c/p.html
So i can still use pascal
tks - 1/12/05 at 07:59 PMLook at the photo's and tell me your thoughts..
Rescued attachment SoonMore.JPG
tks - 2/12/05 at 08:39 PMThe display is working!
The module board is off:
It has:
- Start you engine with an press button(like mercedes)/ renault laguna
- Onboard Temp sensor
- Onboard Eeprom for memory (256 Bytes-512bytes max.-)
- An Touch screen LCD for display and for setting things up....
What i now need is some math people from here....
I need to make the virtual temp curve!
How many readings do we need to log to make an good approx of the real engine temp?
Tks
Gav - 2/12/05 at 08:50 PMas in how many times you want to sample the temperature a second?
tks - 2/12/05 at 09:01 PMonce in an fiver?
the pic is really doing nothing sow an bit of work..
Its more that i want to build an open system.
Sow i will need to make something like this:
ADCVAL @ 20Degrees
ADCVAL @ 40 Degrees
ADCVAL @ 70 DEG
ADCVAL @ 90 DEG
ADCVAL @ 110 DEG
TEMPTYPE: NTC/PTC
Then with that.. in mind the pic will calculate an bit and interpolate...
and send the value to the display...
Will explain the working.
If you put the temp sensor in series to ground with another variable resistor.
Then between the 2 will vary the voltage because of the changing temp.
an ADC (ANALOG to DIGITAL converter) measures the voltage and compares it with the 5volts input voltage.
if it measures 5volts and its an 10Bit ADC it gives you 1024 as value.
sow if it measures 0volts it gives 0 as val.
sow we can measure up every 5/1024=0.005volts... enough i will say
how do i make the scale up?
The formula?
i can program for every zone his own formula no problemo..
Tks
[Edited on 2/12/05 by tks]
Gav - 2/12/05 at 09:48 PMSo how are you going to deal with all the inputs(revs/fuel/temp/oil pressure)? some sort of multiplexor?
tks - 2/12/05 at 09:57 PMI can make the measurement as fast as i want because the cpu hasn't nothing to do really!
we talk about 20Mhz!5Mhz eff.
that's bloody fast..!!
Speed: 2Hz
Revs:8Hz
Fuel :0.2Hz
Temp:0.2Hz
Oilpress: 2Hz (i need an oil pressure sensor any one has one spare??)
Who wants to see this value as an daily driver? think in race mode i swap it for the fuel monitor!
Tks
Gav - 2/12/05 at 10:36 PMyes i understand that, however its the how do you get the signal into the PIC i dont.
ok lets say have 5 different data values you wish to read, how do you go about feeding that into the PIC?
tks - 2/12/05 at 10:59 PM
tks - 3/12/05 at 07:25 PMok the signals aren't there!
you have to generate them!
the only thing an sensor does is giveing an pulse on an mcu pin.. we then know what that pulse means...
Example: Rpm.
We know that there are 2 rpm for every spark fired. (on an one coil per cilinder setup). Sow if we count the times
our MCU pin is pulled (low to ground)
like the coil and multiplicate this by 2 we have our Rpm!
Offcourse we do this by making an kind of Do Loop where in we check out RPM pin on its state if its low we inc the rpm
but we need to measure high before incing again the pic would easyly count one spark 5 times!
Basicly its all Digital communication
Counting Duration between to pulses
Speed:
Our prop have lets say 2 magnets.
We hook the sensor up that when the magnet comes near the sensor the sensor gives an voltage higher then 0,6..
ok, with that voltage we activate our Transistor wich activates our MCU pin.
He pulls it to ground...
Ok, we now can measure the time the prop takes between 2 highs!
lets say its half an second.
We then know that the prop turns once an second..
(60rpm/min)
We know the travel of the rearwheel when the prop turns once.
if whe multiplicate our propturns per hour
with the distance of the wheel per turn in mm we will get an km/h after dividing / 1000 000
its all an question of maths
Electronic components wich makes the signals beatiful for our pic..
(an pic doesn't work with Sinus crap!)
We only need adc (voltage to digital number) for position information.....
everything clear??
The TEMP on our display how much after the comma??
25.5deg
25.05deg?
25deg?
Regards,
Walter
MikeRJ - 4/12/05 at 03:19 PMYou only need to display to the nearest 0.5 degrees C, any more and the display will be constantly changing.
Making a digital dashboard update frequently enough, but not too often as to become distracting is a crucial part of the design. You WILL need to implement digital filtering on the analog values, even if it's only a simple averaging filiter, otherwise any noise on the inpts will cause the displayed reading to vary. A traditional analog gauge moves very slowly so ignores electrical noise. If you want a simple low pass filter algorithm I can help you with that.
As you are using a PIC, you may want to look at using the CPP module in capture mode for speed and RPM measurement. This makes the pulse measurements very simple with very low CPU overhead (it means you can carry on updating other stuff while a speed measurement is being taken).
tks - 4/12/05 at 04:02 PMI think i will measure temp readings and fuel etc..
On an bigger interval...
Then i will use avarage readings...
and any value with an big difference to the earlier one will be dropped!
In that way i'm sure i can create some usefull reading...
Tks
MikeRJ - 5/12/05 at 11:38 PMquote:
Originally posted by tks
I think i will measure temp readings and fuel etc..
On an bigger interval...
Then i will use avarage readings...
and any value with an big difference to the earlier one will be dropped!
In that way i'm sure i can create some usefull reading...
Tks
You probably want a "median" filter then. Each time you take a sample you add it to a circular buffer. Then you choose the median value in the buffer (one way is to perform a sort and simply choose the middle reading)
e.g. if buffer holds 34,12,23,56,45
sort it: 12,23,34,45,56
Choose middle value, i.e. 34.
This algorithm gives very good rejection of impulse noise, which is frequently found in car electrics.
tks - 6/12/05 at 01:29 PMi'm gonna make it very very complex...
Will program the chips to measure and drop every result wich will result in an Miles per galon wich cant be true!
Have to go for now later on i will go on with the design
Tks
[Edited on 6/12/05 by tks]
tks - 23/1/06 at 07:44 PMHere whe are again on my own...??
Well basicly i'm still with the pic part,
i have upgraded the display part. (you can set MPH/KMh..
for now on y only display temp,Fuel,Water Temp.
Speed, Rpm bar need to be added later.
I'm now concentrating on the pic side because its bloudy difficult/time consumeing.
Tks
tks - 31/3/06 at 09:38 PMPic part is done,
Now i need someone who has really some great ideas to make the cheap dash working! and some nice stylye..
Will post what i have got...
Rescued attachment Dash.JPG
tks - 1/4/06 at 10:08 AMOk,
i will post the source code of the display, you can see i already builed in the Km/h mp/h setting for you guys!
Give me some help and i will make the complete the project and publish it.
Complete with lights and overlay etc.
Download the source code from attached:
Download the datasheet (EN) from here:
Click! datasheet EN
Download the simulator from here:
Click! For simulator
[Edited on 1/4/06 by tks]
tks - 1/4/06 at 10:21 AMWhat do we think of this one?
Rescued attachment Teller example.JPG
chockymonster - 1/4/06 at 10:25 AMOn the last one the RPM bar needs to be bigger. It looks all scrunched up
tks - 1/4/06 at 10:46 AMWhat about this?
skint scotsman - 1/4/06 at 03:23 PMdont know how to programe but i can use photoshop so heres my 'artists' impresion of how it could look
tks - 1/4/06 at 06:46 PMmaybe its a bit to bulky right?
also we need some reserved space for the oil pressure and temp.
the rev counter would be better with some angle in it..
also i would like to see the speed centered.
Anyway thanxs for your suggestion it will help allot...
Tks
tks - 3/4/06 at 07:29 PMThis is how it will be...
The Rectangualrs will be filled to scale.
and the value will be in it (inverted sow you can read it)..
Who wants one?
Tks
chockymonster - 3/4/06 at 07:33 PMHow daylight readable is the LCD going to be and what's it going to cost?
tks - 3/4/06 at 07:42 PMits sow Bright
that when i try to take a shot with my camera of it or webcam i cant take a picture.
only if i zoom in i can get one but then it looks like i'm filming in the dark!
Its very readable, its black and white
dunno the exact therms of it the datasheet is somewhere in the thread
if you cnat find just post.
The costs are allot less than the standard dashboards!
and most what i like of it its freedom of movement. Every one has his picture or message he would like to display,
with this system it is easy...
i think that 200pounds is easy target for the complete setup..
tks - 4/4/06 at 06:18 PMif needed,
the board can be equiped with a LDR, a light sensitive resistance..(50p)
We could then easyly add the function to put your lights on when you enter a tunnel or something.
Also with that as input sensor we could adjust the brightness of the LCD's background LED, also it can be a setting in the config menu.....
SOW everything is possible!!
Regards,
Tks
scudderfish - 13/4/06 at 10:55 AMIs the RPM gauge going to be scalable? My V8 would red line before the halfway mark in the screenshots.
tks - 13/4/06 at 06:50 PMWell in fact the scale is just a image,
Sow what the car engines should do is just edit the Bmp with windows, and tell the mcu what the new red line is.
The software is easy to manage
and the rpm scale filling is just line x1,y1,x2,y2
sow every one could edit easy ly the scale..
etc..
Tks