Coder Social home page Coder Social logo

duhow / wibox Goto Github PK

View Code? Open in Web Editor NEW
33.0 14.0 5.0 977 KB

Fermax Wi-Box managed locally

License: GNU General Public License v3.0

HTML 7.97% Shell 85.21% Makefile 2.70% Dockerfile 4.11%
fermax wi-box wibox sofia iot-device hardware intercom goke dvrip xmeye

wibox's Introduction

Fermax Wi-Box

This repository contains hardware and software information from Fermax Wi-Box device, and contains custom scripts and files to patch and use the device locally, instead of using Chinese cloud.

  • Disable Sofia (original program) at boot, can be re-enabled
  • Allow to modify root password
  • Open door remotely via HTTP and MQTT
  • Integrate with Home Assistant (MQTT)
  • Use intercom audio
  • Build toolset to compile other software
  • Use dropbear SSH

This has been tested with following firmware versions:

  • V500.R001.A103.00.G0021.B007
  • V500.R001.A103.00.G0021.B013

Requirements

This project uses cramfs-tools to extract and build the userdata image.

Install

Check INSTALL document for complete information.

Use sudo make all to run all the steps to prepare your custom image.

You can manually extract and build your image:

sudo cramfsck -x /tmp/cram mtd4-file
sudo mkcramfs -e 0 -v -L /tmp/cram/ /tmp/cramfs.file

Related

Some content is provided from the following sources:

Disclaimer

YOU are responsible for any use or damage this software may cause. This repo and its content is intended for educational and research purposes only. Use at your own risk.

wibox's People

Contributors

duhow avatar gtrabanco 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

Watchers

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

wibox's Issues

It seems no console on V500.R001.A103.00.G021.B013

Hi duhow,
Thanks for your work on this :-) my goal is to integrate my wibox on HA, but It seems there is no console access on newer firmware versions, nothing appear after init process:

image

I can access to U-Boot pressing any key on start, any tip on how to proceed at this point?

For other users: to avoid soldering i filed 2mm this connectors with a dremel:

image

Audio / Video feed?

I've just found your mod for Wibox and was hoping to get it running on my apartment; I couldn't make out for sure though if you have a video and audio feed available, is there or do you have plans for it?

Cheers

Wi-box serial connection

Hi duhow,

I try to serial connection because of newest firmware,

but when, I connect serial connection it did not prompt any linux login prompt,

can you check what can I do?

KakaoTalk_Photo_2024-03-29-01-05-58

make is broken

  • sh scripts are CRLF instead LF? i needed to force dos2unix otherwise firmware is broken no error handling at all in the build process
  • dropbear patch I got
[*] Downloading dropbear 2020.81
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:03 --:--:--     0curl: (6) Could not resolve host: matt.ucc.asn.au
  • Building crosstool docker I got

[build 6/6] RUN ct-ng build:
#11 0.592 ./.config: line 23: $'\r': command not found
#11 0.592 [ERROR]
#11 0.593 [ERROR] >>
#11 0.594 [ERROR] >> Build failed in step '(top-level)'
#11 0.595 [ERROR] >>
#11 0.595 [ERROR] >> Error happened in: source[./.config@23]
#11 0.596 [ERROR] >> called from: CT_LoadConfig[scripts/functions@16]
#11 0.597 [ERROR] >> called from: main[scripts/crosstool-NG.sh@22]
#11 0.598 [ERROR] >>
#11 0.598 [ERROR] >> There is a list of known issues, some with workarounds, in:
#11 0.599 [ERROR] >> https://crosstool-ng.github.io/docs/known-issues/
#11 0.600 [ERROR] >>
#11 0.601 [ERROR] >> NOTE: You configuration uses non-default patch sets. Please
#11 0.601 [ERROR] >> select 'bundled' as the set of patches applied and attempt
#11 0.602 [ERROR] >> to reproduce this issue. Issues reported with other patch
#11 0.603 [ERROR] >> set selections (none, local, bundled+local) are going to be
#11 0.603 [ERROR] >> closed without explanation.
#11 0.604 [ERROR] >>
#11 0.605 [ERROR] >> If you feel this is a bug in crosstool-NG, report it at:
#11 0.606 [ERROR] >> https://github.com/crosstool-ng/crosstool-ng/issues/
#11 0.606 [ERROR] >>
#11 0.607 [ERROR] >> Make sure your report includes all the information pertinent to this issue.
#11 0.608 [ERROR] >> Read the bug reporting guidelines here:
#11 0.608 [ERROR] >> http://crosstool-ng.github.io/support/
#11 0.609 [ERROR]
#11 0.614 [ERROR] (elapsed: 28017249:06.54)
#11 0.615 /usr/local/bin/ct-ng:261: recipe for target 'build' failed
#11 0.615 make: *** [build] Error 127

Difficulties getting serial access

Wi-Box Firmware: V500.R001.A103.00.G0021.B013
Computer OS: MacOS/Raspbian

Physical Connections

Board power supply

I have connected positive (red) and negative (brown) of the board to external Power Supply of 18V.

IMG_3196 Pequeño

I could get the board in Wi-Box app and connect it to my wifi.

I have done this because I am not in the flat where the board will be located.

Board serial access

I have soldered the cables as expected.

IMG_3197 Pequeño

And linked the cables manually using same "port" on wage connectors to make sure they are getting contact. Because I had no black I used Green dupont cable. and they are linked as you can see here.

IMG_3199 Pequeño

I have connected GND (yellow) to GND, TX (black that ends in green) to RX and RX (red) to TX.

IMG_3198 Pequeño

Accessing

I connected usb and it is accesible through /dev/ttyUSB0 in a raspberry but I also checked on macOS which is accesible through /dev/cu.usbserial-1420. I will give this value as $PHYSICAL_PORT var in the connection command.

I tried to connect using picocom on raspbian and tried with screen in macOS and Linux:

sudo -v # prompt for sudo password
sudo screen $PHYSICAL_PORT 115200

And with all this done just provide me a good black screen if I try to use the serial connection after the board got power on (and connected to my wifi) but if I connected first the USB and later power on provides me on the screen @@@H@ sometimes.

Other information

The board has opened 4 ports:

PORT      STATE SERVICE
80/tcp    open  http
443/tcp   open  https
6683/tcp  open  unknown
34567/tcp open  dhanalakshmi

If I browse http://wibox-ip or https provides a 404 not found. Sometimes this is used to provision the wpa_supplicant at start configuration but remains open after configuring the wifi.

Any details on how Wi-Box talks to the VDS telephone?

First of all, congratulations for the great work in this project. Given the insight you were able to acquire over the Wi-Box device, do you have any clue on what kind of communication it establishes with the telephone device?

I saw specs elsewhere about a RS-485 port on the telephone unit.

Regarding the telephones themselves, are these usually linux devices as well?

Wonder how feasible it would be to interface the phone with an ESP32 board acting as a gateway for streaming video/audio and events/commands, instead of the Wi-Box..

Thanks

Cheers

Bricked :(

Tried to build your image and push it to the device.
after reboot the device is not getting IP.
Tried to connect via Serial and Got stuck at this point with

console init done
[2022-01-10 19:34:05.860] DRAM:  64 MiB
[2022-01-10 19:34:05.877] Flash: [XM25QH128A] USE 4X mode read and 4X mode write
[2022-01-10 19:34:05.887] 16 MiB
[2022-01-10 19:34:05.887] NAND:  [No SPI nand]
[2022-01-10 19:34:05.887] SF:    16 MiB [page:256 Bytes] [sector:64 KiB] [count:256] (XM25QH128A)
[2022-01-10 19:34:05.918] In:    serial
[2022-01-10 19:34:05.918] Out:   serial
[2022-01-10 19:34:05.918] Err:   serial
[2022-01-10 19:34:05.920] Net:   Int PHY
[2022-01-10 19:34:05.924] Hit Enter key to stop autoboot:  0
[2022-01-10 19:34:06.929] [PROCESS_SEPARATORS] run normalboot
[2022-01-10 19:34:06.955] [PROCESS_SEPARATORS] setenv bootargs console=$(consoledev),115200 mem=52M init=/linuxrc root=/dev/mtdblock3 rootfstype=squashfs mtdparts=gk_f
lash:256K(uboot),64K(env),1920K(kernel),2240K(rootfs),11328K(usr),512K(mnt),64K(cfg);sf probe;sf read 0xc1000000 0x50000 0x1E0000;bootm 0xc1000000
[2022-01-10 19:34:06.965] SF:    16 MiB [page:256 Bytes] [sector:64 KiB] [count:256] (XM25QH128A)
[2022-01-10 19:34:07.154] put param to memory
[2022-01-10 19:34:07.154] mem size (52)
[2022-01-10 19:34:07.154] total mem size (64)
[2022-01-10 19:34:07.154] bsb size (1)
[2022-01-10 19:34:07.154] usr size (0)
[2022-01-10 19:34:07.154]
[2022-01-10 19:34:07.154] the kernel image is zImage or Image
[2022-01-10 19:34:07.154] entry = 0xc1000000
[2022-01-10 19:34:07.155] ## Transferring control to Linux (at address c1000000)...
[2022-01-10 19:34:07.155]
[2022-01-10 19:34:07.155] Starting kernel ...
[2022-01-10 19:34:07.155]
[2022-01-10 19:34:07.155] machid = 3988 r2 = 0xc0000100
[2022-01-10 19:34:07.157] Uncompressing Linux... done, booting the kernel.

So I were not able to arrive to the file and replace it by the backup I did previous flash.
Any Idea? I'm doing something wrong on the serial or is just fully bricked?

MQTT

I notice you have set on some scripts mqtt usage, but the bin is not included on the git repo

any way to use wibox locally without reflashing?

Hi,

I'm thinking about buying a wi-box for my VDS monitor, I checked with Fermax tech department and they said that my monitor is compatible.
i'd like to use it from my Home Assitant, where I usually try to integrate all, the only way I see is your reflashing method... is there any other way to use it locally? like any API or service opened?
I'd like to get the wibox but Im a bit scared of loosing service in some years when Fermax closes its cloud or wherever they host their stuff to manage this service :(

Thanks,
Jose

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.