About

This is just my blog that is intended to try and document a lot of the projects I’ve created on my own time.  Some of the projects are entirely my own idea, but most of them are spin-offs of someone else’s work and I’ve improved upon it/modified it in such a way that I don’t think anyone else has done before.  However, with most of these projects, things have been modified significantly enough that I can probably call most of it my own.  If you have a problem with that, well, tough nuggies.

19 Responses to About

  1. John W says:

    Hi Andy,

    Say I want to setup my lawnmower withsensors and a control computer to serve OBD2 connections from Torque via ELM327, STN11XX interface. What sort of device would I have on the engine side to monitor the engine? Would a junkyard EECIV provide this ?

    Thanks John W.

    • Andy says:

      John,

      The amount of extra stuff you’d have to grab besides the ECU I’m sure is extremely make, model, and year dependent. Even then, I don’t know if the ECU is going to provide anything usable out of it w/o tricking it to think it’s installed in the correct vehicle (again this likely varies widely). You’d have all sorts of sensor problems that you’d have to overcome when attaching to an air cooled single cylinder engine not under ECU control for ignition and fuel mixture. To me it seems like if you really wanted OBDII on your lawnmower, it’d be easier to use some popular hobbyist boards like raspberry pi, arduino…etc to sample sensors you pick for your application and mimic some preexisting OBDII protocol (CAN might be best as it’s easiest of all of them to implement electrically). You could then send that out via Bluetooth. In other words, you’d be making your own ECU based on information and sensors you already know (or have information on) vs. reverse engineering pretty much every step of the way to hack in someone elses ECU.

      – Andy

  2. Andy, I’m interested in engaging with you on a custom design of a STN1170 adapter – maybe we can use one of your existing designs to accomish what we have in mind. Appreciate if you can get in touch over email. Thanks.

  3. Miki Shapiro says:

    Andy, do you have any leftover functional STN1170 units you’re willing to part with?

    I’m really keen to get one for my iMiev 🙂

    Miki

  4. Samuel says:

    Hi Andy, I was wondering if you do any freelance consulting? We are building an OBDII app and could use an expert like yourself for a couple different aspects. We have a couple hardware questions we are currently researching, and in addition it seems like you may have quite a bit of knowledge regarding vehicle communication/specialized PIDS.

    Thanks, and just wanted to say I enjoy the thorough information you post on your blog.

  5. Jesse says:

    What are the possibilities of building an OBD2 dongle which uses a BLE chip? Wouldn’t this allow us to make iOS apps? I am a mobile app developer and would love to see an OBD2 device which uses a Bluetooth Low Energy chip so we can develop against it. I believe it would also be a HUGE seller, since this is such a lacking area…no one makes it, that I can tell…

    • Andy says:

      Jesse,

      Yes, it probably would be a good seller if the price was right. From what I’ve seen on ebay, the bluetooth adapters that come from china for under $50 each sell like hotcakes, and those only work on non-apple devices, like my adapter. However, designing w/ genuine modules that have real wireless certifications and all that really drive the cost per unit up, unless you don’t want to make any money on units =).

      Automatic makes a unit for iOS/Android and I’ve stumbled across a few others as well. The Truvolo Drive is also slated to appear soon as well.

      The only real gotcha I see w/ BTLE is that there doesn’t seem to be some standard “transport” for getting data to/from the OBDII reader and the controlling device like there is with the higher-power Bluetooth options that Apple does want to control. So you could have the best hardware in the world, but if you software really sucks, no one’s going to want your software/hardware combo, whereas w/ the Bluetooth 2 readers, they all use the same “transport” so you can pick which hardware you like best and which software you like best and have a nice setup.

      Making hardware for BTLE isn’t terribly hard, but the software on both the Bluetooth module and the app is a completely different story.

      – Andy

      • Jesse says:

        Good info, thanks. I just learned also that the amount of data you can transfer over BTLE is super minimal and may not be sufficient for use in this scenario. For example, it may only respond with 1 pid per second, or something horrible like that. That may be the main reason that no one has created the devices.

        • Andy says:

          Yup, could be. At least on the automatic reader, it looks to have a pretty good amount of CPU power onboard, so it likely doesn’t need to transfer much data to/from the host to get acceptable performance.

          -Andy

      • Nish says:

        Andy,

        If the software were taken care of, how hard would it be to design some BTLE hardware for this? Could I contact you about a project around that? I’ve been looking at using the CC2450 or similar for a BTLE OBD2 project.

        Thanks,
        Nish

        • Andy says:

          Hi,

          The hardware wouldn’t be too bad, but if you’re looking to plop down a TI CC25xx chip onto the board and do your own RF layout, that’s trickier. And then if you intend to get the design FCC certified, that’s even more of an issue =). For Bluetooth, I recommend using off the shelf modules from bluegiga, murata, Panasonic…etc as they have FCC certifications and already went through all the RF layout pain and whatnot. You can then choose to do your processing and custom handling of data within the CC2540’s microcontroller (8051 based if I remember right) or you’d need an additional microcontroller onboard to get data from the STN11xx and shove that on to the Bluetooth module.

          – Andy

          Thanks,
          Andy

  6. Vance says:

    Hello!

    I am much like you in that I would just make my own digital thermostat, because I can. I wanted to email you about a project I’m very slowly working on. Basically its very simple: Why not have everything in your house/car/office that already has some kind of technology behind it be able to interface and send events back to a computer/server. Once the event happens, this could trigger any other action/event to be fired. An example would be opening your front door, when its night out (light sensor, or time based logic) the lights automatically come on. Now what if you wanted them to come on, or kick up the heat when you were say within 10 miles of the house (phone gps location events) – if you had to travel a distance each day. There are obviously endless possibilities, but my point is this. None of the things I’m trying to do are new. None of this is truly original, none of this can’t be done with other solutions… ahem android apps. I just want to be able to have EVERYTHING that I can imagine be possibly controlled (within reason) by any other action/event that can happen – with security baked in (limit certain classes of devices from opening your front door). I’ve looked into X11 home automation, etc and its all very expensive. That was another goal of mine, to make it easily networked and as cheap as possible while being open source so anyone can develop any new feature for it.

    Feel free to email me if you would like, I’ll be at this for years. If anything, I want you to take away my gratitude for showing the world how to do some awesome coding/hacks.

    • Andy says:

      Vance,

      This is an interesting idea to say the least. You’re right in that you can do everything you’re suggesting, but only with a bunch of different interfaces and a bunch of different devices all kinda forced into working with each other. And like you’ve said, it’s all rather expensive. Are you looking at making your own hardware design or “simply” making a suite of software that can use a variety of different, off the shelf devices? Either way, this sounds like a pretty large software undertaking to me, but it sounds like you’ve got a practical timeframe in mind.

      There’s a piece of software out there called Total Connect from Honeywell that might be capable of doing what you’re suggesting, but I don’t know if you’re required to use certain interfaces/hardware with it to actually get it to work. It’d certainly be neat if you could take the “Windows” approach vs. the “Apple” approach in hardware support where you make an effort to support pretty much any hardware device out there to work with your system. That would enable pretty crazy flexibility along with the benefits of low cost (old devices, devices that don’t do everything under the sun if you don’t want them to…etc)

      I’d say it’s a pretty good idea I think. If you ever need any hardware design done or could use some help, let me know!

      – Andy

      • Vance says:

        Thanks for the reply!

        As to the approach, definitely the Google/Windows – any hardware you can muster up approach. Basically there will be multiple levels or classes of devices – similar to android. Any device would need to have at least network connectivity or command line interface. There would obviously be standards to the way each type of communication works, but once a device met the level it needed it would be able to plug and play. I want to be able to use devices ranging from Arduino’s (for sensors), smartphones and obviously laptops/desktops/pc/mac/linux.

        I wanted to release it open source, however since security is such an issue with such a widespread system (just think of the network authorization nightmares here across the multiple input layers…) that I would probably end up keeping the core of the system closed, with a very nice api setup for any developer to add any kind of device/functionality that is possible with a computer. This idea also supports room for default systems of data storage among other default/preset abilities such as voice recognition, face detection, etc. Which finally opens the door (no pun intended) for a website or other interface to allow programming – even without any programming experience. Almost any user could use a fairly simple interface to start attaching events/actions together. Ie. if the door opens, turn the lights on, email a picture from a webcam of their face, etc.

        Also on the point of hardware/software. With an api I was hoping to give anyone the ability to write a ‘driver’ or ‘bridge’ software to allow the use of most pre-existing systems/devices. Most used devices have some sort of network interface and most software has either a network or command line interface so why not allow this. One other very common interface is bluetooth and also infared (remotes, etc). These could be somewhat easy to add once a system is in place and obviously allow a user a very nice interface device.

        For performance obviously the more servers running the software the better. Distributed computing is always nice, however usually difficult to implement depending on the calculations at hand. Obviously we are looking at a lot of devices needing to communicate, possibly over a great geographical distance. Thus network speeds might be dismal at times, not allowing a very nice distributed environment. Such limitations are being considered and also, I want it to be somewhat simple to setup/install. Most people can find someone to install an operating system or program if they are computer illiterate. I don’t want to force people to have to install a beowulf cluster, configure it on their own, hope it works and then get to using my software. I doubt it will ever be used.. ha. I am developing more of a client app, mobile app and then a customized linux distro that has all the basic functionality needed to get started. Obviously software updates are another pain in the butt because of all the different pieces used in the core of it, not to mention each every other connected device.

        The possibilities are endless obviously and I do not ever want to make it closed off or impossible to expand. Otherwise I’m just building another commercial appliance that does ONLY the job it was intended, without room for expansion or optimization. I was also hoping to not have to sell it, we’ll see how much further my costs get. I’ve been ‘working’ on this for over a year or so, but obviously a lot of that is coming up with ideas about standards and the overview of how it works.

        Total connect looks like it can handle a bunch of what I’m thinking. I wonder if they have an api… I doubt it.

        Thanks,
        Vance

  7. Shawn Fournier says:

    Will the STN1110 OBDII Bluetooth “tool” communicate with a Seeed SLD63030P Bluetooth receiver? (Radio Shack) I’m trying to build a crude code reader using an Ultimate Controller Pack (Maker Shed) with an LCD and the aformentioned Seeed Bluetooth transmitter to communicate with the LCD. These use the Arduino software. I’m new to this but am interested in building this tool to challenge myself.

    • Andy says:

      Shawn,

      After looking into the Seeed BT shield some more, it looks like it supports being a master, which is what is required to pair and communicate w/ my Bluetooth adapter, or most any other Bluetooth device. It sounds like what you intend to do should work well. Good luck w/ the project!

      -Andy

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload the CAPTCHA.