Entries tagged as
A1533 AT&T iPhone 5S A1530 LTE SK Telecom camera slow motion fingerprint sensor Touch ID M7 pedometer 3DMark Cortex Camera Geekbench iPhone 3GS iPhone 4S iPhone 5 Kraken Octane performance SunSpider accelerometer compass gyroscope charger A1524 A1586 iPad iPad mini iPhone 6 iPhone 6 Plus Vega LTE-A A1522 A1549 iPhone 5C belt case OIS Focus Pixels barometer iOS 8 M8 KT LGU+ adapter cellphone JooN 2 power plug USB watch Europe Japan Korea O2E Smart Multi-Charger UK USA Apple Watch cable watchOS 2 iPhone 4 iPhone 6S Plus Bluetooth GPS lightning Micro-USB pen Bitgaram City car electric Naju KPX Celine Chung Hayun Chung shopping KEPCO Bolt EV iPhone X road Chevrolet astronomy ISS Moon satellite iOS sound Han-gang river Seoul passcode Canon SX50 HS flare Iridium Alhena constellation Jupiter Orion Christmas tree decoration balls lights sled snow screwdriver table cookie milk Oreo Homeplus pizza chocolate chip cookies couch FaceTime New Year's Day rice cake Skype Sung-Eun Kim tteokguk computer swing Toys R Us trampoline Mega Kids Box Megabox movie theatre Wesley Woo-Duk Hwang-Chung tortilla wrap toothbrush salad Disney Frozen remote controlled helicopter repair replacement Syma S107G Danish butter cookies animation Larva shopping cart screen Screen Glue screen protector cleaning bus Tayo toy s9y server search Burger King clock desk office melodica Mac mini macOS OS X Sierra headlights lamp Sonata 2 High Sierra iMac bicycle bottle holder MySQL epoxy umbrella laptop iPhone SE SR626SW band Canada Hong Kong T-Mobile Verizon Apple Store Fukuoka Fukuoka Airport Incheon International Airport subway travel leather case VoLTE Reachability iPhone 6+ Genmob BEXCO bed Busan exposition house laser pointer porcelains pork cutlet restaurant skating boat Gwangju Hakata hydrofoil lake park seaport Dazaifu museum temple train udon zoo cathedral flower garden agriculture BIXPO Daepoong DE101 solar panel wind turbine drone ESS 3D printing chocolate Associated Press Photo Exhibition Kimdaejung Convention Center coronavirus Daejeon National Science tester ball play set playground leaf straw fire observatory building construction hotel model Ozobot programming school London Heathrow Airport Underground Korean Air Paddington Station toilet airplane strike double decker beverage Vodafone weather breakfast Big Ben London Eye Nelson's Column Trafalgar Square fish & chips cruise ship HMS Belfast Tower Bridge Tower of London entertainment system Volo TV Irn-Bru Ribena Schweppes Volvic kimchi ramen ramyeon rice supermarket British Museum van Assyria Egypt Greece Persia Oband T2 water resistance Nintendo Wii running swimming Wii Fit Plus barcode remote control iOS 9 Yunmai Smart Scale app iOS 10 watchOS 3 box iPhone 7 Plus Series 2 butadon watchOS 7 Sanyo VPC-C4 Minolta Dimage X20 binoculars Chuseok telescope eclipse Kodak Z1085 IS star Sun electric fan LED light trail M&M's Balance Board game Wii Party Mario Kart 3D Touch A1687 A1779 earphone iPhone 7 IoT refrigerator Samsung CGV hot dog popcorn snack Galaxy Fold Galaxy S20 Ultra Galaxy Z Flip glass pool telephone Vietnamese noodles Canon EOS 450D Kiwi Fotos KF-8012N Sony A5000 Celestron NexStar 6SE dock speaker electricity smart plug socket wire MacBook Air apple Yongsan iOS 13 iPhone 11 Pro memory MicroSD storage LAN printer Electron Street magnet USB-C Simpsons: Tapped Out Comic Life Crop-Size image resizer Resize Image Resize Photo SimpleResize China lunar calendar iOS 12 iPad Pro 9.7 iPhone XS rain satellite TV shower television water card reader mouse LG Electronics microwave store HDD keyboard monitor Xbox cooler Native Union hub PeaceKeeper App Store news newspaper interview 2011 iOS 5.0.1 build 9A405 VoIP A1633 A1634 A1688 iPhone 6S Osaka artificial star collimation LG Prada 3.0 Seojun Electric smart meter
To keep a detailed log of the Bolt EV's battery status, I've been using a Bluetooth OBD-II adapter that connects to a smartphone for the past two years. While it worked well, I wanted to have a permanent display showing the data and installing an iPhone to do so seemed to be an overkill. So I searched for dedicated "gauge" units that allowed for customization and narrowed the selection down to ScanGauge 2 and UltraGauge MX. The former allowed for more custom data (25 PIDs vs. 8), while the latter had a bigger screen (8 lines vs. 2). I ended up with the bigger screen.
With the device at hand, I had to find a way to program it to display Bolt EV-specific data using the existing custom PID information, and then install it on a place where it is both easily visible and properly shaded. After a bit of work, I was able to fulfill all of the objectives, as you can see in the photo above. The first page shows the actual vehicle speed, accelerator pedal position, various battery information including State of Charge (both raw and displayed), usable capacity, and temperature, as well as current trip distance and 12V battery voltage. Let's see how this was done.
Initially, UltraGauge detects how many of the 60 standard OBD-II PIDs (Parameter Identifications) and 28 self-calculated data it supports are available on the car. Because Bolt EV does not have an internal combustion engine, most of these are irrelevant and unsurprisingly unsupported. Of the 20 said to be usable as shown here, only 7 of them are standard PIDs and none are related to monitoring the high-voltage propulsion battery.
So I had to devote all of the eight custom PID slots available for this purpose. The problem is that the screen for configuring them (MENU - Gauge/Page Menu - Select Gauge/Page - M Gauge Setup) looks like this:
|0121||Distance driven with CEL (Check Engine Light) on||km|
|0130||Warm-ups since TC (Trouble Code) was cleared||Count|
|0131||Distance driven since TC was cleared||km|
|0142||ECM (Engine Control Module) 12V Battery Voltage||V|
|0146||Ambient Air Temperature||°C|
|0149||Accelerator Pedal Position 1||%|
And it's not easy to make sense of it at first. I needed to translate the information found in an unofficial list of custom PIDs for Bolt EV into this format. After reading the UltraGauge MX programming supplement and researching the CAN Bus protocol, I was able to do just that. For these PIDs...
I programmed UltraGauge like this:
|228334||State of Charge (Displayed)||%||A × 100 / 255 + 0|
|015B||State of Charge (Raw)||%||A × 100 / 255 + 0|
|2241A3||Battery Capacity (for 2017-18 Bolt)||kWh||A × 999 / 31250 + 0|
|22434F||Battery Temperature||°C||A × 1 / 1 - 40|
|22436B||HV Charger Voltage||V||A × 1 / 2 + 0|
|22436C||HV Charger Current||A||A × 1 / 20 + 0|
|22437D||Last Charge Amount||kWh||A × 1 / 100 + 0|
|2241B6||Battery Heater Power||kW||A × 1 / 1000 + 0|
You can see that TData is composed of the header and the PID. The header specifies which ECM the data should be coming from and there are at least eight of them (E0 to E7) on Bolt. The numbers used in the formula are entered in hexadecimal, as with other inputs. After making sure that the programmed PIDs were working as intended, I went ahead with the permanent installation of the device.