char net_msgp_environment(char stat) { char *s; unsigned long park; if (car_parktime == 0) park = 0; else park = car_time - car_parktime; s = stp_i(net_scratchpad, "MP-0 D", car_doors1); s = stp_i(s, ",", car_doors2); s = stp_i(s, ",", car_lockstate); s = stp_i(s, ",", car_tpem); s = stp_i(s, ",", car_tmotor); s = stp_i(s, ",", car_tbattery); s = stp_i(s, ",", car_trip); s = stp_ul(s, ",", car_odometer); s = stp_i(s, ",", car_speed); s = stp_ul(s, ",", park); s = stp_i(s, ",", car_ambient_temp); s = stp_i(s, ",", car_doors3); s = stp_i(s, ",", car_stale_temps); s = stp_i(s, ",", car_stale_ambient); s = stp_l2f(s, ",", car_12vline, 1); s = stp_i(s, ",", car_doors4); s = stp_l2f(s, ",", car_12vline_ref, 1); s = stp_i(s, ",", car_doors5); return net_msg_encode_statputs(stat, &crc_environment); }
void net_msg_erroralert(unsigned int errorcode, unsigned long errordata) { char *s; delay100(2); net_msg_start(); s = stp_s(net_scratchpad, "MP-0 PE", car_type); s = stp_ul(s, ",", (unsigned long)errorcode); s = stp_ul(s, ",", (unsigned long)errordata); net_msg_encode_puts(); net_msg_send(); }
char *net_prep_stat(char *s) { if (car_doors1bits.ChargePort) { // Charge port door is open, we are charging switch (car_chargemode) { case 0x00: s = stp_rom(s, "Standard - "); // Charge Mode Standard break; case 0x01: s = stp_rom(s, "Storage - "); // Storage break; case 0x03: s = stp_rom(s, "Range - "); // Range break; case 0x04: s = stp_rom(s, "Performance - "); // Performance } switch (car_chargestate) { case 0x01: s = stp_rom(s, "Charging"); // Charge State Charging break; case 0x02: s = stp_rom(s, "Charging, Topping off"); // Topping off break; case 0x04: s = stp_rom(s, "Charging Done"); // Done break; case 0x0d: s = stp_rom(s, "Preparing"); // Preparing break; case 0x0f: s = stp_rom(s, "Charging, Heating"); // Heating break; default: s = stp_rom(s, "Charging Stopped"); // Stopped } } else { s = stp_rom(s, "Not charging"); } if (can_mileskm == 'M') { s = stp_i(s, "\r Range: ", car_estrange); s = stp_i(s, " - ", car_idealrange); s = stp_rom(s, " mi"); } else { s = stp_i(s, "\r Range: ", MI2KM(car_estrange)); s = stp_i(s, " - ", MI2KM(car_idealrange)); s = stp_rom(s, " km"); } s = stp_i(s, "\r SOC: ", car_SOC); s = stp_rom(s, "%"); if (can_mileskm == 'M') { s = stp_ul(s, "\r ODO: ", car_odometer / 10); s = stp_rom(s, " mi"); } else { s = stp_ul(s, "\r ODO: ", MI2KM(car_odometer / 10)); s = stp_rom(s, " km"); } return s; }