Why can't I use my laptop to do this?
#1
Why can't I use my laptop to do this?
Why hasn't someone developed software to control an engine using a laptop? I've got $3000 of computer hardware, and it can't do something as simple as fire a spark plug? WTF! Has anyone done this, and if not, WHY! Am I just crazy, or can it be done?
#7
Full Member
Join Date: May 2001
Location: Kutztown, PA
Posts: 83
Likes: 0
Received 0 Likes
on
0 Posts
Who says you can't? All you have to do is manage all the inputs and outputs required to control the engine. Should be able to whip something up in a few hours . Seriously, your laptop has more than enough processing power to do the job, but dealing with the I/O issues would not be trivial. And then you just have to write the software to deal with the I/O.
I expect that the software is typically distributed as firmware because of the potential ramifications of have the software crash due to an unknown operating environment. CompuBob is right.
I expect that the software is typically distributed as firmware because of the potential ramifications of have the software crash due to an unknown operating environment. CompuBob is right.
Trending Topics
#9
hmm, I should scout sourceforge, there must be something
I think buying a standalone EMS is stupid when they'res plenty of used computer hardware that could do it SIMPLY and CHEAPLY. Anyone know where I could do some research on this? Maybe I'll take it up as a project
I think buying a standalone EMS is stupid when they'res plenty of used computer hardware that could do it SIMPLY and CHEAPLY. Anyone know where I could do some research on this? Maybe I'll take it up as a project
#10
Sure, there's plenty of HARDWARE that could do it. It's the software that will be problematic. And I'm talking about the OS, not just your app (but your app will need to be realtime-aware, also). There are realtime OS solutions out there (like RT-Linux, at the low end, up to QNX and PSOS at the high end), but there is a real learning curve when writing applications to run in these environments. Sure, it could be done, but not necessarily cheaply. If Linus Torvalds wrote all of Linux in his spare time, though, why couldn't you write a measly engine controller in yours?
#11
Got Boost?
Ok...... why would you want to actually run your car with a laptop.
Its not a question of is it possible - anything's possible with enough time and money - if fact you can pick up a DIY engine management system like megasquirt for a few hundred bucks - its a question of purpose. Honestly you are underestimating the complexity of EMS. There is no off-the-self-OS made that can reliably reproduce the acuracy needed to correctly run the spark due to the relatively random way in which OS's service hardware interrupts - your laptop/OS wasn't built to be a highly time system that absolutely has to perform on time - so spark can be off as much as 10ms( thats an entire cycle at 6000 rpm). So OK you write your own kernel that gives uninterupted control to the one process that keeps the car running, works out all the schedualing/timing issues, and what do you get...... an EMS.....no longer a user servicing laptop running windows.... in addition to the fact that you now have to have your laptop in the car for it to run....
And thats not even talking about the actual hardware interface that has the omph to drive your coils/ignitors, or the ability to drive an injector, fan, solonoids, etc. All these things take time and money to make into a reliable system. Then consider software......
So sure, your laptop has the computational power to run your car, but it doesn't have the brains, coordination, or the muscle to do so.
There is alot to be said about dedicated EMS hardware: reliable, very fast, and perfectly capable. If you really want to write your own EMS look into megasquirt or the like, you'll be happier with a dedicated EMS anyway.
Its not a question of is it possible - anything's possible with enough time and money - if fact you can pick up a DIY engine management system like megasquirt for a few hundred bucks - its a question of purpose. Honestly you are underestimating the complexity of EMS. There is no off-the-self-OS made that can reliably reproduce the acuracy needed to correctly run the spark due to the relatively random way in which OS's service hardware interrupts - your laptop/OS wasn't built to be a highly time system that absolutely has to perform on time - so spark can be off as much as 10ms( thats an entire cycle at 6000 rpm). So OK you write your own kernel that gives uninterupted control to the one process that keeps the car running, works out all the schedualing/timing issues, and what do you get...... an EMS.....no longer a user servicing laptop running windows.... in addition to the fact that you now have to have your laptop in the car for it to run....
And thats not even talking about the actual hardware interface that has the omph to drive your coils/ignitors, or the ability to drive an injector, fan, solonoids, etc. All these things take time and money to make into a reliable system. Then consider software......
So sure, your laptop has the computational power to run your car, but it doesn't have the brains, coordination, or the muscle to do so.
There is alot to be said about dedicated EMS hardware: reliable, very fast, and perfectly capable. If you really want to write your own EMS look into megasquirt or the like, you'll be happier with a dedicated EMS anyway.
#12
Got Boost?
Ok...... why would you want to actually run your car with a laptop.
Its not a question of is it possible - anything's possible with enough time and money, its a question of purpose. Honestly you are underestimating the complexity of EMS. There is no off-the-self-OS made that can reliably reproduce the acuracy needed to correctly run the spark due to the relatively random way in which OS's service hardware interrupts - your laptop/OS wasn't built to be a highly time system that absolutely has to perform on time - so spark can be off as much as 10ms( thats an entire cycle at 6000 rpm). So OK you write your own kernel that gives uninterupted control to the one process that keeps the car running, works out all the schedualing/timing issues, and what do you get...... an EMS.....no longer a user servicing laptop running windows.... in addition to the fact that you now have to have your laptop in the car for it to run....
And thats not even talking about the actual hardware interface that has the omph to drive your coils/ignitors, or the ability to drive an injector, fan, solonoids, etc. All these things take time and money to make into a reliable system. Then consider software......
So sure, your laptop has the computational power to run your car, but it doesn't have the brains, coordination, or the muscle to do so.
There is alot to be said about dedicated EMS hardware: reliable, very fast, and perfectly capable. If you really want to write your own EMS look you can pick up a DIY engine management system like megasquirt and piece it togetherfor a few hundred. You'll be happier with a dedicated EMS anyway.
Its not a question of is it possible - anything's possible with enough time and money, its a question of purpose. Honestly you are underestimating the complexity of EMS. There is no off-the-self-OS made that can reliably reproduce the acuracy needed to correctly run the spark due to the relatively random way in which OS's service hardware interrupts - your laptop/OS wasn't built to be a highly time system that absolutely has to perform on time - so spark can be off as much as 10ms( thats an entire cycle at 6000 rpm). So OK you write your own kernel that gives uninterupted control to the one process that keeps the car running, works out all the schedualing/timing issues, and what do you get...... an EMS.....no longer a user servicing laptop running windows.... in addition to the fact that you now have to have your laptop in the car for it to run....
And thats not even talking about the actual hardware interface that has the omph to drive your coils/ignitors, or the ability to drive an injector, fan, solonoids, etc. All these things take time and money to make into a reliable system. Then consider software......
So sure, your laptop has the computational power to run your car, but it doesn't have the brains, coordination, or the muscle to do so.
There is alot to be said about dedicated EMS hardware: reliable, very fast, and perfectly capable. If you really want to write your own EMS look you can pick up a DIY engine management system like megasquirt and piece it togetherfor a few hundred. You'll be happier with a dedicated EMS anyway.
#13
QNX is cool.
I've never heard of megasquirt before right now, I just went to their website, COOL! But, like the website says, it's not really an EMS, it just controls fuel. I'd either need a distributor or keep the stock ECU to control spark, run the fans/everything else, etc, etc, etc. Not exactly what I'm trying to do A megasquirt just isn't capable of running a turbo rotary, with all the accessories (a/c, ps, etc) It might however be an interesting project on my FB.
I don't think the realtime side of things would be a problem, if you were using the computer soley for running the ems, and not for other things too, like an mp3 player or for dvds or something. I wouldn't mind building a cheap 500mhz computer /buying a cheap laptop to do this. I've done alot more research in the last 2 days, and decided that it should be done, but I don't think I'll be the one to do the project.
Thanks for all your input!
I've never heard of megasquirt before right now, I just went to their website, COOL! But, like the website says, it's not really an EMS, it just controls fuel. I'd either need a distributor or keep the stock ECU to control spark, run the fans/everything else, etc, etc, etc. Not exactly what I'm trying to do A megasquirt just isn't capable of running a turbo rotary, with all the accessories (a/c, ps, etc) It might however be an interesting project on my FB.
I don't think the realtime side of things would be a problem, if you were using the computer soley for running the ems, and not for other things too, like an mp3 player or for dvds or something. I wouldn't mind building a cheap 500mhz computer /buying a cheap laptop to do this. I've done alot more research in the last 2 days, and decided that it should be done, but I don't think I'll be the one to do the project.
Thanks for all your input!
#14
I think the realtime side of things *is* going to be a problem for any computer running Windows or Linux. The problem isn't getting things done quickly, it's making sure they're done at the right time, which is really something entirely different. This is called the "hard realtime" requirement; it's exactly what QNX and pSOS and OS-9 are there for. I don't know whether any of the existing standalone EMSs use a commercial kernel; obviously these kernels aren't available for every processor out there.
Originally posted by Terrh
I don't think the realtime side of things would be a problem, if you were using the computer soley for running the ems, and not for other things too, like an mp3 player or for dvds or something. I wouldn't mind building a cheap 500mhz computer /buying a cheap laptop to do this. I've done alot more research in the last 2 days, and decided that it should be done, but I don't think I'll be the one to do the project.
I don't think the realtime side of things would be a problem, if you were using the computer soley for running the ems, and not for other things too, like an mp3 player or for dvds or something. I wouldn't mind building a cheap 500mhz computer /buying a cheap laptop to do this. I've done alot more research in the last 2 days, and decided that it should be done, but I don't think I'll be the one to do the project.
#16
Hmm..
orangeFD and fatboy7, you've restored my faith in intelligence here at the forum. The problem with QNX, pSOS, and other "small" operating systems is lack of software. Allthough, in this case, it's really OS indepencant. There's no software for what I want to do allready written for ANY os, and QNX, etc are just the only viable platforms. My idea was to find someone else who had allready done the hard work, and just do the work needed to make it work with the '86-88 turboII chassis. Not actually write one from scratch. I don't know nearly enough about how EMS's work, how they control things, what they do if they encounter an error, etc, etc, etc. Maybe I'll get the urge to learn one day, but in the meantime, I think this project is not for me. I've got too much on my plate at the moment to even consider this as a serious project. It's too bad that nobody has done this, as I have a perfect ECU with QNX allready installed (netpliance iopener) and it would even perhaps be controllable on the fly, since it has a nice big color LCD screen... or used for gauges, or something... oh well
Thanks again!
orangeFD and fatboy7, you've restored my faith in intelligence here at the forum. The problem with QNX, pSOS, and other "small" operating systems is lack of software. Allthough, in this case, it's really OS indepencant. There's no software for what I want to do allready written for ANY os, and QNX, etc are just the only viable platforms. My idea was to find someone else who had allready done the hard work, and just do the work needed to make it work with the '86-88 turboII chassis. Not actually write one from scratch. I don't know nearly enough about how EMS's work, how they control things, what they do if they encounter an error, etc, etc, etc. Maybe I'll get the urge to learn one day, but in the meantime, I think this project is not for me. I've got too much on my plate at the moment to even consider this as a serious project. It's too bad that nobody has done this, as I have a perfect ECU with QNX allready installed (netpliance iopener) and it would even perhaps be controllable on the fly, since it has a nice big color LCD screen... or used for gauges, or something... oh well
Thanks again!
Thread
Thread Starter
Forum
Replies
Last Post
82streetracer
Haltech Forum
11
03-11-19 05:34 PM