add new board type

pull/1643/head
gabrielburnworth 2019-12-27 12:30:58 -08:00
parent ea8428621a
commit 6bc6e6ffec
7 changed files with 27 additions and 4 deletions

View File

@ -12,6 +12,7 @@ class FbosConfig < ApplicationRecord
ARDUINO = "arduino",
FARMDUINO = "farmduino",
FARMDUINO_K14 = "farmduino_k14",
FARMDUINO_K15 = "farmduino_k15",
EXPRESS_K10 = "express_k10",
]

View File

@ -9,6 +9,10 @@ describe("boardType()", () => {
expect(boardType("5.0.3.G")).toEqual("farmduino_k14");
});
it("returns Farmduino k1.5", () => {
expect(boardType("5.0.3.H")).toEqual("farmduino_k15");
});
it("returns Farmduino Express k1.0", () => {
expect(boardType("5.0.3.E")).toEqual("express_k10");
});

View File

@ -81,6 +81,7 @@ describe("<BoardType/>", () => {
{ label: "Arduino/RAMPS (Genesis v1.2)", value: "arduino" },
{ label: "Farmduino (Genesis v1.3)", value: "farmduino" },
{ label: "Farmduino (Genesis v1.4)", value: "farmduino_k14" },
{ label: "Farmduino (Genesis v1.5)", value: "farmduino_k15" },
{ label: "Farmduino (Express v1.0)", value: "express_k10" },
{ label: "None", value: "none" },
]);

View File

@ -2,8 +2,12 @@ import { FirmwareHardware } from "farmbot";
import { ShouldDisplay, Feature } from "../interfaces";
export const isFwHardwareValue = (x?: unknown): x is FirmwareHardware => {
const values: FirmwareHardware[] =
["arduino", "farmduino", "farmduino_k14", "express_k10", "none"];
const values: FirmwareHardware[] = [
"arduino",
"farmduino", "farmduino_k14", "farmduino_k15",
"express_k10",
"none"
];
return !!values.includes(x as FirmwareHardware);
};
@ -13,7 +17,7 @@ export const getBoardIdentifier =
export const isKnownBoard = (firmwareVersion: string | undefined): boolean => {
const boardIdentifier = getBoardIdentifier(firmwareVersion);
return ["R", "F", "G", "E"].includes(boardIdentifier);
return ["R", "F", "G", "H", "E"].includes(boardIdentifier);
};
export const getBoardCategory =
@ -33,6 +37,8 @@ export const boardType =
return "farmduino";
case "G":
return "farmduino_k14";
case "H":
return "farmduino_k15";
case "E":
return "express_k10";
default:
@ -45,6 +51,9 @@ const FARMDUINO = { label: "Farmduino (Genesis v1.3)", value: "farmduino" };
const FARMDUINO_K14 = {
label: "Farmduino (Genesis v1.4)", value: "farmduino_k14"
};
const FARMDUINO_K15 = {
label: "Farmduino (Genesis v1.5)", value: "farmduino_k15"
};
const EXPRESS_K10 = {
label: "Farmduino (Express v1.0)", value: "express_k10"
};
@ -54,6 +63,7 @@ export const FIRMWARE_CHOICES_DDI = {
[ARDUINO.value]: ARDUINO,
[FARMDUINO.value]: FARMDUINO,
[FARMDUINO_K14.value]: FARMDUINO_K14,
[FARMDUINO_K15.value]: FARMDUINO_K15,
[EXPRESS_K10.value]: EXPRESS_K10,
[NONE.value]: NONE
};
@ -63,6 +73,7 @@ export const getFirmwareChoices =
ARDUINO,
FARMDUINO,
FARMDUINO_K14,
...(shouldDisplay(Feature.farmduino_k15) ? [FARMDUINO_K15] : []),
...(shouldDisplay(Feature.express_k10) ? [EXPRESS_K10] : []),
...(shouldDisplay(Feature.none_firmware) ? [NONE] : []),
]);

View File

@ -78,6 +78,7 @@ export enum Feature {
endstop_invert = "endstop_invert",
express_k10 = "express_k10",
farmduino_k14 = "farmduino_k14",
farmduino_k15 = "farmduino_k15",
firmware_restart = "firmware_restart",
flash_firmware = "flash_firmware",
groups = "groups",

View File

@ -164,6 +164,11 @@ const FirmwareChoiceTable = () =>
<td>{"Farmduino"}</td>
<td><code>{FIRMWARE_CHOICES_DDI["farmduino_k14"].label}</code></td>
</tr>
<tr>
<td>{"Genesis v1.5"}</td>
<td>{"Farmduino"}</td>
<td><code>{FIRMWARE_CHOICES_DDI["farmduino_k15"].label}</code></td>
</tr>
<tr>
<td>{"Express v1.0"}</td>
<td>{"Farmduino"}</td>

View File

@ -45,7 +45,7 @@
"coveralls": "3.0.9",
"enzyme": "3.10.0",
"enzyme-adapter-react-16": "1.15.1",
"farmbot": "9.0.0",
"farmbot": "9.0.1-rc0",
"i18next": "19.0.2",
"install": "0.13.0",
"lodash": "4.17.15",