Using clone ELM327 Bluetooth OBDII adapter with Leaf

My Nissan Leaf Forum

Help Support My Nissan Leaf Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
One other possible cosmetic bug:

On my screen it looks like it says "Fall Pause" rather than "Fail Pause" when you stop the app from trying to connect.
 
Turbo3 said:
Put up version 0.24e-FS so I can keep track if this fixes the connection problems. It should be the same as 0.24 base with regards to the connection commands.
The revised 0.24d-FS was fine for me, but I will have a go at this one too.
 
Stoaty said:
Turbo3 said:
Put up version 0.24e-FS so I can keep track if this fixes the connection problems. It should be the same as 0.24 base with regards to the connection commands.
The revised 0.24d-FS was fine for me, but I will have a go at this one too.
0.24e-FS is a step back--won't connect (but says it isn't connected, which is correct). 0.24d-FS (revised) worked just fine.
 
Turbo3 said:
That is very strange since the only difference between 0.024d revised and 0.24e are two spelling changes (corrected spelling of default and changed Fail to FAIL). Nothing else changed.
Hmm... perhaps I have an intermittent problem. Will try 0.24e again.
 
OK, 0.24e is fine. However, I have had something strange happen a couple of times (with both versions). I discovered that somehow the app got into a state where it said "connected" and wasn't or "Not Connected" when a connection was available and that apparently it was actually paused... because when I tapped the pad in lower right corner twice to toggle it on and off the connection was established and everything worked normally. I am not sure exactly how to get it into this state--will have to experiment a bit more.
 
Stoaty said:
OK, 0.24e is fine. However, I have had something strange happen a couple of times (with both versions). I discovered that somehow the app got into a state where it said "connected" and wasn't or "Not Connected" when a connection was available and that apparently it was actually paused... because when I tapped the pad in lower right corner twice to toggle it on and off the connection was established and everything worked normally. I am not sure exactly how to get it into this state--will have to experiment a bit more.
You can not control the connection process. You need to just wait. Pressing the status area does not pause the connection process. The funciton of pause is to stop the screen from being updated and disable the connection fail message from being displayed. It has nothing to do with connection or retry. That all happens automatically just give it time.
 
I tried to make a single version to switch full screen on and off which I can do. However the screens do not readjust to the new size so either data is pushed off the bottom when going from Full to Notification bar or when going from Notification bar to Full there will be unused space at the bottom. B4A does all the screen calculations when loading the app and does not recalculate them if it actually changes later on. There are ways around this but I would need to create all the screen dynamically within the program instead of using B4A designer feature. Perhaps in the distant future I will do this but I have too many other CAN features to put in. So pick whichever version you like but don't ask to be able to change it from within the app.
I suspect the "easy" solution is just define two screens for each one you have now,
one with full screen, and one with the system status bar.

Then you can lay them out any way you want, and switch between the
FS or Status Bar version at any time with no special re-calculation.

But, I am just guessing.
 
surfingslovak said:
John Harris from the Seattle Facebook group was able to run the app on Android emulator in Parallels Desktop on his Mac.

You missed my comment about that earlier, although I didn't include in the picture ;) He's what inspired me to get the same thing running on Windows.
 
(first, thanks for reading that short novel! :lol: )

I had a longer reply here, but I'm trying not to tl;dr again. Long road trip this weekend which means lots of time to charge - and lots of time for every little quirk of this car to grind my nerves raw. I swear, whenever I hear the car "beepbeepbeepbeep, beepbeepbeepbeep, beepbeepbeepbeep, beepbeepbeepbeep..." for various buggy reasons involving the driver door switch, I want to rip its damn beeper out. This car's behavior is really just starting to push me to wit's end lately now that other manufacturers are stepping up to the plate with full, modern EVs (not just "compliance cars") and making Leaf look like kid's junk. >.<

So long story short, Facebook just works for many of us (myself included). It's easier to track and follow, much less cluttered, and easier to maintain for admins. It's only ever proper, though, if the author creates the page themselves. If it happens, cool - if not, well... meh. Not my place to whine. :)

Bluetooth enable/disable: if it's off, ask if I want the app to turn it on. I don't see any rational reason for the app silently manipulating the device Bluetooth state. If it's off, it's because the user switched it off, and it's a good bet the user would like to be part of the decision-making process to turn it on and off. I just don't want that decision made for me just because I (perhaps accidentally) opened the app. It's just a can of worms due in large part to how painfully buggy some Bluetooth devices are.

Of course, take this all with a grain of salt. Bay Area streets and driving/drivers have got me SO FAR past wit's end today, screaming bloody murder in traffic today while trying to navigate around this absolutely unprecedented yarnball of convoluted twisty roads out here. Oof. You know what? I take Fresno's roads for granted because I've lived there my whole life. Everything compass-aligned to north/south, crossing with east/west streets all at 90-degree angles. A perfect grid. Traffic just flies there as a result. Here, though? Unplanned roads, lights without triggers/sensors, stop signs in middle of nowhere, 25mph speed limits on 5-lane roads... oh my GOD. I can't wait to get back to Fresno! :lol: :lol:
 
I love it that it turns on and off Bluetooth. Most people will probably spend a modest amount for a prepaid phone and dedicate it to this App.
 
So what you would like is control over whether the App uses Bluetooth. I could add one checkbox to the Systems menu for Auto Enable Bluetooth.

If Bluetooth is on before app starts then everything works automatically and the app uses Bluetooth since it was on. On exit Bluetooth is left on since it was on to start with.

If Bluetooth if off before app starts then app will check the Auto Enable Bluetooth state and if checked it will automatically turn on Bluetooth and on exit turn Bluetooth off. If the Auto Enable Bluetooth is not checked then a message box will ask if the user wants to have Bluetooth enabled. If enabled it will be disabled on exit. If the user does not want Bluetooth enable then the app just stays in the Not Connected state and the user can only look at the previously saved data.
 
Oh, and as for the driving screen, I've got a few ideas in mind. Some graphical representations of those figures are in dire need. ;)

Right now, we've got:
- SOC (%)
- Remaining capacity (kWh)
- Power counter (calculated Wh)
- Average battery temp
- Remaining miles
- Approximate Gids

Let's take this data out of a "[variable]: [value]" format. Throw some graphic design its way!

For your enjoyment, here's a concept image I shooped up while bored at In-N-Out in Gilroy waiting on a charge... I am so envying Tesla right now, sitting right next to the Superchargers at a L2 SemaCharge station... d'oh.

Battery graphic: at-a-glance relationship to SOC %. As many increments of charge state as there are pixels on the screen - there are 1,000 points of resolution between 0.0% and 100.0%, and the car's computer relays each point of resolution to the app already. It'd be cool to have a very accurate graphic that matches the accurate SOC meter. I don't have separate PNGs for this, but if Apple doesn't mind jacking their graphics... :lol: This is just a concept though, after all.

kWh remain / Wh counter: These relate almost identically to the SOC percentage - and the Wh counter is, heck, converted from the SOC itself. These are kind of "accessory" pieces of information next to the SOC and graphical representation. So they get put on either end - "remaining" is related to the filled part of the battery graphic, and "count" related to the used portion.

Temperature: Integrate average/max/min right into the same gauge. The graphic would be filled with 0F as the low point and 140 as the high point - per the Wiki, this lines up with the dash indicators. The graphic fills up to the "min", then extends to the "max" in a different color - the average is, visually, obviously between the two. The actual average is in a big number next to it.

Miles remaining: As it is now, the interface to change the Miles/kWh rating is... hacky at best. ;) I'd never guess that tapping "miles" or "(3.6)" would increase/decrease it, and I always end up going the wrong way when I first tap one to adjust it. So I added simple "+/-" buttons and related the key information on the screen. This is probably one of the easier ones to implement.

Thoughts? Just a mock-up. If anything of this ends up in the actual program, that'd be cool, but I'm not expecting a whole re-design here to match it. Just wanna see if we can help improve it using some of these ideas :)

Oh, and as for the Bluetooth handling, that's a great way to make everyone happy :mrgreen: Just an option in Settings. I'd turn it off on mine - I always want it to ask (as I almost never have BT disabled - but if I do, there's a reason). That sounds like a good solution!
 

Attachments

  • 2013-05-19-22.33.png
    2013-05-19-22.33.png
    154.9 KB · Views: 40
QueenBee said:
surfingslovak said:
John Harris from the Seattle Facebook group was able to run the app on Android emulator in Parallels Desktop on his Mac.

You missed my comment about that earlier, although I didn't include in the picture ;) He's what inspired me to get the same thing running on Windows.
Sorry about that! I think I vaguely remember you mentioning it :) And before anyone asks, the reason why this is relevant is simple: some owners might not have an iOS or Android phone, and running an emulator could be a good substitute. Thanks again for mentioning it. Would this be worth documenting?
 
I'm just curious if it would be possible to have you modify this to work with the Kiwi WiFi Canbus transmitter.
It incorporates an elm327 compatible interface and it works with ISO9141, VPW, PWM, and CAN protocols.
Configuration: The Wifi is setup on 192.168.0.10. Set the android tablet to 192.168.0.11 with 255.255.255.0 mask and port 35000. I tried to run the app just to see what happens. I have an android tablet that does not have bluetooth, but does have wifi, and I also had this Kiwi device, so I thought I try and see what happens.

I get an error upon starting the app.
an error has occurred in the sub"main_activity_resume(java line:500) java.lang.NullPointerException Continue?
I assume this error is because the app is looking for the bluetooth connection. What if it looked to see if the Kiwi was there as an option?

I don't expect you'll want to do this change, but thought I'd ask anyway in case it was an easy change and something that caught your interest. Great work on the app, and I look forward to seeing it in action if I ever get a bluetooth enabled android device.
 
Great effort on this. I'd really like the code added that "true" Gids can be displayed when the (modified) ELM327 is connected to the EV-CAN.

Cheers
 
LEAFfan said:
I love it that it turns on and off Bluetooth. Most people will probably spend a modest amount for a prepaid phone and dedicate it to this App.

I agree, let the app control BTooth. I re-purposed a retired Android phone. This is the only app installed other than the stock ones and sits in the cup holder area permanently now. If we need to activate BTooth manually then we will tend to leave it on and drain the battery faster. This is a good battery management measure.
 
Back
Top