Last Online
Recent Posts
posted in General Discussion read more

I extracted the app to my Ubuntu laptop and went out to the car. The flashing portion didn't work (it'd download then hang on the flashing stage. I think it tried to flash, but it still said version 4.2 in the hardware section).

When I flashed to 4.4 via my PC the app worked well. I was able to see packets coming in, though I don't know if the filter worked, as I ticked one of the boxes on the left and had packets still flooding in. Auto baud rate worked, didn't get a chance to try BLE, but I will eventually, as I'm pretty certain I'll need to wire the CBT in to get to the other two CANs

Other than all that, the app looks really good, is easy to navigate and I'm intrigued by the plugins area on the left. Is there any documentation for writing plugins yet, or should I poke through the app source code?

Two feature requests I have, if possible:

  1. Be able to group similar packets (e.g. by ID) or group duplicate packets to make finding the packets we want, easier
  2. A "cheat code" style packet search. To clarify: Some video game console emulators let you search for cheats by comparing states. For example, to get unlimited lives, you open the cheat searcher to get into an initial state. Then you die once. Go back into the cheat searcher and look for a memory value that's decreased since last time you checked. You then play for a bit, die again, then search again for decreased values. Eventually you're left with a handful of memory addresses that you can "watch". When you find one that goes down when you die, that's your lives. You set it to FF and you've now got 255 lives. There are various search modes like "has / has NOT increased / decreased [by Y]" "is / is NOT equal to X" that let you hunt down information of interest.
posted in Howto read more

@henk_kuipers: My CBT was listed under /dev/ttyACM0 which is where all my serial devices seem to show up (Ninja Sphere, USB 56k modem etc.). I'm on Ubuntu 14.04 LTS with no other software (that I know of) connecting to the CBT

posted in General Discussion read more

Thanks @Derek, I got it running the other night. Very handy to know! I don't think the info I want (steering wheel controls) are on CAN 1, because my script doesn't show much when I sit there and press the controls, but I'm going to clean up my script and try again, possibly this weekend.

I also downloaded and compiled the phone app (using Phonegap, not Cordova). It doesn't do anything for me at all (just a broken looking layout) but it is alpha software, so I'll have a poke around the code and see what else is going on. Thanks for releasing everything as open source. Makes hacking so much easier, and fun.

posted in General Discussion read more

Thanks @Derek, indeed I did. What I'm now wondering is, is there any way to force the CBT to print to serial, whole lines only?

I'm writing a node.js app that connects via serial, starts logging, parses the data received and then lists the frame IDs by frequency, so I can visually see what packets relate to which button presses on my steering wheel. The problem is, when the data comes through, it's only part of the message, and the rest comes in the next round of data. For example, I've modified the CBT sketch so the JSON output is closer to CSV (for import into Google Sheets / Excel), so a typical packet would look like this:

<code>3, Bus 1, 3, 1F3, 1211206, 0, 0, 0, 0, 0, 0, 0, 0,</code>

But when I connect in via my app (and even in CoolTerm), my data could look like this. Each "Data returned" is when my node.js app receives data:

Data returned:

3, Bus 1, 7, 1C7, 1210981, 6, A0, 39, 60, 0, 0, 3F, 0;
3, Bus 1, 2, 185, 1210983, 0, 0, 0, 0, 0, 0, 0, 0;
3, Bus 1, 8, 191, 1210985, 6, 63, 6, 63, 6, 54, 0, 0;
3, Bus 1, 8, 1F5, 1210987, F, F, 0, 21, 0, 0, 3, 0;
3, Bus 1, 8, C5, 1

Data returned:

210989, 10, 0, 0, 0, 10, 0, 0, 0;
3, Bus 1, 8, 3E9, 1210992, 0, 0, 80, 0, 0, 0, 80, 0;
3, Bus 1, 7, 1E1, 1210994, 0, FF, 5, 0, 0, 0, 0, 0;
3, Bus 1, 3, 1F3, 1210996, 40, 40, 0, 0, 0, 0, 0, 0;
3, Bus 1, 8, 1ED, 1210998, 1, 90, 0, 0, 0, 0


And of course, same thing happens on CoolTerm, even with the unmodified sketch.

I'm not yet 100% au fait with Arduino, so my tinkering has been limited so far, but can this be done?

posted in General Discussion read more

<b>EDIT: I got it working. I called the auto-baud command again and now I've got a metric ton of data flowing through. I've captured a bunch and just need to sit down and paw through it all.</b>

I got my CBT in the mail yesterday, and have just had a chance to start tinkering tonight. I followed the instructions on the Getting Started page and hooked my CBT up to my car using the OBD-II connector. Power came on (without USB) and I plugged the CBT into my netbook and fired up CoolTerm. Probing the CBT for information worked, but probing CAN 1 for info netted me this error:

<code>{"e":"busdgb", "name":"Bus 1", "canctrl":"4", "status":"0", "error":"1011"
"Receive Error Warning - TEC or REC >= 96",
"Receive Error Warning - REC >= 96",
"Receive Error Warning - REC >= 128", "nextTxBuffer":"0"}</code>

Probing CAN 2 and 3 got no errors though:

<code>{"e":"busdgb", "name":"Bus 2", "canctrl":"7", "status":"0", "error":"0 - No Errors", "nextTxBuffer":"0"}
{"e":"busdgb", "name":"Bus 3", "canctrl":"7", "status":"0", "error":"0 - No Errors", "nextTxBuffer":"0"}</code>

I then fired up the car and tried to listen on all three busses. I got "ÿ" back, which in hex, is "FF 00", for all three.

Being a programmer, but barely knowing what a car even is, let alone how it operates, I'm stumped. In general, do all cars expose at least one CAN bus via OBD-II (i.e. should I see at least something without having to wire this thing into my car?)

For troubleshooting purposes, here's what I did:

  1. Download Arduino for Windows 8.1 (64 bit), Download CBT from GitHub and extracted the CBT zip into the hardware folder
  2. Opened Arduino, picked the CBT as the board, the COM port and verified / compiled the unmodified CanBusTriple sketch. No errors.
  3. Plug the CBT into the car / laptop and sent the HEX to auto-detect the baud rate. I don't remember the outcome, but it said it finished. I then rebooted the CBT by unplugging both sources of power and plugging it back in.
  4. Ran the commands to probe / start logging and got the commands above.

Any clues?

Looks like your connection to CANBus Triple was lost, please wait while we try to reconnect.