fix rpi3 build, add some gcode stuffs
parent
dd0e3454b3
commit
8df4834b55
|
@ -29,3 +29,5 @@ Makefile.bac
|
|||
|
||||
# releases generated by the Makefile
|
||||
/release-*
|
||||
|
||||
images
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
NERVES_SYSTEM_*
|
||||
nerves_system_br
|
||||
nerves
|
||||
|
|
|
@ -23,8 +23,9 @@ defmodule Farmbot.Serial.Gcode.Handler do
|
|||
|
||||
@lint false
|
||||
@spec handle_cast(any, state) :: {:noreply, state}
|
||||
# Don't log messages there is to many.
|
||||
def handle_cast({:debug_message, str}, state) do
|
||||
Logger.debug ">> got a message from my arduino: #{str}"
|
||||
IO.puts str
|
||||
{:noreply, state}
|
||||
end
|
||||
|
||||
|
@ -101,8 +102,15 @@ defmodule Farmbot.Serial.Gcode.Handler do
|
|||
%{nerves: nerves, current: current, log: log ++ [{message, caller}]}}
|
||||
end
|
||||
|
||||
def handle_cast({:unhandled_gcode, code}, state) do
|
||||
Logger.debug ">> got an unhandled gcode! #{code}"
|
||||
{:noreply, state}
|
||||
end
|
||||
|
||||
def handle_cast(:dont_handle_me, state), do: {:noreply, state}
|
||||
|
||||
def handle_cast(event, state) do
|
||||
Logger.debug ">> got an unhandled gcode! #{inspect event}"
|
||||
Logger.debug ">> got an unhandled event! #{inspect event}"
|
||||
{:noreply, state}
|
||||
end
|
||||
|
||||
|
|
|
@ -24,15 +24,28 @@ defmodule Farmbot.Serial.Gcode.Parser do
|
|||
def parse_code("R03 Q" <> tag) do {:error, tag} end
|
||||
def parse_code("R04") do {:busy, qtag()} end
|
||||
def parse_code("R04 Q" <> tag) do {:busy, tag} end
|
||||
def parse_code("R05" <> r) do
|
||||
IO.puts r
|
||||
:dont_handle_me # Dont care about this right now.
|
||||
end
|
||||
def parse_code("R06" <> r) do
|
||||
IO.puts r
|
||||
:dont_handle_me # Dont care about this right now.
|
||||
end
|
||||
|
||||
|
||||
def parse_code("R21 " <> params), do: parse_pvq(params, :report_parameter_value)
|
||||
def parse_code("R31 " <> params), do: parse_pvq(params, :report_status_value)
|
||||
def parse_code("R41 " <> params), do: parse_pvq(params, :report_pin_value)
|
||||
def parse_code("R81 " <> params), do: parse_end_stops(params)
|
||||
def parse_code("R82 " <> position), do: parse_report_current_position(position)
|
||||
def parse_code("R82 " <> position) do
|
||||
IO.puts position
|
||||
parse_report_current_position(position)
|
||||
end
|
||||
def parse_code("R83 " <> v), do: {:report_software_version, String.to_integer(v)}
|
||||
def parse_code("R83") do {:report_software_version, -1} end
|
||||
def parse_code("R99 " <> message) do {:debug_message, message} end
|
||||
def parse_code("Command" <> _), do: :dont_handle_me # I think this is a bug
|
||||
def parse_code(code) do {:unhandled_gcode, code} end
|
||||
|
||||
@doc ~S"""
|
||||
|
|
|
@ -30,6 +30,7 @@ defmodule Farmbot.Mixfile do
|
|||
start_permanent: Mix.env == :prod,
|
||||
build_path: "../../_build/#{target(Mix.env)}",
|
||||
deps_path: "../../deps/#{target(Mix.env)}",
|
||||
images_path: "../../images",
|
||||
config_path: "../../config/config.exs",
|
||||
lockfile: "../../mix.lock",
|
||||
aliases: aliases(Mix.env),
|
||||
|
@ -72,7 +73,6 @@ defmodule Farmbot.Mixfile do
|
|||
:vmq_commons,
|
||||
:amnesia,
|
||||
:gen_stage,
|
||||
:nerves,
|
||||
:"farmbot_system_#{target(Mix.env)}",
|
||||
:farmbot_system,
|
||||
:farmbot_auth,
|
||||
|
@ -95,7 +95,6 @@ defmodule Farmbot.Mixfile do
|
|||
{:quantum, ">= 1.8.1"}, # cron jobs
|
||||
{:amnesia, github: "meh/amnesia"}, # database implementation
|
||||
{:gen_stage, "0.11.0"},
|
||||
{:nerves, "~> 0.4.0"},
|
||||
{:credo, "0.6.0-rc1", only: [:dev, :test]},
|
||||
{:ex_doc, "~> 0.14", only: :dev},
|
||||
{:dialyxir, "~> 0.4", only: [:dev], runtime: false},
|
||||
|
|
|
@ -3,7 +3,7 @@ defmodule Farmbot.System.NervesCommon.Network do
|
|||
Common network functionality for Nerves Devices.
|
||||
"""
|
||||
|
||||
defmacro __using__(target: _target) do
|
||||
defmacro __using__(target: _target, modules: modules) do
|
||||
quote do
|
||||
@behaviour Farmbot.System.Network
|
||||
use GenServer
|
||||
|
@ -14,6 +14,11 @@ defmodule Farmbot.System.NervesCommon.Network do
|
|||
def start_link(), do: GenServer.start_link(__MODULE__, [], name: __MODULE__)
|
||||
|
||||
def init(_) do
|
||||
for module <- unquote(modules) do
|
||||
System.cmd("modprobe", [module])
|
||||
end
|
||||
# wait for a few seconds for everything to settle
|
||||
Process.sleep(5000)
|
||||
GenEvent.add_handler(event_manager(),
|
||||
Farmbot.System.NervesCommon.EventManager, [])
|
||||
# Farmbot.System.NervesCommon.Cell.start_link
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
defmodule Module.concat([Farmbot, System, "rpi3", Network]) do
|
||||
use Farmbot.System.NervesCommon.Network, target: "rpi3"
|
||||
use Farmbot.System.NervesCommon.Network, target: "rpi3", modules: ["brcmfmac"]
|
||||
end
|
||||
|
|
|
@ -111,7 +111,7 @@ CONFIG_USB_NET_SMSC95XX=y
|
|||
# CONFIG_USB_NET_NET1080 is not set
|
||||
# CONFIG_USB_NET_CDC_SUBSET is not set
|
||||
# CONFIG_USB_NET_ZAURUS is not set
|
||||
CONFIG_BRCMFMAC=y
|
||||
CONFIG_BRCMFMAC=m
|
||||
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
|
||||
CONFIG_INPUT_EVDEV=m
|
||||
# CONFIG_INPUT_KEYBOARD is not set
|
||||
|
|
|
@ -18,12 +18,22 @@ defmodule NervesSystemRpi3.Mixfile do
|
|||
def application, do: []
|
||||
|
||||
defp deps do
|
||||
[{:nerves, "~> 0.4.0"},
|
||||
{:nerves_toolchain_arm_unknown_linux_gnueabihf, "~> 0.9.0"}]
|
||||
++ [find_nerves_system_br()]
|
||||
[find_nerves(), find_nerves_toolchain(), find_nerves_system_br()]
|
||||
end
|
||||
|
||||
def find_nerves_system_br do
|
||||
defp find_nerves_toolchain() do
|
||||
{:nerves_toolchain_arm_unknown_linux_gnueabihf, "~> 0.9.0"}
|
||||
end
|
||||
|
||||
defp find_nerves() do
|
||||
if File.exists?("../nerves") do
|
||||
{:nerves, in_umbrella: true, override: true}
|
||||
else
|
||||
{:nerves, "~> 0.4.0"}
|
||||
end
|
||||
end
|
||||
|
||||
defp find_nerves_system_br do
|
||||
if File.exists?("../nerves_system_br") do
|
||||
{:nerves_system_br, in_umbrella: true}
|
||||
else
|
||||
|
|
|
@ -1,40 +0,0 @@
|
|||
# bcm94330wlsdgb.txt
|
||||
manfid=0x2d0
|
||||
prodid=0x0552
|
||||
vendid=0x14e4
|
||||
devid=0x4360
|
||||
boardtype=0x0552
|
||||
boardrev=0x11
|
||||
# this design has 2.4GHz SP3T switch
|
||||
boardflags=0x00080200
|
||||
nocrc=1
|
||||
xtalfreq=37400
|
||||
boardnum=22
|
||||
macaddr=00:90:4c:c5:12:38
|
||||
ag0=255
|
||||
aa2g=1
|
||||
ccode=CN
|
||||
pa0b0=0x14d0
|
||||
pa0b1=0xfd98
|
||||
pa0b2=0xff78
|
||||
rssismf2g=0xa
|
||||
rssismc2g=0x3
|
||||
rssisav2g=0x7
|
||||
maxp2ga0=0x50
|
||||
sromrev=3
|
||||
il0macaddr=00:90:4c:c5:12:38
|
||||
wl0id=0x431b
|
||||
cckPwrOffset=5
|
||||
ofdm2gpo=0x66666666
|
||||
mcs2gpo0=0x6666
|
||||
mcs2gpo1=0x6666
|
||||
swctrlmap_2g=0x04040404,0x02020202,0x02020404,0x10202,0x1ff
|
||||
swctrlmap_5g=0x00100010,0x00280020,0x00200010,0x14202,0x2f8
|
||||
rfreg033=0x19
|
||||
rfreg033_cck=0x1f
|
||||
dacrate2g=160
|
||||
txalpfbyp2g=1
|
||||
bphyscale=17
|
||||
cckPwrIdxCorr=-15
|
||||
pacalidx2g=45
|
||||
txgaintbl=1
|
|
@ -0,0 +1,66 @@
|
|||
# NVRAM file for BCM943430WLPTH
|
||||
# 2.4 GHz, 20 MHz BW mode
|
||||
|
||||
# The following parameter values are just placeholders, need to be updated.
|
||||
manfid=0x2d0
|
||||
prodid=0x0727
|
||||
vendid=0x14e4
|
||||
devid=0x43e2
|
||||
boardtype=0x0727
|
||||
boardrev=0x1101
|
||||
boardnum=22
|
||||
macaddr=00:90:4c:c5:12:38
|
||||
sromrev=11
|
||||
boardflags=0x00404201
|
||||
boardflags3=0x08000000
|
||||
xtalfreq=37400
|
||||
nocrc=1
|
||||
ag0=255
|
||||
aa2g=1
|
||||
ccode=ALL
|
||||
|
||||
pa0itssit=0x20
|
||||
extpagain2g=0
|
||||
#PA parameters for 2.4GHz, measured at CHIP OUTPUT
|
||||
pa2ga0=-168,7161,-820
|
||||
AvVmid_c0=0x0,0xc8
|
||||
cckpwroffset0=5
|
||||
|
||||
# PPR params
|
||||
maxp2ga0=84
|
||||
txpwrbckof=6
|
||||
cckbw202gpo=0
|
||||
legofdmbw202gpo=0x66111111
|
||||
mcsbw202gpo=0x77711111
|
||||
propbw202gpo=0xdd
|
||||
|
||||
# OFDM IIR :
|
||||
ofdmdigfilttype=18
|
||||
ofdmdigfilttypebe=18
|
||||
# PAPD mode:
|
||||
papdmode=1
|
||||
papdvalidtest=1
|
||||
pacalidx2g=42
|
||||
papdepsoffset=-22
|
||||
papdendidx=58
|
||||
|
||||
# LTECX flags
|
||||
ltecxmux=0
|
||||
ltecxpadnum=0x0102
|
||||
ltecxfnsel=0x44
|
||||
ltecxgcigpio=0x01
|
||||
|
||||
il0macaddr=00:90:4c:c5:12:38
|
||||
wl0id=0x431b
|
||||
|
||||
deadman_to=0xffffffff
|
||||
# muxenab: 0x1 for UART enable, 0x2 for GPIOs, 0x8 for JTAG
|
||||
muxenab=0x1
|
||||
# CLDO PWM voltage settings - 0x4 - 1.1 volt
|
||||
#cldo_pwm=0x4
|
||||
|
||||
#VCO freq 326.4MHz
|
||||
spurconfig=0x3
|
||||
|
||||
edonthd20l=-75
|
||||
edoffthd20ul=-80
|
Binary file not shown.
2
mix.lock
2
mix.lock
|
@ -29,7 +29,7 @@
|
|||
"mime": {:hex, :mime, "1.0.1", "05c393850524767d13a53627df71beeebb016205eb43bfbd92d14d24ec7a1b51", [:mix], []},
|
||||
"mimerl": {:hex, :mimerl, "1.0.2", "993f9b0e084083405ed8252b99460c4f0563e41729ab42d9074fd5e52439be88", [:rebar3], []},
|
||||
"mustache": {:hex, :mustache, "0.0.2", "870fbef411c47d17df06a57b8b3f69e26eb110cba0177c34e273db5d94369d9b", [:mix], []},
|
||||
"nerves": {:hex, :nerves, "0.4.6", "2026851cfbf67fd797e6a9f304498bb2d04f39f2d17d6e77ed82fab361178eae", [:mix], [{:distillery, "~> 1.0", [hex: :distillery, optional: false]}]},
|
||||
"nerves": {:hex, :nerves, "0.4.7", "c8d08348e6f717cf140da26dc374bcf2f6f7c2bec646073aeab049e08b588173", [:mix], [{:distillery, "~> 1.0", [hex: :distillery, optional: false]}]},
|
||||
"nerves_firmware": {:git, "https://github.com/nerves-project/nerves_firmware.git", "b783df3867c82dc0abe6770079077a6f922c00a9", []},
|
||||
"nerves_firmware_http": {:git, "https://github.com/nerves-project/nerves_firmware_http.git", "cc2cb110b0587a482d454175916dc597d62c4bfa", []},
|
||||
"nerves_interim_wifi": {:git, "https://github.com/nerves-project/nerves_interim_wifi.git", "32e848274571e328ebd7155848cc28d020938429", []},
|
||||
|
|
Loading…
Reference in New Issue