Coder Social home page Coder Social logo

awtrix2.0-controller's Introduction

AWTRIX2.0-Controller

After 4 Years, development of awtrix has been stopped. Support is still available on discord https://discord.gg/cyBCpdx

awtrix2.0-controller's People

Contributors

blueforcer avatar gaetanars avatar lubeda avatar mazze2000 avatar oliboehm avatar xneddyx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

awtrix2.0-controller's Issues

Brightness control doesn't work anymore

Since the last updates, it looks like that the brightness control at my awtrix classic isn't working anymore.

Also if the project is closed, it would be great to get a bug fix for that problem.

Cheers Robert

Request: RTC and Push Buttons

Sorry, it seems the forum is now working... I have 2 questions:

  1. Is there any plans for RTC usage, like DS3231? I think that might ease the network traffic.

  2. Can we use regular push buttons instead of touch sensors?

Thanks for the fantastic work, i spent 2 weeks to write a DIY LaMetric clock and i found out your awesome AWTRIX just after that, happily throw all my work to trash bin, lol.

Frequently show error log during awtrix controller operation

The controller version was updated to 0.35, and used x86 PC for awtrix’s host in Docker "whyet-awtrix21" (Operation System: Synology DSM 6.1.7). but error logs in the host were shown repeatedly. And the host would be hanged up about 1 hour.

Error logs were listed as follow:-

java.awt.AWTException: headless environment
at java.awt.Robot.<init>(Robot.java:91)
at butt.droid.awtRobot.AWTRobot.<init>(AWTRobot.java:87)
at de.awtrix.webstats._class_globals(webstats.java:123)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at anywheresoftware.b4a.BA.raiseEvent2(BA.java:91)
at de.awtrix.webstats.innerInitialize(webstats.java:22)
at de.awtrix.webstats._initialize(webstats.java:195)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at anywheresoftware.b4j.object.JServlet.createInstance(JServlet.java:62)
at anywheresoftware.b4j.object.WebSocketModule$Adapter$ThreadHandler.run(WebSocketModule.java:178)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)

Then host status and matrix status were shown NULL

No Matrix on port /dev/ttyUSB0

No Matrix on port /dev/ttyUSB0

I edit the config:

const char *ssid = "xxx";
const char *password = "xxx";
char *awtrix_server = "xxx";

#define USB_CONNECTION
// #define MATRIX_MODEV2

/// LDR Config
#define LDR_RESISTOR 1000 //ohms
#define LDR_PIN A0
#define LDR_PHOTOCELL LightDependentResistor::GL5516

on server i set usb port equals /dev/ttyUSB0
but i got an error;
Thanks;

Why the random MQTT-ID?

Around Line 240 you generate a random ID for the MQTT-Connection. Why don't you use the ESP.getChipId() for the ID, so you can manage multiple AWTRIXes together and seperate, by pushing them in another subscription?

So far GREAT JOB and many THANKS.

Matrix is not connected

Hi lads

Is there anyone experienced this before? The awtrix host throwing this error message after a while always, even when the matrix is still connected and running. If I restart the matrix then its okay for a while again, then I get the same error. Anyone got a solution for this?

Frequent OutOfMemoryError

I'm using the latest docker from https://github.com/wHyEt/Awtrix2-Docker with auto-update on.

log

processing Crypto
4:42:04 PM      Updating Crypto
4:43:25 PM      Matrix connection Timeout!
4:43:25 PM      Connecting with WiFi
4:43:48 PM      Matrix has reconnected
4:46:23 PM      Matrix connection Timeout!
4:46:23 PM      Connecting with WiFi
main._appstart (java line: 358)
java.lang.RuntimeException: java.lang.OutOfMemoryError: Java heap space
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:120)
        at anywheresoftware.b4a.objects.Timer$TickTack$1.run(Timer.java:118)
        at anywheresoftware.b4a.keywords.SimpleMessageLoop.runMessageLoop(SimpleMessageLoop.java:30)
        at anywheresoftware.b4a.StandardBA.startMessageLoop(StandardBA.java:26)
        at anywheresoftware.b4a.keywords.Common.StartMessageLoop(Common.java:153)
        at de.awtrix.main._appstart(main.java:358)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:91)
        at anywheresoftware.b4a.BA.raiseEvent(BA.java:78)
        at de.awtrix.main.main(main.java:28)
Caused by: java.lang.OutOfMemoryError: Java heap space
        at sun.nio.ch.EPollArrayWrapper.<init>(EPollArrayWrapper.java:120)
        at sun.nio.ch.EPollSelectorImpl.<init>(EPollSelectorImpl.java:69)
        at sun.nio.ch.EPollSelectorProvider.openSelector(EPollSelectorProvider.java:36)
        at io.netty.channel.nio.NioEventLoop.openSelector(NioEventLoop.java:126)
        at io.netty.channel.nio.NioEventLoop.<init>(NioEventLoop.java:120)
        at io.netty.channel.nio.NioEventLoopGroup.newChild(NioEventLoopGroup.java:87)
        at io.netty.util.concurrent.MultithreadEventExecutorGroup.<init>(MultithreadEventExecutorGroup.java:64)
        at io.netty.channel.MultithreadEventLoopGroup.<init>(MultithreadEventLoopGroup.java:49)
        at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:61)
        at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:52)
        at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:44)
        at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:36)
        at org.eclipse.moquette.server.netty.NettyAcceptor.initialize(NettyAcceptor.java:102)
        at org.eclipse.moquette.server.Server.startServer(Server.java:96)
        at anywheresoftware.b4j.objects.MqttBroker.Start(MqttBroker.java:73)
        at de.awtrix.matrix._connect(matrix.java:621)
        at de.awtrix.matrix._getinfotimer_tick(matrix.java:2022)
        at sun.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:91)
        at anywheresoftware.b4a.objects.Timer$TickTack$1.run(Timer.java:118)
        at anywheresoftware.b4a.keywords.SimpleMessageLoop.runMessageLoop(SimpleMessageLoop.java:30)
        at anywheresoftware.b4a.StandardBA.startMessageLoop(StandardBA.java:26)
        at anywheresoftware.b4a.keywords.Common.StartMessageLoop(Common.java:153)
        at de.awtrix.main._appstart(main.java:358)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:91)
        at anywheresoftware.b4a.BA.raiseEvent(BA.java:78)

main.main (java line: 28)
java.lang.RuntimeException: java.lang.RuntimeException: java.lang.OutOfMemoryError: Java heap space
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:120)
        at anywheresoftware.b4a.BA.raiseEvent(BA.java:78)
        at de.awtrix.main.main(main.java:28)
Caused by: java.lang.RuntimeException: java.lang.OutOfMemoryError: Java heap space
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:120)
        at anywheresoftware.b4a.objects.Timer$TickTack$1.run(Timer.java:118)
        at anywheresoftware.b4a.keywords.SimpleMessageLoop.runMessageLoop(SimpleMessageLoop.java:30)
        at anywheresoftware.b4a.StandardBA.startMessageLoop(StandardBA.java:26)
        at anywheresoftware.b4a.keywords.Common.StartMessageLoop(Common.java:153)
        at de.awtrix.main._appstart(main.java:358)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:91)
        ... 2 more
Caused by: java.lang.OutOfMemoryError: Java heap space
        at sun.nio.ch.EPollArrayWrapper.<init>(EPollArrayWrapper.java:120)
        at sun.nio.ch.EPollSelectorImpl.<init>(EPollSelectorImpl.java:69)
        at sun.nio.ch.EPollSelectorProvider.openSelector(EPollSelectorProvider.java:36)
        at io.netty.channel.nio.NioEventLoop.openSelector(NioEventLoop.java:126)
        at io.netty.channel.nio.NioEventLoop.<init>(NioEventLoop.java:120)
        at io.netty.channel.nio.NioEventLoopGroup.newChild(NioEventLoopGroup.java:87)
        at io.netty.util.concurrent.MultithreadEventExecutorGroup.<init>(MultithreadEventExecutorGroup.java:64)
        at io.netty.channel.MultithreadEventLoopGroup.<init>(MultithreadEventLoopGroup.java:49)
        at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:61)
        at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:52)
        at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:44)
        at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:36)
        at org.eclipse.moquette.server.netty.NettyAcceptor.initialize(NettyAcceptor.java:102)
        at org.eclipse.moquette.server.Server.startServer(Server.java:96)
        at anywheresoftware.b4j.objects.MqttBroker.Start(MqttBroker.java:73)
        at de.awtrix.matrix._connect(matrix.java:621)
        at de.awtrix.matrix._getinfotimer_tick(matrix.java:2022)
        at sun.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:91)
        at anywheresoftware.b4a.objects.Timer$TickTack$1.run(Timer.java:118)
        at anywheresoftware.b4a.keywords.SimpleMessageLoop.runMessageLoop(SimpleMessageLoop.java:30)
        at anywheresoftware.b4a.StandardBA.startMessageLoop(StandardBA.java:26)
        at anywheresoftware.b4a.keywords.Common.StartMessageLoop(Common.java:153)
        at de.awtrix.main._appstart(main.java:358)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:91)
        at anywheresoftware.b4a.BA.raiseEvent(BA.java:78)

Crashreport-01-16-1650.txt

java.lang.RuntimeException: java.lang.OutOfMemoryError: Java heap space
java.lang.RuntimeException: java.lang.OutOfMemoryError: Java heap space
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:120)
        at anywheresoftware.b4a.objects.Timer$TickTack$1.run(Timer.java:118)
        at anywheresoftware.b4a.keywords.SimpleMessageLoop.runMessageLoop(SimpleMessageLoop.java:30)
        at anywheresoftware.b4a.StandardBA.startMessageLoop(StandardBA.java:26)
        at anywheresoftware.b4a.keywords.Common.StartMessageLoop(Common.java:153)
        at de.awtrix.main._appstart(main.java:358)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:91)
        at anywheresoftware.b4a.BA.raiseEvent(BA.java:78)
        at de.awtrix.main.main(main.java:28)
Caused by: java.lang.OutOfMemoryError: Java heap space
        at sun.nio.ch.EPollArrayWrapper.<init>(EPollArrayWrapper.java:120)
        at sun.nio.ch.EPollSelectorImpl.<init>(EPollSelectorImpl.java:69)
        at sun.nio.ch.EPollSelectorProvider.openSelector(EPollSelectorProvider.java:36)
        at io.netty.channel.nio.NioEventLoop.openSelector(NioEventLoop.java:126)
        at io.netty.channel.nio.NioEventLoop.<init>(NioEventLoop.java:120)
        at io.netty.channel.nio.NioEventLoopGroup.newChild(NioEventLoopGroup.java:87)
        at io.netty.util.concurrent.MultithreadEventExecutorGroup.<init>(MultithreadEventExecutorGroup.java:64)
        at io.netty.channel.MultithreadEventLoopGroup.<init>(MultithreadEventLoopGroup.java:49)
        at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:61)
        at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:52)
        at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:44)
        at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:36)
        at org.eclipse.moquette.server.netty.NettyAcceptor.initialize(NettyAcceptor.java:102)
        at org.eclipse.moquette.server.Server.startServer(Server.java:96)
        at anywheresoftware.b4j.objects.MqttBroker.Start(MqttBroker.java:73)
        at de.awtrix.matrix._connect(matrix.java:621)
        at de.awtrix.matrix._getinfotimer_tick(matrix.java:2022)
        at sun.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:91)
        at anywheresoftware.b4a.objects.Timer$TickTack$1.run(Timer.java:118)
        at anywheresoftware.b4a.keywords.SimpleMessageLoop.runMessageLoop(SimpleMessageLoop.java:30)
        at anywheresoftware.b4a.StandardBA.startMessageLoop(StandardBA.java:26)
        at anywheresoftware.b4a.keywords.Common.StartMessageLoop(Common.java:153)
        at de.awtrix.main._appstart(main.java:358)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:91)
        at anywheresoftware.b4a.BA.raiseEvent(BA.java:78)

Can you publish a source code that can be compiled with Arduino instead of vscode

I successfully compiled this application after installing the appropriate library with version 1.8.12 Arduino. Several libraries of neomatrix can not use the latest version, otherwise they can't be compiled. I have been struggling for a long time. Strangely, the LED light is not on. Can you upgrade the library files related to led in the next development. But I burn it https://blueforcer.de/awtrix/stable/firmware.bin The firmware works properly. I even suspect that the compiled firmware you released is not this code

Couldn't save the config to File

I installed the latest beta on my Wemos D1 Mini and I reset the controller. I tried to configure the controller and saw that the controller did not save the IP address of the server. That's why I expanded the size of the SPIFFS memory to 2M in the platformio.ini. That solved my Issue.

build_flags = -w -Wl,-Teagle.flash.4m2m.ld -DMQTT_MAX_PACKET_SIZE=3000

Shows Host-IP:0.0.0.0:7001 and doesn't connect

Hello,
I update my awtrix only rarely but today I did.
After controller update triggered by host webgui, the awtrix connects to the WIFI, then shows Host-IP:0.0.0.0:7001 and then Host ->
Then I flashed the latest firmware by esptool and behaviour is still the same.
Then I switched off my WLAN and reconfigured the Controller in Hotspot mode. After next start, it showed the described behaviour again (Host-IP:0.0.0.0:7001)
I tried this several times now. No change. It doesn't store the Host IP somehow.

Any help would be highly appreciated.
Best regards
Ralf

Impossible to connect controler - getting stuck on "saving setings"

Hello,
I have tried multiple times to connect my controller.
I enter all the wifi information router, password, host ip and save.
It stays to the next screen where is says saving wifi and that's all....
it never really connects.
I reflashed the ESP, restarted the whole process but it does not work.
my host is hosted on internet but accessible from my home network.
Is this an issue?
Thanks

I thought this was because i didn't open port 7001 on the host but no luck. I opened port 7000/7001 and it does not work

The page gets stuck on this message and nothing happens next:

"Saving Settings
Trying to connect Matrix Controller to network.
If it fails reconnect to Hotspot to try again"

Can't connect to host: Illegal character 0x10 in state=START for buffer HeapByteBuffer

Trying with a new setup of awtrix, but expericing the problem of no connection to host.
Host is on a Linux server, with latest version from https://blueforcer.de/awtrix/awtrix.sh
Client matrix is also using the latest commit.

Client stucks at Host connection stage, while host side seems already starting handling.
In status log, it keeps printing such error message:

Illegal character 0x10 in state=START for buffer HeapByteBuffer@12435bb6[p=1,l=34,c=8192,r=33]={\x10<<< \x00\x04MQTT\x04\x02\x00\x0f\x00\x14AWTR...XController-530>>>6ate: Sun, 26 Dec...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}

Any idea what could go wrong?

Controller cannot connect to host due to expired blueforcer.de ssl certificate.

As of a few minutes ago, the Awtrix controller cannot connect to the Awtrix host due to an expired certificate. This is the error message I see in console. Running host in docker (image via whyet/awtrix2).

Error message:
awtrix | Connecting to blueforcer.de (213.136.87.88:443)
awtrix | ssl_client: blueforcer.de: certificate verification failed: certificate has expired

Having the host fail due to an expired certificate is bad but not being able to run Awtrix without being able to connect to blueforcer.de is worse.

Trying to connect 2 awtrix to one host

Hi, i use a big and a midi size awtrixes and i use a single host. Can we use more than one awtrix with one host?

If i connect only one, it works well. When i connect both of them, they sorta work but if i activate "auto brightness", both clocks change brightness continuously. When i check the "status of the matrix" i either see the big awtrix or the midi one, not both, and they change continuously according to whichever is updated last.

So, the question remains, can i use more than one awtrix with a single host??

awtrix api bug?

Every time when I use python to call the api, the call ends, awtrix will freeze, and then keep checking the host...

This is my python code:

import requests
import json

url = 'http://api.openweathermap.org/data/2.5/weather'
data = {
'units': 'metric',
'id': 'xxxxx',
'appid': 'xxxxxxxxxxxxxxx'
}
response = requests.get(url, params=data)
content = json.loads(response.text)
types = content['weather'][0]['main']
url1 = 'http://x.x.x.x:7000/api/v3/notify'
data = {
"name": "weather",
"force": True,
"icon": 433,
"moveIcon": False,
"repeat": 1,
"scrollSpeed": 0,
"text": types,
"color": [
0,
255,
0
]
}
response = requests.post(url1, json=data)

Support for 44 x 11 matrix

Hello,
i own a 44 x 11 (WS2812B based) led matrix. Is there any support for matrices (not tiled) other than the 32 x 8 ones?
Basically I would be fine with changing the code on my own. What is the preferred tool chain to build the firmware.bin?

Thx in advance and stay healthy.

about the new version

  1. what's the server login password?
  2. what's the reason that my LED is lighting Host -> since I flash the .bin

thank you

PCB available?

Will there be a PCB provided, containing all the sensors and etc.?

Boot loop after uploading a compiled binary

Hi,

I am not sure if I am the only one here, I compile from source using platform.io (after taking out the include String.h in Menucontrol.cpp, otherwise it will not compile). Uploaded firmware.bin to an nodemcu v1, (tried using both platformio and cli) and now it is in a boot loop with:

rst cause:2, boot mode:(3,7)

Any idea?

Bench

Addition info: I try the same board with the pre-compile binary and its works.

please fix docker images

My system is ubuntu ports in the raspberrypi, the docker images can not support it ,please fix it,okay?

AWTRIX HOST IP SET FAILED

Hello,

Every time I configure wifi and HOST IP in this step, wifi ap can be set successfully, but HOST IP configuration fails, HOST IP is always the default value 0.0.0.0.

Thank you.

24a1a8532b83a3831cf4f5c966b105b

Zero-size awtrix.json file may cause crash

platform = [email protected]

module = ESP-12F

In setup() function

File configFile = LittleFS.open("/awtrix.json", "r");
if (configFile)
{
    size_t size = configFile.size();
    // Allocate a buffer to store contents of the file.
    std::unique_ptr<char[]> buf(new char[size]);
    configFile.readBytes(buf.get(), size);
    DynamicJsonBuffer jsonBuffer;
    JsonObject &json = jsonBuffer.parseObject(buf.get());
    if (json.success())

If /awtrix.json is newly add, its size will be zero.Then buf will be buf(new char[0]).
In fuction jsonBuffer.parseObject(buf.get());, it will read address 0x0, causes Exception (28) crash

Sometimes AWTRIX got stuck and no display

Sometimes AWTRIX got stuck and no display.

When I checked log, it shows updating and then following with NPE.

22:34:17 updating Animations 22:34:17 updating Countdown 22:34:19 updating Moon 22:34:19 updating News 22:34:22 updating OpenWeather java.lang.NullPointerException at anywheresoftware.b4j.object.WebSocketModule$Adapter$ThreadHandler.run(WebSocketModule.java:191) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)

AWTRIX version
01619

Not sure whether it is a known issue.

Led borad red color bias

my led board will displayed pink when it set up with(255,255,255)
how could I set a red bias in somewhere of the controller code?
thx : )

Cannot build on esp8266 Arduino

FastLED fail to compile with following errors:

Processing nodemcuv2 (framework: arduino; platform: espressif8266; board: d1_mini)
---------------------------------------------------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif8266/d1_mini.html
PLATFORM: Espressif 8266 > WeMos D1 R2 and mini
HARDWARE: ESP8266 80MHz 80KB RAM (4MB Flash)
Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF MODES: FINDER(chain) COMPATIBILITY(soft)
Collected 38 compatible libraries
Scanning dependencies...
Dependency Graph
|-- <SPI> 1.0
|-- <ArduinoOTA>
|   |-- <ESP8266WiFi> 1.0
|   |-- <ESP8266mDNS> 1.2
|   |   |-- <ESP8266WiFi> 1.0
|-- <Wire> 1.0
|-- <FastLED> 3.2.6
|   |-- <EspSoftwareSerial> 5.0.4
|-- <ESP8266WiFi> 1.0
|-- <LDR>
|-- <PubSubClient> 2.7
|-- <DFPlayerMini_Fast>
|-- <EspSoftwareSerial> 5.0.4
|-- <FastLED NeoMatrix> 1.0
|   |-- <Adafruit GFX Library> 1.2.3
|   |   |-- <SPI> 1.0
|   |-- <FastLED> 3.2.6
|   |   |-- <EspSoftwareSerial> 5.0.4
|-- <ArduinoJson> 5.13.4
|-- <SparkFun APDS9960 RGB and Gesture Sensor> 1.4.2
|   |-- <Wire> 1.0
|-- <Adafruit GFX Library> 1.2.3
|   |-- <SPI> 1.0
Compiling .pioenvs/nodemcuv2/lib27a/FastLED/FastLED.cpp.o
Compiling .pioenvs/nodemcuv2/lib27a/FastLED/bitswap.cpp.o
Compiling .pioenvs/nodemcuv2/lib27a/FastLED/colorpalettes.cpp.o
Compiling .pioenvs/nodemcuv2/lib27a/FastLED/colorutils.cpp.o
Compiling .pioenvs/nodemcuv2/lib27a/FastLED/hsv2rgb.cpp.o
Compiling .pioenvs/nodemcuv2/lib27a/FastLED/lib8tion.cpp.o
Compiling .pioenvs/nodemcuv2/lib27a/FastLED/noise.cpp.o
Compiling .pioenvs/nodemcuv2/lib27a/FastLED/power_mgt.cpp.o
In file included from lib/FastLED/led_sysdefs.h:43:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/FastLED.cpp:2:
/Users/LockonStratos/.platformio/packages/framework-arduinoespressif8266/cores/esp8266/Arduino.h:191:14: error: conflicting declaration 'typedef bool boolean'
typedef bool boolean;
^
In file included from lib/FastLED/led_sysdefs.h:27:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/FastLED.cpp:2:
lib/FastLED/platforms/esp/8266/led_sysdefs_esp8266.h:15:17: error: 'boolean' has a previous declaration as 'typedef uint8_t boolean'
typedef uint8_t boolean;
^
In file included from lib/FastLED/led_sysdefs.h:43:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/bitswap.cpp:2:
/Users/LockonStratos/.platformio/packages/framework-arduinoespressif8266/cores/esp8266/Arduino.h:191:14: error: conflicting declaration 'typedef bool boolean'
typedef bool boolean;
^
In file included from lib/FastLED/led_sysdefs.h:27:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/bitswap.cpp:2:
lib/FastLED/platforms/esp/8266/led_sysdefs_esp8266.h:15:17: error: 'boolean' has a previous declaration as 'typedef uint8_t boolean'
typedef uint8_t boolean;
^
In file included from lib/FastLED/led_sysdefs.h:43:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/colorpalettes.cpp:4:
/Users/LockonStratos/.platformio/packages/framework-arduinoespressif8266/cores/esp8266/Arduino.h:191:14: error: conflicting declaration 'typedef bool boolean'
typedef bool boolean;
^
In file included from lib/FastLED/led_sysdefs.h:27:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/colorpalettes.cpp:4:
lib/FastLED/platforms/esp/8266/led_sysdefs_esp8266.h:15:17: error: 'boolean' has a previous declaration as 'typedef uint8_t boolean'
typedef uint8_t boolean;
^
In file included from lib/FastLED/led_sysdefs.h:43:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/colorutils.cpp:7:
/Users/LockonStratos/.platformio/packages/framework-arduinoespressif8266/cores/esp8266/Arduino.h:191:14: error: conflicting declaration 'typedef bool boolean'
typedef bool boolean;
^
In file included from lib/FastLED/led_sysdefs.h:27:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/colorutils.cpp:7:
lib/FastLED/platforms/esp/8266/led_sysdefs_esp8266.h:15:17: error: 'boolean' has a previous declaration as 'typedef uint8_t boolean'
typedef uint8_t boolean;
^
In file included from lib/FastLED/led_sysdefs.h:43:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/hsv2rgb.cpp:4:
/Users/LockonStratos/.platformio/packages/framework-arduinoespressif8266/cores/esp8266/Arduino.h:191:14: error: conflicting declaration 'typedef bool boolean'
typedef bool boolean;
^
In file included from lib/FastLED/led_sysdefs.h:27:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/hsv2rgb.cpp:4:
lib/FastLED/platforms/esp/8266/led_sysdefs_esp8266.h:15:17: error: 'boolean' has a previous declaration as 'typedef uint8_t boolean'
typedef uint8_t boolean;
^
In file included from lib/FastLED/led_sysdefs.h:43:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/lib8tion.cpp:3:
/Users/LockonStratos/.platformio/packages/framework-arduinoespressif8266/cores/esp8266/Arduino.h:191:14: error: conflicting declaration 'typedef bool boolean'
typedef bool boolean;
^
In file included from lib/FastLED/led_sysdefs.h:27:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/lib8tion.cpp:3:
lib/FastLED/platforms/esp/8266/led_sysdefs_esp8266.h:15:17: error: 'boolean' has a previous declaration as 'typedef uint8_t boolean'
typedef uint8_t boolean;
^
In file included from lib/FastLED/led_sysdefs.h:43:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/noise.cpp:2:
/Users/LockonStratos/.platformio/packages/framework-arduinoespressif8266/cores/esp8266/Arduino.h:191:14: error: conflicting declaration 'typedef bool boolean'
typedef bool boolean;
^
In file included from lib/FastLED/led_sysdefs.h:27:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/noise.cpp:2:
lib/FastLED/platforms/esp/8266/led_sysdefs_esp8266.h:15:17: error: 'boolean' has a previous declaration as 'typedef uint8_t boolean'
typedef uint8_t boolean;
^
In file included from lib/FastLED/led_sysdefs.h:43:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/power_mgt.cpp:2:
/Users/LockonStratos/.platformio/packages/framework-arduinoespressif8266/cores/esp8266/Arduino.h:191:14: error: conflicting declaration 'typedef bool boolean'
typedef bool boolean;
^
In file included from lib/FastLED/led_sysdefs.h:27:0,
from lib/FastLED/FastLED.h:34,
from lib/FastLED/power_mgt.cpp:2:
lib/FastLED/platforms/esp/8266/led_sysdefs_esp8266.h:15:17: error: 'boolean' has a previous declaration as 'typedef uint8_t boolean'
typedef uint8_t boolean;
^
*** [.pioenvs/nodemcuv2/lib27a/FastLED/FastLED.cpp.o] Error 1
*** [.pioenvs/nodemcuv2/lib27a/FastLED/bitswap.cpp.o] Error 1
*** [.pioenvs/nodemcuv2/lib27a/FastLED/colorpalettes.cpp.o] Error 1
*** [.pioenvs/nodemcuv2/lib27a/FastLED/lib8tion.cpp.o] Error 1
*** [.pioenvs/nodemcuv2/lib27a/FastLED/hsv2rgb.cpp.o] Error 1
*** [.pioenvs/nodemcuv2/lib27a/FastLED/colorutils.cpp.o] Error 1
*** [.pioenvs/nodemcuv2/lib27a/FastLED/power_mgt.cpp.o] Error 1
*** [.pioenvs/nodemcuv2/lib27a/FastLED/noise.cpp.o] Error 1
================================================ [ERROR] Took 2.40 seconds ================================================
The terminal process terminated with exit code: 1

And a workaround was posted here by @CRCinAU link, commenting out a single line makes everything work.

File: path-to-project/platforms/esp/8266/led_sysdefs_esp8266.h
Line: 15
Change to: //typedef uint8_t boolean;

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.