Code Monkey home page Code Monkey logo

teddycloud's People

Contributors

ceicke avatar g3gg0 avatar hoyohayo avatar ivanchubb avatar kelgor77 avatar m-sauer avatar manuelm avatar memphiz avatar ninharp avatar pepe82sh avatar scilor avatar skalnet avatar xsnoopy 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

teddycloud's Issues

reverse handler not responding properly

when issuing a /reverse/v1/time, there is some extra junk at the end of the response.
looks like a chunked encoding 0-length.

GET /reverse/v1/time HTTP/1.1
user-agent: got (https://github.com/sindresorhus/got)
connection: keep-alive
Host: localhost

HTTP/1.1 200 This is fine
Server: openresty
Date: Thu, 03 Aug 2023 23:11:42 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 10
Connection: keep-alive
cache-control: max-age=0, private, must-revalidate
x-request-id: F3gCZzGidbi4gMACVFQB

16911043020

0

while the cloud server responds with:

GET /v1/time HTTP/1.1
user-agent: got (https://github.com/sindresorhus/got)
connection: keep-alive
Host: localhost

HTTP/1.1 200 OK
Server: openresty
Date: Thu, 03 Aug 2023 23:07:49 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 10
Connection: keep-alive
cache-control: max-age=0, private, must-revalidate
x-request-id: F3gCMOAD24aExZgr0y4S

1691104069

Slow unstable connection to box

The initial connection to the box usually is slow compared to the original cloud. Also, of you are producing a lot of data flow, for example by putting sever Tonies in a short time onto the box, the connection gets broken and unstable.

SEGV - content_json_update_model

TeddyCloud vX.X.X (727d387) - 2023-11-07 19:46:31 +0000 linux-x86_64

if someone needs this information ... otherwise you can close this report

`src/contentJson.c:258:33: runtime error: member access within null pointer of type 'struct toniesJson_item_t'
AddressSanitizer:DEADLYSIGNAL

==9==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000008 (pc 0x55907350af9c bp 0x000000000000 sp 0x7fe2719fc5b0 T2)
==9==The signal is caused by a READ memory access.
==9==Hint: address points to the zero page.
#0 0x55907350af9c in content_json_update_model src/contentJson.c:258
#1 0x559073522d5f in getTonieInfo src/handler.c:332
#2 0x559073534d65 in handleApiFileIndex src/handler_api.c:525
#3 0x5590736e09b1 in httpConnectionTask src/cyclone/cyclone_tcp/http/http_server.c:546
#4 0x7fe2758e9ac2 (/lib/x86_64-linux-gnu/libc.so.6+0x94ac2)
#5 0x7fe27597abf3 in __clone (/lib/x86_64-linux-gnu/libc.so.6+0x125bf3)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV src/contentJson.c:258 in content_json_update_model
Thread T2 created by T0 here:
#0 0x55907345af15 in __interceptor_pthread_create (/usr/local/bin/teddycloud+0x59af15)
#1 0x55907394c5c3 in osCreateTask src/cyclone/common/os_port_posix.c:87

==9==ABORTING
`

Certificate Generation Fails in Docker Container

I am encountering an issue with certificate generation when using the TeddyCloud v0.3.2 release. This issue also appears to persist in the v0.3.1 release. I have tested this on a fresh Docker installation on both x64 Ubuntu 22.04 and Windows 11, and the problem remains consistent.

Environment:
Operating System: Ubuntu 22.04 (x64) and Windows 11
TeddyCloud Version: v0.3.2 (also confirmed in v0.3.1)

Steps to Reproduce:
Install Docker on the respective operating system.
Pull the TeddyCloud Docker image (v0.3.2).
Run the TeddyCloud container

Expected Behavior:
The TeddyCloud container should start successfully, and the Server SSL certificates should be generated automatically as mentioned in the project's documentation. https://toniebox-reverse-engineering.github.io/docs/tools/teddycloud/ Point1.2.1
I didn't add the Client Certificates before as this is the next step in the Documentation.

Actual Behavior:
When I run the container, I encounter the following errors in the log:

2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | ================================================================= 2023-12-08 12:48:29 teddycloud | ==9==ERROR: LeakSanitizer: detected memory leaks 2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | Direct leak of 16384 byte(s) in 2 object(s) allocated from: 2023-12-08 12:48:29 teddycloud | #0 0x560bf3eb54e7 in malloc (/usr/local/bin/teddycloud+0x5fc4e7) 2023-12-08 12:48:29 teddycloud | #1 0x560bf3efd8ce in cert_generate_signed src/cert.c:188 2023-12-08 12:48:29 teddycloud | #2 0x560bf4367c1f (/usr/local/bin/teddycloud+0xaaec1f) 2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | Direct leak of 2384 byte(s) in 2 object(s) allocated from: 2023-12-08 12:48:29 teddycloud | #0 0x560bf3eb54e7 in malloc (/usr/local/bin/teddycloud+0x5fc4e7) 2023-12-08 12:48:29 teddycloud | #1 0x560bf3efb796 in cert_get_rsa_priv src/cert.c:63 2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | Direct leak of 2286 byte(s) in 2 object(s) allocated from: 2023-12-08 12:48:29 teddycloud | #0 0x560bf3eb54e7 in malloc (/usr/local/bin/teddycloud+0x5fc4e7) 2023-12-08 12:48:29 teddycloud | #1 0x560bf3efd9f8 in cert_generate_signed src/cert.c:208 2023-12-08 12:48:29 teddycloud | #2 0x560bf4367c1f (/usr/local/bin/teddycloud+0xaaec1f) 2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | Direct leak of 576 byte(s) in 24 object(s) allocated from: 2023-12-08 12:48:29 teddycloud | #0 0x560bf3eb54e7 in malloc (/usr/local/bin/teddycloud+0x5fc4e7) 2023-12-08 12:48:29 teddycloud | #1 0x560bf3f6d6b6 in mqtt_topic_str src/mqtt.c:86 2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | Direct leak of 354 byte(s) in 12 object(s) allocated from: 2023-12-08 12:48:29 teddycloud | #0 0x560bf3eb54e7 in malloc (/usr/local/bin/teddycloud+0x5fc4e7) 2023-12-08 12:48:29 teddycloud | #1 0x560bf3f81cb9 in custom_asprintf src/server_helpers.c:39 2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | Direct leak of 162 byte(s) in 12 object(s) allocated from: 2023-12-08 12:48:29 teddycloud | #0 0x560bf3eb54e7 in malloc (/usr/local/bin/teddycloud+0x5fc4e7) 2023-12-08 12:48:29 teddycloud | #1 0x560bf3f6d52e in mqtt_settingname_clean src/mqtt.c:58 2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | SUMMARY: AddressSanitizer: 22146 byte(s) leaked in 54 allocation(s). 2023-12-08 12:47:42 teddycloud | % Total % Received % Xferd Average Speed Time Time Time Current 2023-12-08 12:47:42 teddycloud | Dload Upload Total Spent Left Speed 100 3491k 100 3491k 0 0 7142k 0 --:--:-- --:--:-- --:--:-- 7139k 2023-12-08 12:47:44 teddycloud | TeddyCloud v0.3.2 (50869be) - 2023-12-08 08:09:28 +0000 linux-x86_64 2023-12-08 12:47:44 teddycloud | 2023-12-08 12:47:44 teddycloud | INFO |settings.c:0622:settings_load_ovl| Load settings from config/config.overlay.ini 2023-12-08 12:47:44 teddycloud | INFO |settings.c:0622:settings_load_ovl| Load settings from config/config.ini 2023-12-08 12:47:44 teddycloud | ERROR|tls_adapter.c:0193:read_certificate| Failed to open 'certs/server/ca-root.pem' for cert type detection 2023-12-08 12:47:44 teddycloud | ERROR|tls_adapter.c:0375:load_cert| Loading cert 'certs/server/ca-root.pem' failed 2023-12-08 12:47:44 teddycloud | INFO |settings.c:1227:settings_load_certs_id| ******************************************** 2023-12-08 12:47:44 teddycloud | INFO |settings.c:1228:settings_load_certs_id| No certificates found. Generating. 2023-12-08 12:47:44 teddycloud | INFO |settings.c:1229:settings_load_certs_id| This will take some time... 2023-12-08 12:47:44 teddycloud | INFO |settings.c:1230:settings_load_certs_id| ******************************************** 2023-12-08 12:47:44 teddycloud | INFO |cert.c:0396:cert_generate_default| Generating CA certificate... 2023-12-08 12:47:44 teddycloud | INFO |cert.c:0042:cert_generate_rsa| Generating RSA Key... (slow!) 2023-12-08 12:47:44 teddycloud | cyclone/cyclone_crypto/cipher/aes.c:260:47: runtime error: left shift of 137 by 24 places cannot be represented in type 'int' 2023-12-08 12:47:44 teddycloud | cyclone/cyclone_crypto/cipher/aes.c:268:55: runtime error: left shift of 165 by 24 places cannot be represented in type 'int' 2023-12-08 12:47:44 teddycloud | cyclone/cyclone_crypto/cipher/aes.c:400:34: runtime error: left shift of 132 by 24 places cannot be represented in type 'int' 2023-12-08 12:47:44 teddycloud | cyclone/cyclone_crypto/cipher/aes.c:385:34: runtime error: left shift of 194 by 24 places cannot be represented in type 'int' 2023-12-08 12:47:44 teddycloud | cyclone/cyclone_crypto/cipher/aes.c:390:34: runtime error: left shift of 130 by 24 places cannot be represented in type 'int' 2023-12-08 12:47:44 teddycloud | cyclone/cyclone_crypto/cipher/aes.c:395:34: runtime error: left shift of 168 by 24 places cannot be represented in type 'int' 2023-12-08 12:48:14 teddycloud | src/cyclone/cyclone_crypto/mpi.c:792:48: runtime error: left shift of 150 by 24 places cannot be represented in type 'int' 2023-12-08 12:48:14 teddycloud | ERROR|cert.c:0221:cert_generate_signed| fsOpenFile failed 2023-12-08 12:48:14 teddycloud | ERROR|cert.c:0399:cert_generate_default| cert_generate_signed failed 2023-12-08 12:48:14 teddycloud | INFO |settings.c:1232:settings_load_certs_id| ******************************************** 2023-12-08 12:48:14 teddycloud | INFO |settings.c:1233:settings_load_certs_id| FINISHED 2023-12-08 12:48:14 teddycloud | INFO |settings.c:1234:settings_load_certs_id| ******************************************** 2023-12-08 12:48:14 teddycloud | INFO |settings.c:0622:settings_load_ovl| Load settings from config/config.overlay.ini 2023-12-08 12:48:14 teddycloud | INFO |tls_adapter.c:0387:tls_adapter_init| Loading certificates... 2023-12-08 12:48:14 teddycloud | ERROR|tls_adapter.c:0193:read_certificate| Failed to open 'certs/server/ca-root.pem' for cert type detection 2023-12-08 12:48:14 teddycloud | ERROR|tls_adapter.c:0375:load_cert| Loading cert 'certs/server/ca-root.pem' failed 2023-12-08 12:48:14 teddycloud | INFO |settings.c:1227:settings_load_certs_id| ******************************************** 2023-12-08 12:48:14 teddycloud | INFO |settings.c:1228:settings_load_certs_id| No certificates found. Generating. 2023-12-08 12:48:14 teddycloud | INFO |settings.c:1229:settings_load_certs_id| This will take some time... 2023-12-08 12:48:14 teddycloud | INFO |settings.c:1230:settings_load_certs_id| ******************************************** 2023-12-08 12:48:14 teddycloud | INFO |cert.c:0396:cert_generate_default| Generating CA certificate... 2023-12-08 12:48:14 teddycloud | INFO |cert.c:0042:cert_generate_rsa| Generating RSA Key... (slow!) 2023-12-08 12:48:29 teddycloud | ERROR|cert.c:0221:cert_generate_signed| fsOpenFile failed 2023-12-08 12:48:29 teddycloud | ERROR|cert.c:0399:cert_generate_default| cert_generate_signed failed 2023-12-08 12:48:29 teddycloud | INFO |settings.c:1232:settings_load_certs_id| ******************************************** 2023-12-08 12:48:29 teddycloud | INFO |settings.c:1233:settings_load_certs_id| FINISHED 2023-12-08 12:48:29 teddycloud | INFO |settings.c:1234:settings_load_certs_id| ******************************************** 2023-12-08 12:48:29 teddycloud | ERROR|server.c:0427:sanityCheckDir| Config item 'core.certdir' is set to 'certs/client' which was not found 2023-12-08 12:48:29 teddycloud | ERROR|server.c:0445:sanityChecks| Sanity checks failed, exiting 2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | ================================================================= 2023-12-08 12:48:29 teddycloud | ==9==ERROR: LeakSanitizer: detected memory leaks 2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | Direct leak of 16384 byte(s) in 2 object(s) allocated from: 2023-12-08 12:48:29 teddycloud | #0 0x560bf3eb54e7 in malloc (/usr/local/bin/teddycloud+0x5fc4e7) 2023-12-08 12:48:29 teddycloud | #1 0x560bf3efd8ce in cert_generate_signed src/cert.c:188 2023-12-08 12:48:29 teddycloud | #2 0x560bf4367c1f (/usr/local/bin/teddycloud+0xaaec1f) 2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | Direct leak of 2384 byte(s) in 2 object(s) allocated from: 2023-12-08 12:48:29 teddycloud | #0 0x560bf3eb54e7 in malloc (/usr/local/bin/teddycloud+0x5fc4e7) 2023-12-08 12:48:29 teddycloud | #1 0x560bf3efb796 in cert_get_rsa_priv src/cert.c:63 2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | Direct leak of 2286 byte(s) in 2 object(s) allocated from: 2023-12-08 12:48:29 teddycloud | #0 0x560bf3eb54e7 in malloc (/usr/local/bin/teddycloud+0x5fc4e7) 2023-12-08 12:48:29 teddycloud | #1 0x560bf3efd9f8 in cert_generate_signed src/cert.c:208 2023-12-08 12:48:29 teddycloud | #2 0x560bf4367c1f (/usr/local/bin/teddycloud+0xaaec1f) 2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | Direct leak of 576 byte(s) in 24 object(s) allocated from: 2023-12-08 12:48:29 teddycloud | #0 0x560bf3eb54e7 in malloc (/usr/local/bin/teddycloud+0x5fc4e7) 2023-12-08 12:48:29 teddycloud | #1 0x560bf3f6d6b6 in mqtt_topic_str src/mqtt.c:86 2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | Direct leak of 354 byte(s) in 12 object(s) allocated from: 2023-12-08 12:48:29 teddycloud | #0 0x560bf3eb54e7 in malloc (/usr/local/bin/teddycloud+0x5fc4e7) 2023-12-08 12:48:29 teddycloud | #1 0x560bf3f81cb9 in custom_asprintf src/server_helpers.c:39 2023-12-08 12:48:29 teddycloud | 2023-12-08 12:48:29 teddycloud | Direct leak of 162 byte(s) in 12 object(s) allocated from: 2023-12-08 12:48:29 teddycloud | #0 0x560bf3eb54e7 in malloc (/usr/local/bin/teddycloud+0x5fc4e7) 2023-12-08 12:48:29 teddycloud | #1 0x560bf3f6d52e in mqtt_settingname_clean src/mqtt.c:58 2023-12-08 12:48:29 teddycloud |

These errors indicate that the certificate generation process is encountering issues, particularly related to RSA key generation and file operations, even though it should be automated when using Docker.

RTNL / Prod - TLS / TLS+HTTP switch

TeddyCloud should be able to receive https and and raw binary TLS data over port 443.
The Toniebox communicates HTTPS for general API access and implements a one way logging framework via GRPC (Protobuf) over the same Port.

Websocket Support

Integrate websocket Support of the framework. As Alternative to SSE (SSE may be easier to implement)

Ex. for logging

FeatureRequest - Emulate TAG

possibility of Teddybench+proxmark3 to emulate an Tag by full UID+HASH

just send the correct cloud request by the entered UID :-)

Enhancement - add possibilty to enter UID OR rUID in json

{
"live": false,
"nocloud": true,
"source": "",
"skip_seconds": 0,
"cache": false,
"cloud_ruid": "",
"cloud_uid": "",
"cloud_auth": "",
"cloud_override": true,
"tonie_model": "",
"_version": 5
}

so users who only have UID do not need to reverse the UID to rUID by special tools. TC just use what it has

[Linux] Random segfaults after some time (and requests)

libpthread.so.0!__new_sem_post(sem_t * sem) (sem_post.c:36)
osReleaseSemaphore(OsSemaphore * semaphore) (/home/x/git/teddy_cloud/embedded/cyclone/common/os_port_posix.c:420)
httpListenerTask(void * param) (/home/x/git/teddy_cloud/embedded/cyclone/cyclone_tcp/http/http_server.c:331)
libpthread.so.0!start_thread(void * arg) (pthread_create.c:477)
libc.so.6!clone() (clone.S:95)

Setting up teddycloud

Hi,

first of all, what an awesome project!!
I already flashed the custom bootloader and configuration via ngCfg.json seems to work. (Tried waitForPress true/false).
As activeImg I set ofw2 and use altCa plus altUrl in this slot.
Now I started the teddycloud and copied the client certs into the dir inside of the docker plus the content of the Folder "CONTENT" on the SD card into the data/content/default folder. (I didnt see any 500304E0.json file but just a 500304E0 binary file.).
I set in my dns server the addresses of prod.revvox and rtnl.revvox accordingly and can access the webserver of the teddycloud.
But now when I start to play a bought tonie, the tonie just plays but no information shows up on the webserver.
My question now is, what should I expect? Do I use the setup correctly?

In case my setup works in the end, I would love to offer an easy to follow guide for setup.

Thank you in advance

Download tonies.json via teddyCloud directly

Currently the tonies.json is fetched on every start of the docker container. The teddyCloud executable itself is not able to update it itself.

So the download needs to be implemented into the executable and configurable via the config file.

Detect Box Chip

Detect if the box connected is a CC3200, CC3235 or ESP32 Variant

unstable download of taf files to toniebox - ERROR|handler_cloud.c:0451:handleCloudContent| >> file /teddycloud/data/content/www/CONTENT/xx/500304E0 not available or not send, error=220..

auch mit latest 'das herunterladen wurde leider unterbrochen'
(TeddyCloud v0.3.0 (bb25165) - 2023-10-29 18:02:34 +0100 linux-x86_64)

beim wiederholen ohne was zu ändern kommt danach die EULE
etwas warten, dann lädt die box neu herunter und fängt von vorne an den tonier zu spielen.


INFO |server.c:0563:server_init| 3 open HTTPS connections
INFO |server.c:0246:httpServerRequestCallback| UA=TB/xx SP/xx HW/1049144, FW=1620325289, SP=xx, HW=1049144
INFO |handler_cloud.c:0303:handleCloudContent|  >> client requested content for rUID xx500304e0, auth 0000000000000000000000000000000000000000000000000000000000000000
INFO |handler_cloud.c:0149:checkCustomTonie| Found possible custom tonie by password
INFO |handler_cloud.c:0310:handleCloudContent|  >> custom tonie detected, nothing forwarded
INFO |handler_cloud.c:0165:markCustomTonie| Marked custom tonie /teddycloud/data/content/www/CONTENT/xx/500304E0
INFO |handler_cloud.c:0440:handleCloudContent| Serve local content from /teddycloud/data/content/www/CONTENT/xx/500304E0
INFO |server.c:0563:server_init| 2 open HTTPS connections
INFO |handler_cloud.c:0038:handleCloudTime|  >> respond with current time
INFO |mqtt.c:0684:mqtt_init_box| Skipping client 'Toniebox' (cn: 'default')
INFO |handler_cloud.c:0038:handleCloudTime|  >> respond with current time
INFO |mqtt.c:0684:mqtt_init_box| Skipping client 'Toniebox' (cn: 'default')
INFO |handler_cloud.c:0038:handleCloudTime|  >> respond with current time
INFO |mqtt.c:0684:mqtt_init_box| Skipping client 'Toniebox' (cn: 'default')
ERROR|handler_cloud.c:0451:handleCloudContent|  >> file /teddycloud/data/content/www/CONTENT/xx/500304E0 not available or not send, error=220...
INFO |handler_cloud.c:0038:handleCloudTime|  >> respond with current time
INFO |mqtt.c:0684:mqtt_init_box| Skipping client 'Toniebox' (cn: 'default')
INFO |server.c:0563:server_init| 3 open HTTPS connections
INFO |handler_cloud.c:0038:handleCloudTime|  >> respond with current time
INFO |mqtt.c:0684:mqtt_init_box| Skipping client 'Toniebox' (cn: 'default')
INFO |server.c:0563:server_init| 2 open HTTPS connections
INFO |handler_cloud.c:0038:handleCloudTime|  >> respond with current time
INFO |mqtt.c:0684:mqtt_init_box| Skipping client 'Toniebox' (cn: 'default')
INFO |server.c:0563:server_init| 3 open HTTPS connections
INFO |server.c:0246:httpServerRequestCallback| UA=TB/xx SP/xx HW/1049144, FW=1620325289, SP=xx, HW=1049144
INFO |handler_cloud.c:0290:handleCloudContent|  >> client requested partial download
INFO |handler_cloud.c:0303:handleCloudContent|  >> client requested content for rUID xx500304e0, auth 0000000000000000000000000000000000000000000000000000000000000000
INFO |handler_cloud.c:0440:handleCloudContent| Serve local content from /teddycloud/data/content/www/CONTENT/xx/500304E0
INFO |handler_cloud.c:0038:handleCloudTime|  >> respond with current time
INFO |mqtt.c:0684:mqtt_init_box| Skipping client 'Toniebox' (cn: 'default')

Reintergrate ca.der Generation for teddyCloud ca

Currently, following conversion of the certificate is missing:

CA_CRT="certs/server/ca-root.pem"
CA_CRT_DER="certs/server/ca.der"

openssl x509 -inform PEM -outform DER -in ${CA_CRT} -out ${CA_CRT_DER}

HA Sensors (Autodiscovered) "ContentPicture" and "ContentAudioId" not working

HA Sensors (Autodiscovered) "ContentPicture" and "ContentAudioId" not working

Issues is present since a while, curenntly running:
TeddyCloud vX.X.X (1b5aa83) - 2023-10-01 18:33:27 +0000 linux-x86_64
running as Docker on Synology DS216+II in macvlan
(same version as Binary only on Ubuntu 22.04 has the same issue)

MQTT Exlporer shows the correct Values for the Entries
image

Home Assistant sadly shows "Content Audio ID" as 'unknown'
image

and the Image Entity "Content Picture" shows nothing
image

I was able to get this two Sensors working by adding them by hand into the HA configuration.yaml
configuration.yaml:
image

mqtt.yaml:
image

result:
image
On Top you see the Autodiscover Entry for "Content Picture" and on bottom the manuel added mqtt Image Entity

image
here the same for "Content Audio ID" (Top: Autodiscovery / Bottom: manuel added Sensor)

here at last the HA Log:
image
`Logger: homeassistant.components.mqtt.discovery
Source: components/mqtt/discovery.py:175
Integration: MQTT (documentation, issues)
First occurred: 08:42:59 (48 occurrences)
Last logged: 08:49:58

Unable to parse JSON LastCloudFreshnessCheckTime: '{"name": "LastCloudFreshnessCheckTime", "uniq_id": "teddyCloud_Box_C8FD19852BFD_LastCloudFreshnessCheckTime", "dev_cla": "timestamp", "avty_t": "teddyCloud/status", "stat_t": "teddyCloud/box/C8FD19852BFD/LastCloudFreshnessCheckTime", "dev": {"name": "teddyCloud Box Beere", "ids": "teddyCloud_Box_C8FD19852BFD", "cu": "http://192.168.178.26", "mf": "tonies", "mdl": "Toniebox", "via_device": "teddyCloud_Server", }}'
Unable to parse JSON LastCloudResetTime: '{"name": "LastCloudResetTime", "uniq_id": "teddyCloud_Box_C8FD19852BFD_LastCloudResetTime", "dev_cla": "timestamp", "avty_t": "teddyCloud/status", "stat_t": "teddyCloud/box/C8FD19852BFD/LastCloudResetTime", "dev": {"name": "teddyCloud Box Beere", "ids": "teddyCloud_Box_C8FD19852BFD", "cu": "http://192.168.178.26", "mf": "tonies", "mdl": "Toniebox", "via_device": "teddyCloud_Server", }}'
Unable to parse JSON ContentAudioId: '{"name": "Content Audio Id", "uniq_id": "teddyCloud_Box_C8FD19852BFD_ContentAudioId", "dev_cla": "timestamp", "avty_t": "teddyCloud/status", "stat_t": "teddyCloud/box/C8FD19852BFD/ContentAudioId", "dev": {"name": "teddyCloud Box Beere", "ids": "teddyCloud_Box_C8FD19852BFD", "cu": "http://192.168.178.26", "mf": "tonies", "mdl": "Toniebox", "via_device": "teddyCloud_Server", }}'
Unable to parse JSON ContentTitle: '{"name": "Content Title", "uniq_id": "teddyCloud_Box_C8FD19852BFD_ContentTitle", "avty_t": "teddyCloud/status", "stat_t": "teddyCloud/box/C8FD19852BFD/ContentTitle", "dev": {"name": "teddyCloud Box Beere", "ids": "teddyCloud_Box_C8FD19852BFD", "cu": "http://192.168.178.26", "mf": "tonies", "mdl": "Toniebox", "via_device": "teddyCloud_Server", }}'
Unable to parse JSON ContentPicture: '{"name": "Content Picture", "uniq_id": "teddyCloud_Box_C8FD19852BFD_ContentPicture", "avty_t": "teddyCloud/status", "url_t": "teddyCloud/box/C8FD19852BFD/ContentPicture", "dev": {"name": "teddyCloud Box Beere", "ids": "teddyCloud_Box_C8FD19852BFD", "cu": "http://192.168.178.26", "mf": "tonies", "mdl": "Toniebox", "via_device": "teddyCloud_Server", }}'`

Toniebox-ESP32 1.6.C 2022-04-27 Pinout

Hi,
I have the PCB version mentioned in the title. I tried to follow these instructions: "Please connect the jumper J100 (Boot) and reset the box to put it into the required mode. Connect your 3.3V UART to J103 (TxD, RxD, GND)." But I realized that the J103 is full of solder and used somehow. Additionally I have a J101 jumper and a J102 pinout for 6 pins. I wonder if this is a new esp32 PCB design? Or are these instructions still correct?

44564_llcrop
44567_llcrop

Sorry for the bad picture quality.

Use cJSON for Home Assistant

The current implementation uses raw string generation for the JSON needed for Home Assistant.
This should be replaced with cJSON.

Support different base/config directories

Short Long Standard Description
-d --datapath /usr/local/etc/teddyCloud Configuration data, like config and certs (unix)

On unix systems, we may start searching in /usr/local/etc/teddyCloud/ for it. If it is missing, we check the path relative to the executable and then the cwd (I or flip the last two, I don't know what's the usual way).

Show Title in the overview website

In the Content browser currently only the folder and the Date it was created. If I want to reassign a Tonie or check the file of a specific Tonie I need to click through all of them to find it.

Showing the Title directly in the overview (next to the date) would help in this scenario

Override noCloud Setting in <UID>.json for figurines

To get some Patches working in conjunction with teddycloud and boxine cloud (blockCheckRemove.310, noHide.308)
it would be nice to switch an original figurine to nocloud:false even if you removed the password.
It would be a compromise between usable alternative Tags and download of orig. figurines content from boxine.(excl. creative tonies)

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.