- Mac Address From Chip Id Manual Optional Armbian Tool
- Mac Address From Chip Id Manual Optional Armbian Pdf
- Mac Address From Chip Id Manual Optional Armbian 2017
- Mac Address From Chip Id Manual Optional Armbian Download
- Mac Address From Chip Id Manual Optional Ambien Without
NodeMCU/Linux aims to target following hardware running a Debian-based Linux:
- Raspberry Pi series (like Raspberry Pi 3, Raspberry Pi Zero) running Raspbian
- Orange Pi series (like Orange Pi Zero, Orange Pi Lite, etc) running Armbian
- NanoPi series (like NanoPi NEO, etc) running Armbian
detailed list of supported devices will be published as soon gpio and i2c modules are more complete and tested.
Insert your micro SD card imaged with Armbian into the micro SD slot on the Orange Pi Zero. (Optional) Connect your Orange Pi Zero using an Ethernet cable to your router. Connect three jumper cables between your USB-to-Serial converter and the Orange Pi Zero. Mac address-table static. Adds static entries to the MAC address table or configures a static MAC address with IGMP snooping disabled for that address. Show mac address-table aging-time. Displays information about the time-out values for the MAC address table. Show mac address-table count. Displays the number of entries currently in the MAC.
- majority of the modules are meant to be implemented with Lua itself and external modules via
luarocks - if hardware-near implementation is needed:
- Lua 5.1 and luaffifb module https://github.com/facebookarchive/luaffifb
- LuaNode has async IO infrastructure with
ffisupport (currently used) - LuaJIT FFI: http://luajit.org/ext_ffi.html interfacing C functions and structures (parses string to extract
structinformation) NOTE: currentlyluajitis disregarded, butlua5.1is used
- ...
Following modules are aimed to implement NodeMCU/Linux mainly based on the NodeMCU/ESP8266 API and partially on NodeMCU/ESP32 API:
adc
Functions (bold=implemented):
adc.force_init_mode()Checks and if necessary reconfigures the ADC mode setting in the ESP init data block.adc.read()Samples the ADC.adc.readvdd33()Reads the system voltage.
ads1115
adxl345
am2320
apa102
bit
State: built-in
Notes:
- Lua 5.1: using bitop module
- Lua 5.3: it's included https://www.lua.org/manual/5.3/manual.html#3.4.2
bme280
bmp085
coap
cron
Functions (bold=implemented):
cron.schedule()Creates a new schedule entry.cron.reset()Removes all scheduled entries.cron.entry:handler()Sets a new handler for entry.cron.entry:schedule()Sets a new schedule mask.cron.entry:unschedule()Disables schedule.
crypto
dht
ds18b20
encoder
enduser setup
file
State: most functionality implemented with io module, vastly untested
Functions (bold=implemented):
file.chdir()Change current directory (and drive).file.exists()Determines whether the specified file exists.file.format()Format the file system.file.fscfg()Returns the flash address and physical size of the file system area, in bytes.file.fsinfo()Return size information for the file system.file.list()Lists all files in the file system.file.mount()Mounts a FatFs volume on SD card.file.on()Registers callback functions.file.open()Opens a file for access, potentially creating it (for write modes).file.remove()Remove a file from the file system.file.rename()Renames a file.file.stat()Get attribtues of a file or directory in a table.file.close(), file.obj:close()Closes the open file, if any.file.flush(), file.obj:flush()Flushes any pending writes to the file system, ensuring no data is lost on a restart.file.read(), file.obj:read()Read content from the open file.file.readline(), file.obj:readline()Read the next line from the open file.file.seek(), file.obj:seek()Sets and gets the file position, measured from the beginning of the file, to the position given by offset plus a base specified by the string whence.file.write(), file.obj:write()Write a string to the open file.file.writeline(), file.obj:writeline()Write a string to the open file and append 'n' at the end.
gdbstub
gpio
State: partially implemented but entirely untested
Functions (bold=implemented):
gpio.mode()Initialize pin to GPIO mode, set the pin in/out direction, and optional internal weak pull-up.gpio.read()Read digital GPIO pin value.gpio.serout()Serialize output based on a sequence of delay-times in µs.gpio.trig()Establish or clear a callback function to run on interrupt for a pin.gpio.write()Set digital GPIO pin value.
Notes:
- https://github.com/Tieske/rpi-gpio assumes Raspberry Pi
- https://github.com/bitbank2/ArmbianIO Armbian (NanoPi, Orange Pi, but not Raspberry Pi)
hdc1080
hmc5883l
http
State: partial implemented but not functional (requires net module to work)
Functions (bold=implemented):
http.delete()Executes a HTTP DELETE request.http.get()Executes a HTTP GET request.http.post()Executes a HTTP POST request.http.put()Executes a HTTP PUT request.http.request()Execute a custom HTTP request for any HTTP method.
Notes:
- partial Lua implementation exists at https://github.com/Spiritdude/nodemcu-shell/blob/master/lib/http.lua (depends on
netmodule)
hx711
i2c

State: basic incomplete and untested skeleton
Notes:
l3g4200d
math
Status: built-in
Notes:
- ESP8266: not available (yet)
- ESP32: experimentally available
- Linux: built-in
mcp4725
mdns
mqtt
net
Notes:
Functions (bold=implemented):
net.createConnection()Creates a client.net.socket:close()Closes socket.net.socket:getpeer()Retrieve port and ip of remote peer.net.socket:getaddr()Retrieve local port and ip of socket.net.socket:hold()Throttle data reception by placing a request to block the TCP receive function.net.socket:on()Register callback functions for specific events.connectionreceiveclosesent
net.socket:send()Sends data to remote peer.net.socket:connect()Connect to a remote server.net.socket:ttl()Changes or retrieves Time-To-Live value on socket.net.socket:unhold()Unblock TCP receiving data by revocation of a preceding hold().
net.createServer()Creates a server.net.server:close()Closes the server.net.server:getaddr()Returns server local address/port.net.server:listen()Listen on port from IP address.net.socket:dns()Provides DNS resolution for a hostname.net.socket:getpeer()Retrieve port and ip of remote peer.net.socket:getaddr()Retrieve local port and ip of socket.net.socket:hold()Throttle data reception by placing a request to block the TCP receive function.net.socket:on()Register callback functions for specific events.connectionreceivesent
net.socket:send()Sends data to remote peer.net.socket:ttl()Changes or retrieves Time-To-Live value on socket.net.socket:unhold()Unblock TCP receiving data by revocation of a preceding hold().
net.createUDPSocket()Creates an UDP socket.net.multicastJoin()Join multicast group.net.multicastLeave()Leave multicast group.net.udpsocket:close()Closes UDP socket.net.udpsocket:listen()Listen on port from IP address.net.udpsocket:on()Register callback functions for specific events.net.udpsocket:send()Sends data to specific remote peer.net.udpsocket:dns()Provides DNS resolution for a hostname.net.udpsocket:getaddr()Retrieve local port and ip of socket.net.udpsocket:ttl()Changes or retrieves Time-To-Live value on socket.
net.dns.getdnsserver()Gets the IP address of the DNS server used to resolve hostnames.net.dns.resolve()Resolve a hostname to an IP address.net.dns.setdnsserver()Sets the IP of the DNS server used to resolve hostnames.
node
State: partially implemented, but untested
Functions (bold=implemented):
node.bootreason()Returns the boot reason and extended reset info.node.chipid()Returns the ESP chip ID.node.compile()Compiles a Lua text file into Lua bytecode, and saves it as .node.dsleep()Enters deep sleep mode, wakes up when timed out.node.flashid()Returns the flash chip ID.node.flashsize()Returns the flash chip size in bytes.node.heap()Returns the current available heap size in bytes.node.info()Returns NodeMCU version (major,minor,dev), chipid, flashid, flash size, flash mode, flash speed, architecture (new: 'esp8266', 'esp32', or 'linux')node.input()Submits a string to the Lua interpreter.node.output()Redirects the Lua interpreter output to a callback function.node.restart()Restarts the chip/device, Hint:nodemcumust be run asroot(e.g. viasudo nodemcu)node.restore()node.setcpufreq()Change the working CPU Frequency [MHz], loose setting (e.g. choosing next possible valid frequency out of a table)node.sleep()Put NodeMCU in light sleep mode to reduce current consumption.node.stripdebug()Controls the amount of debug information kept during node.node.osprint()Controls whether the debugging output from the SDK is printed.node.random()This behaves like math.node.egc.setmode()Sets the Emergency Garbage Collector mode.node.task.post()Enable a Lua callback or task to post another task request.
ow (1-Wire)
pcm
perf
pwm
rc
rfswitch
rotary
rtcfifo
rtcmem
rtctime
State: partially implemented, but untested
Functions (bold=implemented):
rtctime.dsleep()Puts the device into deep sleep mode, like node.rtctime.dsleep_aligned()For applications where it is necessary to take samples with high regularity, this function is useful.rtctime.epoch2cal()Converts a Unix timestamp to calendar format.rtctime.get()Returns the current time.rtctime.set()Sets the rtctime to a given timestamp in the Unix epoch (i.
Notes:
- Lua implementation exists at https://github.com/Spiritdude/nodemcu-shell/blob/master/lib/rtctime.lua
si7021
sigma delta
sjson
Status: partially implemented
Functions (bold=implemented):
sjson.encoder()This creates an encoder object that can convert a LUA object into a JSON encoded string.sjson.encoder:read()This gets a chunk of JSON encoded data.sjson.encode()Encode a Lua table to a JSON string.sjson.decoder()This makes a decoder object that can parse a JSON encoded string into a lua object.sjson.decoder:write()This provides more data to be parsed into the lua object.sjson.decoder:result()This gets the decoded lua object, or raises an error if the decode is not yet complete.sjson.decode()Decode a JSON string to a Lua table.
Notes:
lunajson(currently used)
sntp
sntp.sync()Attempts to obtain time synchronization.sntp.setoffset()Sets the offset between the rtc clock and the NTP time.sntp.getoffset()Gets the offset between the rtc clock and the NTP time.
somfy
spi
Notes:
struct
State: built-in
Functions (bold=implemented):
struct.pack()struct.unpack()
Notes:
- Using https://github.com/iryont/lua-struct or
switec
tcs34725
tls
tm1829
tmr
State: most functionality implement, functional since luanode is used as Lua framework:
Functions (bold=implemented):
tmr.now()Returns the system counter, which counts in microseconds.tmr.time()Returns the system uptime, in seconds (integer)tmr.uptime()(new) Returns the system uptime in seconds with microsecond precision (float)tmr.create()Creates a dynamic timer object.tmr:alarm()This is a convenience function combining tmr.tmr:interval()Changes a registered timer's expiry interval.tmr:register()Configures a timer and registers the callback function to call on expiry.tmr:resume()Resume an individual timer.tmr:start()Starts or restarts a previously configured timer.tmr:state()Checks the state of a timer.tmr:stop()Stops a running timer, but does not unregister it.tmr:suspend()Suspend an armed timer.tmr:unregister()Stops the timer (if running) and unregisters the associated callback.
tmr.resume_all()Resume all timers.tmr.suspend_all()Suspend all currently armed timers.tmr.softwd()Provides a simple software watchdog, which needs to be re-armed or disabled before it expires, or the system will be restarted.tmr.wdclr()Feed the system watchdog.
tsl2561
u8g / u8g2
u8g(2) is a pretty self-contained library except it asks for a I2C communication interface:
- either implement it per board/chipset (cumbersome) or
- call Lua layer i2c abstraction and be hardware independent
- utilize https://github.com/prpplague/Userspace-Arduino
- utilize https://github.com/me-no-dev/RasPiArduino
uart
Notes:
ucg
websocket
Notes:
wifi
Functions (bold=implemented):
based on NodeMCU/ESP32 wifi API:
wifi.getchannel()Gets the current WiFi channel.wifi.getmode()Gets WiFi operation mode.wifi.mode()Configures the WiFi mode to use.wifi.start()Starts the WiFi interface(s).wifi.stop()Shuts down the WiFi interface(s).wifi.sta.config()Sets the WiFi station configuration.wifi.sta.connect()Connects to the configured AP in station mode.wifi.sta.disconnect()Disconnects from AP in station mode.wifi.sta.on()Registers callbacks for WiFi station status events.wifi.sta.getmac()Gets MAC address in station mode.wifi.sta.scan()Scan for available networks.wifi.ap.config()Configures the AP.wifi.ap.on()Registers callbacks for WiFi AP events.wifi.ap.getmac()Gets MAC address in access point mode.
and a few from ESP8266 wifi API:
wifi.sta.gethostname()wifi.sta.sethostname()wifi.sta.status()wifi.sta.getmac()
wps
ws2801
ws2812
xpt2046
I'm using Mint 15 w/ Cinnamon.
I bought a set of bluetooth speakers and I'm trying to connect to them via terminal. Via the GUI I can see them normally and I am connected to them. I want to make a small script so every time they are visible I would connect to them automatically.
I am trying to scan them with:
hcitool scan
But I get
Scanning...
and after a few seconds the process dies.
The same thing with hidd --search.
Mac Address From Chip Id Manual Optional Armbian Tool
If I run hciconfig scan I get:
I suppose that is just saying my bluetooth address and that it is turned on.
As I said already, via the normal User Interface, I can see the speakers and I am connected to them, but through terminal I get nothing.
Actually it is quite funny that hcitool scan isn't finding anything since my speakers are connected and every time I run the command the sound from the speakers breaks for a couple of seconds.
6 Answers
I managed to do so via bluez-tools:
sudo apt-get install bluez-tools
List of devices to get the MAC address of my device:
bt-device -l
and successfully connect to it:
bt-audio -c 01:02:03:04:05:06
Keep in mind that the bt-audio feature is being reimplemented for newer versions.
Mac Address From Chip Id Manual Optional Armbian Pdf
ZippieI did to sudo apt-get install bluez-tools, because I did use it at some point.
After being able to find the device from hcitool scan,I ran bluez-simple-agent hci0 X where X is the mac address of the device I was adding. This created the connection to the device.
Then I ran hciconfig scan and it seems to have automatically started the connection.
I know this is kinda late but I was playing with this command hcitool and I'd like to point out something that I noted which solves your issue of doing a scan and the process 'just dying'. The thing is the scan only works if the devices are unpaired. In your case, you say you can see the speakers are connected on the GUI which means they've already been paired...hence the scan returns nothing.
I'm working on how to pair/connect devices with the same tool although I can see you've been given other options. I'll update my answer as soon as I manage.
To do it with the built-in utils, you can follow this slightly more manual process using bluetoothctl.
Mac Address From Chip Id Manual Optional Armbian 2017
The posts in this Github issue suggest a way to script it, but that did not work for me since I needed to manually wait for the scan to yield results.
I have the following installed in Debian 9.
I have already paired my Bluetooth headphones to a USB Bluetooth adapter on my desktop using the GUI application Bluetooth Manager. I have a keyboard shortcut that runs the following two commands: bt-device -c 00:02:5B:01:3C:3B; pacmd set-default-sink bluez_sink.00_02_5B_01_3C_3B.a2dp_sink
- Connect headphones to the Bluetooth USB adapter. (Use
bt-device -lto get the MAC address.) - Set Bluetooth audio as the default output. (Use
pacmd list-sinks | awk '/index:/ {print $0}; /name:/ {print $0}; /device.description/ {print $0}'to get the correct name.)
This might be a bit late, but I had the exact same problem, with the same output from hciconfig.
However, sudo hcitool lescan did the job for me - maybe it can still help you!